diff --git a/docs/_index.md b/docs/_index.md
index 786658804b..ba90584315 100644
--- a/docs/_index.md
+++ b/docs/_index.md
@@ -17,6 +17,12 @@ The Alibaba Cloud provider is available as a package in all Pulumi languages:
## Overview
+
+
The Alibaba Cloud provider is used to interact with the
many resources supported by [Alibaba Cloud](https://www.alibabacloud.com). The provider needs to be configured
with the proper credentials before it can be used.
@@ -650,6 +656,26 @@ config:
alicloud:region:
value: cn-hangzhou
+```
+### Using an External Credentials Process
+
+To use an external process to source credentials, the process must be configured in a named profile, including the default profile.
+The profile is configured in a shared configuration file. For information on how to configure external access credentials, please refer to the [Alibaba Cloud CLI documentation](https://www.alibabacloud.com/help/en/cli/configure-credentials).
+
+Usage:
+
+```yaml
+# Pulumi.yaml provider configuration file
+name: configuration-example
+runtime:
+config:
+ alicloud:profile:
+ value: ExternalProfile
+ alicloud:region:
+ value: cn-hangzhou
+ alicloud:sharedCredentialsFile:
+ value: ~/.aliyun/config.json
+
```
## Configuration Reference
@@ -685,17 +711,17 @@ provider configuration:
Can also be set with the `ALIBABA_CLOUD_ACCOUNT_ID` environment variable since v1.228.0.
Environment variable `ALICLOUD_ACCOUNT_ID` has been deprecated since v1.228.0.
-* `accountType` - (Optional, Available since 1.240.0) Alibaba Cloud Account Type.
+* `accountType` - (Optional, Available since v1.240.0) Alibaba Cloud Account Type.
It used to indicate caller identity's account type. Can also be set with the `ALIBABA_CLOUD_ACCOUNT_TYPE` environment variable. Valid values:
- `Domestic`(Default): China-Site Account.
- `International`: International-Site Account.
-* `sharedCredentialsFile` - (Optional, Available since 1.49.0) This is the path to the shared credentials file.
+* `sharedCredentialsFile` - (Optional, Available since v1.49.0) This is the path to the shared credentials file.
Can also be set with the `ALIBABA_CLOUD_CREDENTIALS_FILE` environment variable since v1.228.0.
Environment variable `ALICLOUD_SHARED_CREDENTIALS_FILE` has been deprecated since v1.228.0.
If this is not set and `profile` is specified, "~/.aliyun/config.json" will be used.
-* `profile` - (Optional, Available since 1.49.0) This is the Alibaba Cloud profile name as set in the shared credentials file.
+* `profile` - (Optional, Available since v1.49.0) This is the Alibaba Cloud profile name as set in the shared credentials file.
Can also be set with the `ALIBABA_CLOUD_PROFILE` environment variable since v1.228.0.
Environment variable `ALICLOUD_PROFILE` has been deprecated since v1.228.0.
@@ -703,21 +729,24 @@ provider configuration:
* `assumeRoleWithOidc` - (Optional, Available since v1.220.0) Configuration block for assuming an RAM role using an OIDC. See the `assumeRoleWithOidc` Configuration Block section below. Only one `assumeRoleWithOidc` block may be in the configuration.
-* `credentialsUri` - (Optional, Available since 1.141.0) The URI of sidecar credentials service.
+* `credentialsUri` - (Optional, Available since v1.141.0) The URI of sidecar credentials service.
Can also be set with the `ALIBABA_CLOUD_CREDENTIALS_URI` environment variable since v1.228.0.
Environment variable `ALICLOUD_CREDENTIALS_URI` has been deprecated since v1.228.0.
* `endpoints` - (Optional) An `endpoints` block to support custom endpoints.
-* `skipRegionValidation` - (Optional, Available since 1.52.0) Skip static validation of region ID. Used by users of alternative AlibabaCloud-like APIs or users w/ access to regions that are not public (yet).
+* `skipRegionValidation` - (Optional, Available since v1.52.0) Skip static validation of region ID. Used by users of alternative AlibabaCloud-like APIs or users w/ access to regions that are not public (yet).
+
+* `configurationSource` - (Optional, Available since v1.56.0) Use a string to mark a configuration file source, like `pulumi-alicloud-modules/pulumi-alicloud-ecs-instance` or `pulumi-provider-alicloud/examples/vpc`.
+ The length should not more than 128(Before 1.207.2, it should not more than 64). Since the version 1.145.0, it supports to be set by environment variable `TF_APPEND_USER_AGENT`. See `Custom User-Agent Information`.
-* `protocol` - (Optional, Available since 1.72.0) The Protocol of used by API request. Valid values: `HTTP` and `HTTPS`. Default to `HTTPS`.
+* `protocol` - (Optional, Available since v1.72.0) The Protocol of used by API request. Valid values: `HTTP` and `HTTPS`. Default to `HTTPS`.
-* `clientReadTimeout` - (Optional, Available since 1.125.0) The maximum timeout in millisecond second of the client read request. Default to 60000.
+* `clientReadTimeout` - (Optional, Available since v1.125.0) The maximum timeout in millisecond second of the client read request. Default to 60000.
-* `clientConnectTimeout` - (Optional, Available since 1.125.0) The maximum timeout in millisecond second of the client connection server. Default to 60000.
+* `clientConnectTimeout` - (Optional, Available since v1.125.0) The maximum timeout in millisecond second of the client connection server. Default to 60000.
-* `maxRetryTimeout` - (Optional, Available since 1.183.0) The maximum retry timeout in second of the request. Default to `0`.
+* `maxRetryTimeout` - (Optional, Available since v1.183.0) The maximum retry timeout in second of the request. Default to `0`.
### `assumeRole` Configuration Block
* `roleArn` - (Required) The ARN of the role to assume. If ARN is set to an empty string, it does not perform role switching.
@@ -734,7 +763,7 @@ provider configuration:
* `sessionExpiration` - (Optional) The time after which the established session for assuming role expires. Valid value range: [900-43200] seconds. Default to 3600 (in this case Alicloud use own default value). It supports environment variable `ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION`.
-* `externalId` - (Optional, Available since 1.207.1) The external ID of the RAM role.
+* `externalId` - (Optional, Available since v1.207.1) The external ID of the RAM role.
This parameter is provided by an external party and is used to prevent the confused deputy problem.
The value must be 2 to 1,224 characters in length and can contain letters, digits, and the following special characters:`= , . @ : / - _`.
### assumeRoleWithOidc Configuration Block
diff --git a/provider/cmd/pulumi-resource-alicloud/bridge-metadata.json b/provider/cmd/pulumi-resource-alicloud/bridge-metadata.json
index de0cc25020..ec4e3181bb 100644
--- a/provider/cmd/pulumi-resource-alicloud/bridge-metadata.json
+++ b/provider/cmd/pulumi-resource-alicloud/bridge-metadata.json
@@ -1564,12 +1564,18 @@
"alicloud_cloud_firewall_vpc_firewall_control_policy": {
"current": "alicloud:cloudfirewall/firewallVpcFirewallControlPolicy:FirewallVpcFirewallControlPolicy",
"fields": {
+ "application_name_list": {
+ "maxItemsOne": false
+ },
"dest_port_group_ports": {
"maxItemsOne": false
},
"destination_group_cidrs": {
"maxItemsOne": false
},
+ "repeat_days": {
+ "maxItemsOne": false
+ },
"source_group_cidrs": {
"maxItemsOne": false
}
@@ -2031,6 +2037,9 @@
"alicloud_config_aggregate_delivery": {
"current": "alicloud:cfg/aggregateDelivery:AggregateDelivery"
},
+ "alicloud_config_aggregate_remediation": {
+ "current": "alicloud:configaggregate/remediation:Remediation"
+ },
"alicloud_config_aggregator": {
"current": "alicloud:cfg/aggregator:Aggregator",
"fields": {
@@ -2074,6 +2083,14 @@
"alicloud_config_remediation": {
"current": "alicloud:cfg/remediation:Remediation"
},
+ "alicloud_config_report_template": {
+ "current": "alicloud:config/reportTemplate:ReportTemplate",
+ "fields": {
+ "report_scope": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_config_rule": {
"current": "alicloud:cfg/rule:Rule",
"fields": {
@@ -2177,6 +2194,25 @@
"alicloud_cr_repo": {
"current": "alicloud:cr/repo:Repo"
},
+ "alicloud_cr_scan_rule": {
+ "current": "alicloud:cr/scanRule:ScanRule",
+ "fields": {
+ "namespaces": {
+ "maxItemsOne": false
+ },
+ "repo_names": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "alicloud_cr_storage_domain_routing_rule": {
+ "current": "alicloud:cr/storageDomainRoutingRule:StorageDomainRoutingRule",
+ "fields": {
+ "routes": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_cr_vpc_endpoint_linked_vpc": {
"current": "alicloud:cr/vpcEndpointLinkedVpc:VpcEndpointLinkedVpc"
},
@@ -2293,12 +2329,37 @@
"alicloud_cs_kubernetes_node_pool": {
"current": "alicloud:cs/nodePool:NodePool",
"fields": {
+ "auto_mode": {
+ "maxItemsOne": true
+ },
"data_disks": {
"maxItemsOne": false
},
"eflo_node_group": {
"maxItemsOne": true
},
+ "instance_metadata_options": {
+ "maxItemsOne": true
+ },
+ "instance_patterns": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "cpu_architectures": {
+ "maxItemsOne": false
+ },
+ "excluded_instance_types": {
+ "maxItemsOne": false
+ },
+ "instance_categories": {
+ "maxItemsOne": false
+ },
+ "instance_type_families": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
"instance_types": {
"maxItemsOne": false
},
@@ -2386,6 +2447,14 @@
}
}
},
+ "alicloud_cs_kubernetes_policy_instance": {
+ "current": "alicloud:cs/kubernetesPolicyInstance:KubernetesPolicyInstance",
+ "fields": {
+ "namespaces": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_cs_managed_kubernetes": {
"current": "alicloud:cs/managedKubernetes:ManagedKubernetes",
"fields": {
@@ -4282,7 +4351,12 @@
}
},
"alicloud_eflo_hyper_node": {
- "current": "alicloud:eflo/hyperNode:HyperNode"
+ "current": "alicloud:eflo/hyperNode:HyperNode",
+ "fields": {
+ "data_disk": {
+ "maxItemsOne": false
+ }
+ }
},
"alicloud_eflo_invocation": {
"current": "alicloud:eflo/invocation:Invocation",
@@ -4293,7 +4367,49 @@
}
},
"alicloud_eflo_node": {
- "current": "alicloud:eflo/node:Node"
+ "current": "alicloud:eflo/node:Node",
+ "fields": {
+ "data_disk": {
+ "maxItemsOne": false
+ },
+ "ip_allocation_policy": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "bond_policy": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "bonds": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "machine_type_policy": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "bonds": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "node_policy": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "bonds": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
},
"alicloud_eflo_node_group": {
"current": "alicloud:eflo/nodeGroup:NodeGroup",
@@ -4403,9 +4519,67 @@
}
}
},
+ "alicloud_ehpc_cluster_v2": {
+ "current": "alicloud:ehpc/clusterV2:ClusterV2",
+ "fields": {
+ "addons": {
+ "maxItemsOne": false
+ },
+ "cluster_credentials": {
+ "maxItemsOne": true
+ },
+ "manager": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "directory_service": {
+ "maxItemsOne": true
+ },
+ "dns": {
+ "maxItemsOne": true
+ },
+ "manager_node": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "system_disk": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ },
+ "scheduler": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ },
+ "shared_storages": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_ehpc_job_template": {
"current": "alicloud:ehpc/jobTemplate:JobTemplate"
},
+ "alicloud_ehpc_queue": {
+ "current": "alicloud:ehpc/queue:Queue",
+ "fields": {
+ "compute_nodes": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "system_disk": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ },
+ "vswitch_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_eip": {
"current": "alicloud:ecs/eip:Eip",
"fields": {
@@ -4442,17 +4616,32 @@
"alicloud_elasticsearch_instance": {
"current": "alicloud:elasticsearch/instance:Instance",
"fields": {
+ "client_node_configuration": {
+ "maxItemsOne": true
+ },
+ "data_node_configuration": {
+ "maxItemsOne": true
+ },
+ "kibana_configuration": {
+ "maxItemsOne": true
+ },
"kibana_private_whitelist": {
"maxItemsOne": false
},
"kibana_whitelist": {
"maxItemsOne": false
},
+ "master_configuration": {
+ "maxItemsOne": true
+ },
"private_whitelist": {
"maxItemsOne": false
},
"public_whitelist": {
"maxItemsOne": false
+ },
+ "warm_node_configuration": {
+ "maxItemsOne": true
}
}
},
@@ -4723,6 +4912,22 @@
"alicloud_esa_edge_container_app_record": {
"current": "alicloud:esa/edgeContainerAppRecord:EdgeContainerAppRecord"
},
+ "alicloud_esa_http_incoming_request_header_modification_rule": {
+ "current": "alicloud:esa/httpIncomingRequestHeaderModificationRule:HttpIncomingRequestHeaderModificationRule",
+ "fields": {
+ "request_header_modification": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "alicloud_esa_http_incoming_response_header_modification_rule": {
+ "current": "alicloud:esa/httpIncomingResponseHeaderModificationRule:HttpIncomingResponseHeaderModificationRule",
+ "fields": {
+ "response_header_modification": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_esa_http_request_header_modification_rule": {
"current": "alicloud:esa/httpRequestHeaderModificationRule:HttpRequestHeaderModificationRule",
"fields": {
@@ -6296,6 +6501,14 @@
}
}
},
+ "alicloud_gpdb_supabase_project": {
+ "current": "alicloud:gpdb/supabaseProject:SupabaseProject",
+ "fields": {
+ "security_ip_list": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_graph_database_db_instance": {
"current": "alicloud:graphdatabase/dbInstance:DbInstance",
"fields": {
@@ -6564,6 +6777,9 @@
"alicloud_instance": {
"current": "alicloud:ecs/instance:Instance",
"fields": {
+ "cpu_options": {
+ "maxItemsOne": true
+ },
"data_disks": {
"maxItemsOne": false
},
@@ -6672,6 +6888,9 @@
}
}
},
+ "alicloud_kms_value_added_service": {
+ "current": "alicloud:kms/valueAddedService:ValueAddedService"
+ },
"alicloud_kvstore_account": {
"current": "alicloud:kvstore/account:Account"
},
@@ -6746,6 +6965,9 @@
}
}
}
+ },
+ "white_ip_list": {
+ "maxItemsOne": false
}
}
},
@@ -7136,6 +7358,9 @@
}
}
},
+ "alicloud_mongodb_node": {
+ "current": "alicloud:mongodb/node:Node"
+ },
"alicloud_mongodb_private_srv_network_address": {
"current": "alicloud:mongodb/privateSrvNetworkAddress:PrivateSrvNetworkAddress"
},
@@ -7289,6 +7514,9 @@
"recycle_bin": {
"maxItemsOne": true
},
+ "redundancy_vswitch_ids": {
+ "maxItemsOne": false
+ },
"smb_acl": {
"maxItemsOne": true
}
@@ -7308,6 +7536,17 @@
"alicloud_nas_mount_target": {
"current": "alicloud:nas/mountTarget:MountTarget"
},
+ "alicloud_nas_protocol_mount_target": {
+ "current": "alicloud:nas/protocolMountTarget:ProtocolMountTarget",
+ "fields": {
+ "vswitch_ids": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "alicloud_nas_protocol_service": {
+ "current": "alicloud:nas/protocolService:ProtocolService"
+ },
"alicloud_nas_recycle_bin": {
"current": "alicloud:nas/recycleBin:RecycleBin"
},
@@ -7527,6 +7766,50 @@
"alicloud_oos_template": {
"current": "alicloud:oos/template:Template"
},
+ "alicloud_open_api_explorer_api_mcp_server": {
+ "current": "alicloud:index/openApiExplorerApiMcpServer:OpenApiExplorerApiMcpServer",
+ "fields": {
+ "additional_api_descriptions": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "const_parameters": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "apis": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "selectors": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "prompts": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "arguments": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "system_tools": {
+ "maxItemsOne": false
+ },
+ "terraform_tools": {
+ "maxItemsOne": false
+ },
+ "vpc_whitelists": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_open_search_app_group": {
"current": "alicloud:opensearch/appGroup:AppGroup",
"fields": {
@@ -7690,6 +7973,19 @@
"alicloud_oss_bucket_https_config": {
"current": "alicloud:oss/bucketHttpsConfig:BucketHttpsConfig",
"fields": {
+ "cipher_suit": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "custom_cipher_suite": {
+ "maxItemsOne": false
+ },
+ "tls13_custom_cipher_suite": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
"tls_versions": {
"maxItemsOne": false
}
@@ -8106,6 +8402,9 @@
"alicloud_polardb_global_database_network": {
"current": "alicloud:polardb/globalDatabaseNetwork:GlobalDatabaseNetwork"
},
+ "alicloud_polardb_global_security_ip_group": {
+ "current": "alicloud:polardb/globalSecurityIpGroup:GlobalSecurityIpGroup"
+ },
"alicloud_polardb_parameter_group": {
"current": "alicloud:polardb/parameterGroup:ParameterGroup",
"fields": {
@@ -8483,6 +8782,147 @@
"alicloud_rds_whitelist_template": {
"current": "alicloud:rds/whitelistTemplate:WhitelistTemplate"
},
+ "alicloud_realtime_compute_deployment": {
+ "current": "alicloud:realtimecompute/deployment:Deployment",
+ "fields": {
+ "artifact": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "jar_artifact": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "additional_dependencies": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "python_artifact": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "additional_dependencies": {
+ "maxItemsOne": false
+ },
+ "additional_python_archives": {
+ "maxItemsOne": false
+ },
+ "additional_python_libraries": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "sql_artifact": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "additional_dependencies": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "batch_resource_setting": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "basic_resource_setting": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "jobmanager_resource_setting_spec": {
+ "maxItemsOne": true
+ },
+ "taskmanager_resource_setting_spec": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "deployment_target": {
+ "maxItemsOne": true
+ },
+ "local_variables": {
+ "maxItemsOne": false
+ },
+ "logging": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "log4j_loggers": {
+ "maxItemsOne": false
+ },
+ "log_reserve_policy": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ },
+ "streaming_resource_setting": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "basic_resource_setting": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "jobmanager_resource_setting_spec": {
+ "maxItemsOne": true
+ },
+ "taskmanager_resource_setting_spec": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ },
+ "expert_resource_setting": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "jobmanager_resource_setting_spec": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "alicloud_realtime_compute_job": {
+ "current": "alicloud:realtimecompute/job:Job",
+ "fields": {
+ "local_variables": {
+ "maxItemsOne": false
+ },
+ "restore_strategy": {
+ "maxItemsOne": true
+ },
+ "status": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "failure": {
+ "maxItemsOne": true
+ },
+ "running": {
+ "maxItemsOne": true
+ }
+ }
+ }
+ }
+ }
+ },
"alicloud_realtime_compute_vvp_instance": {
"current": "alicloud:realtimecompute/vvpInstance:VvpInstance",
"fields": {
@@ -8504,6 +8944,9 @@
}
}
},
+ "alicloud_redis_backup": {
+ "current": "alicloud:redis/backup:Backup"
+ },
"alicloud_redis_tair_instance": {
"current": "alicloud:redis/tairInstance:TairInstance"
},
@@ -9806,6 +10249,20 @@
"alicloud_threat_detection_baseline_strategy": {
"current": "alicloud:threatdetection/baselineStrategy:BaselineStrategy"
},
+ "alicloud_threat_detection_check_config": {
+ "current": "alicloud:threatdetection/checkConfig:CheckConfig",
+ "fields": {
+ "cycle_days": {
+ "maxItemsOne": false
+ },
+ "selected_checks": {
+ "maxItemsOne": false
+ },
+ "vendors": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_threat_detection_client_file_protect": {
"current": "alicloud:threatdetection/clientFileProtect:ClientFileProtect",
"fields": {
@@ -22567,6 +23024,68 @@
}
}
},
+ "alicloud_threat_detection_check_item_configs": {
+ "current": "alicloud:threatdetection/getCheckItemConfigs:getCheckItemConfigs",
+ "fields": {
+ "configs": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "custom_configs": {
+ "maxItemsOne": false
+ },
+ "description": {
+ "maxItemsOne": true
+ },
+ "section_ids": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "ids": {
+ "maxItemsOne": false
+ },
+ "task_sources": {
+ "maxItemsOne": false
+ }
+ }
+ },
+ "alicloud_threat_detection_check_structures": {
+ "current": "alicloud:threatdetection/getCheckStructures:getCheckStructures",
+ "fields": {
+ "ids": {
+ "maxItemsOne": false
+ },
+ "structures": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "standards": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "requirements": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "sections": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "task_sources": {
+ "maxItemsOne": false
+ }
+ }
+ },
"alicloud_threat_detection_honey_pots": {
"current": "alicloud:threatdetection/getHoneyPots:getHoneyPots",
"fields": {
diff --git a/provider/cmd/pulumi-resource-alicloud/schema.json b/provider/cmd/pulumi-resource-alicloud/schema.json
index 40dffe97e8..55f601bc10 100644
--- a/provider/cmd/pulumi-resource-alicloud/schema.json
+++ b/provider/cmd/pulumi-resource-alicloud/schema.json
@@ -54,6 +54,8 @@
"cloudstoragegateway": "CloudStorageGateway",
"cms": "Cms",
"compute": "Compute",
+ "config": "config",
+ "configaggregate": "configAggregate",
"cr": "CR",
"cs": "CS",
"das": "Das",
@@ -21626,6 +21628,23 @@
}
}
},
+ "alicloud:config/ReportTemplateReportScope:ReportTemplateReportScope": {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "Key for reporting scope, currently supported:\n- AggregatorId\n- CompliancePackId\n- RuleId\n"
+ },
+ "matchType": {
+ "type": "string",
+ "description": "The matching logic. Currently, only In is supported.\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "The value of the report range. Each k-v pair is an OR logic. For example, multiple rule IDs can be separated by commas (,).\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:config/assumeRole:assumeRole": {
"properties": {
"externalId": {
@@ -22529,6 +22548,28 @@
}
}
},
+ "alicloud:cr/StorageDomainRoutingRuleRoute:StorageDomainRoutingRuleRoute": {
+ "properties": {
+ "endpointType": {
+ "type": "string",
+ "description": "Endpoint Type.\n"
+ },
+ "instanceDomain": {
+ "type": "string",
+ "description": "Instance domain name.\n"
+ },
+ "storageDomain": {
+ "type": "string",
+ "description": "Storage domain name.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "endpointType",
+ "instanceDomain",
+ "storageDomain"
+ ]
+ },
"alicloud:cr/getChainsChain:getChainsChain": {
"properties": {
"chainConfigs": {
@@ -23713,6 +23754,16 @@
}
}
},
+ "alicloud:cs/NodePoolAutoMode:NodePoolAutoMode": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Whether to enable auto mode. Valid values:\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
"alicloud:cs/NodePoolDataDisk:NodePoolDataDisk": {
"properties": {
"autoFormat": {
@@ -23794,6 +23845,80 @@
},
"type": "object"
},
+ "alicloud:cs/NodePoolInstanceMetadataOptions:NodePoolInstanceMetadataOptions": {
+ "properties": {
+ "httpTokens": {
+ "type": "string",
+ "description": "ECS instance metadata access mode configuration. Value range:\n\n- 'optional': Compatible with both normal mode and reinforced mode.\n- 'required': Enables only hardening mode (IMDSv2). When enabled, applications in the node cannot access the ECS instance metadata in normal mode. Ensure that the component and operating system versions in the cluster meet the minimum version requirements. For more information, see [accessing ECS instance metadata in hardened mode only](https://www.alibabacloud.com/help/ack/ack-managed-and-ack-dedicated/security-and-compliance/secure-access-to-ecs-instance-metadata).\n\nDefault value: 'optional '.\n\nThis parameter is only supported for ACK-managed clusters of 1.28 or later versions.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:cs/NodePoolInstancePattern:NodePoolInstancePattern": {
+ "properties": {
+ "cores": {
+ "type": "integer",
+ "description": "The number of vCPU cores of the instance type. Example value: 8.\n"
+ },
+ "cpuArchitectures": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The CPU architecture of the instance. Value range:\n- X86\n- ARM\n"
+ },
+ "excludedInstanceTypes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Instance specifications to be excluded. You can exclude individual specifications or entire specification families by using the wildcard character (*). For example:\n- ecs.c6.large: indicates that the ecs.c6.large instance type is excluded.\n- ecs.c6. *: indicates that the instance specification of the entire c6 specification family is excluded.\n"
+ },
+ "instanceCategories": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Instance classification. Value range:\n- General-purpose: Universal.\n- Compute-optimized: Compute type.\n- Memory-optimized: Memory type.\n- Big data: Big data type.\n- Local SSDs: Local SSD type.\n- High Clock Speed: High frequency type.\n- Enhanced: Enhanced.\n- Shared: Shared.\n- ECS Bare Metal: elastic Bare Metal server.\n- High Performance Compute: High Performance Compute.\n"
+ },
+ "instanceFamilyLevel": {
+ "type": "string",
+ "description": "Instance specification family level, value range:\n- EntryLevel: entry-level, that is, shared instance specifications. The cost is lower, but the stability of instance computing performance cannot be guaranteed. Applicable to business scenarios with low CPU usage. For more information, see Shared.\n- EnterpriseLevel: Enterprise level. Stable performance and exclusive resources, suitable for business scenarios that require high stability. For more information, see Instance Specification Family.\n"
+ },
+ "instanceTypeFamilies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Specifies the instance type family. Example values:[\"ecs.g8i\",\"ecs.c8i\"]\n"
+ },
+ "maxCpuCores": {
+ "type": "integer",
+ "description": "The maximum number of vCPU cores of the instance type. Example value: 8. MaxCpuCores cannot exceed 4 times of MinCpuCores.\n"
+ },
+ "maxMemorySize": {
+ "type": "number",
+ "description": "The maximum memory of the instance type. Unit: GiB, example value: 8,MaxMemoryCores does not support more than 4 times MinMemoryCores.\n"
+ },
+ "memory": {
+ "type": "number",
+ "description": "The memory size of the instance type, in GiB. Example value: 8.\n"
+ },
+ "minCpuCores": {
+ "type": "integer",
+ "description": "The minimum number of vCPU cores of the instance type. Example value: 4. MaxCpuCores cannot exceed 4 times of MinCpuCores.\n"
+ },
+ "minMemorySize": {
+ "type": "number",
+ "description": "The minimum memory of the instance type. Unit: GiB, example value: 4,MaxMemoryCores does not support more than 4 times MinMemoryCores.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "instanceFamilyLevel"
+ ]
+ },
"alicloud:cs/NodePoolKubeletConfiguration:NodePoolKubeletConfiguration": {
"properties": {
"allowedUnsafeSysctls": {
@@ -23932,6 +24057,10 @@
"type": "string",
"description": "Same as serializeImagePulls. When enabled, it tells the Kubelet to pull images one at a time. We recommend not changing the default value on nodes that run docker daemon with version \u003c 1.9 or an Aufs storage backend. Valid value is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
},
+ "serverTlsBootstrap": {
+ "type": "boolean",
+ "description": "Used to enable the kubelet server certificate signing and rotation via CSR.\n"
+ },
"systemReserved": {
"type": "object",
"additionalProperties": {
@@ -36667,6 +36796,32 @@
}
}
},
+ "alicloud:ecs/InstanceCpuOptions:InstanceCpuOptions": {
+ "properties": {
+ "coreCount": {
+ "type": "integer",
+ "description": "The maximum number of partitions in the storage set.\n"
+ },
+ "threadsPerCore": {
+ "type": "integer",
+ "description": "The number of threads per CPU core.\n"
+ },
+ "topologyType": {
+ "type": "string",
+ "description": "The CPU topology type of the instance. Valid values: `ContinuousCoreToHTMapping`, `DiscreteCoreToHTMapping`.\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "coreCount",
+ "threadsPerCore",
+ "topologyType"
+ ]
+ }
+ }
+ },
"alicloud:ecs/InstanceDataDisk:InstanceDataDisk": {
"properties": {
"autoSnapshotPolicyId": {
@@ -44370,6 +44525,52 @@
"workerNum"
]
},
+ "alicloud:eflo/HyperNodeDataDisk:HyperNodeDataDisk": {
+ "properties": {
+ "burstingEnabled": {
+ "type": "boolean",
+ "description": "Whether to enable Burst (performance Burst).\n"
+ },
+ "category": {
+ "type": "string",
+ "description": "The disk type. Value range:\n- cloud_essd:ESSD cloud disk.\n"
+ },
+ "deleteWithNode": {
+ "type": "boolean",
+ "description": "Whether the data disk is unsubscribed and deleted with the node.\n"
+ },
+ "performanceLevel": {
+ "type": "string",
+ "description": "When creating an ESSD cloud disk to use as a system disk, set the performance level of the cloud disk. Value range:\n- PL0: maximum random read/write IOPS 10000 for a single disk.\n- PL1: maximum random read/write IOPS 50000 for a single disk.\n"
+ },
+ "provisionedIops": {
+ "type": "integer",
+ "description": "ESSD AutoPL cloud disk (single disk) pre-configuration performance of IOPS.\n"
+ },
+ "size": {
+ "type": "integer",
+ "description": "The size of the disk. The unit is GiB.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeDataDisk:NodeDataDisk": {
+ "properties": {
+ "category": {
+ "type": "string",
+ "description": "Data disk type\n"
+ },
+ "performanceLevel": {
+ "type": "string",
+ "description": "Performance level\n"
+ },
+ "size": {
+ "type": "integer",
+ "description": "Data disk size\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:eflo/NodeGroupAttachmentDataDisk:NodeGroupAttachmentDataDisk": {
"properties": {
"category": {
@@ -44526,6 +44727,120 @@
},
"type": "object"
},
+ "alicloud:eflo/NodeIpAllocationPolicy:NodeIpAllocationPolicy": {
+ "properties": {
+ "bondPolicy": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyBondPolicy:NodeIpAllocationPolicyBondPolicy",
+ "description": "Specify the cluster subnet ID based on the bond name See \u003cspan pulumi-lang-nodejs=\"`bondPolicy`\" pulumi-lang-dotnet=\"`BondPolicy`\" pulumi-lang-go=\"`bondPolicy`\" pulumi-lang-python=\"`bond_policy`\" pulumi-lang-yaml=\"`bondPolicy`\" pulumi-lang-java=\"`bondPolicy`\"\u003e`bond_policy`\u003c/span\u003e below.\n"
+ },
+ "machineTypePolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyMachineTypePolicy:NodeIpAllocationPolicyMachineTypePolicy"
+ },
+ "description": "Model Assignment Policy See \u003cspan pulumi-lang-nodejs=\"`machineTypePolicy`\" pulumi-lang-dotnet=\"`MachineTypePolicy`\" pulumi-lang-go=\"`machineTypePolicy`\" pulumi-lang-python=\"`machine_type_policy`\" pulumi-lang-yaml=\"`machineTypePolicy`\" pulumi-lang-java=\"`machineTypePolicy`\"\u003e`machine_type_policy`\u003c/span\u003e below.\n"
+ },
+ "nodePolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyNodePolicy:NodeIpAllocationPolicyNodePolicy"
+ },
+ "description": "Node allocation policy See \u003cspan pulumi-lang-nodejs=\"`nodePolicy`\" pulumi-lang-dotnet=\"`NodePolicy`\" pulumi-lang-go=\"`nodePolicy`\" pulumi-lang-python=\"`node_policy`\" pulumi-lang-yaml=\"`nodePolicy`\" pulumi-lang-java=\"`nodePolicy`\"\u003e`node_policy`\u003c/span\u003e below.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyBondPolicy:NodeIpAllocationPolicyBondPolicy": {
+ "properties": {
+ "bondDefaultSubnet": {
+ "type": "string",
+ "description": "Default bond cluster subnet\n"
+ },
+ "bonds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyBondPolicyBond:NodeIpAllocationPolicyBondPolicyBond"
+ },
+ "description": "Bond information See \u003cspan pulumi-lang-nodejs=\"`bonds`\" pulumi-lang-dotnet=\"`Bonds`\" pulumi-lang-go=\"`bonds`\" pulumi-lang-python=\"`bonds`\" pulumi-lang-yaml=\"`bonds`\" pulumi-lang-java=\"`bonds`\"\u003e`bonds`\u003c/span\u003e below.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyBondPolicyBond:NodeIpAllocationPolicyBondPolicyBond": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Bond Name\n"
+ },
+ "subnet": {
+ "type": "string",
+ "description": "IP source cluster subnet\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyMachineTypePolicy:NodeIpAllocationPolicyMachineTypePolicy": {
+ "properties": {
+ "bonds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyMachineTypePolicyBond:NodeIpAllocationPolicyMachineTypePolicyBond"
+ },
+ "description": "Bond information See \u003cspan pulumi-lang-nodejs=\"`bonds`\" pulumi-lang-dotnet=\"`Bonds`\" pulumi-lang-go=\"`bonds`\" pulumi-lang-python=\"`bonds`\" pulumi-lang-yaml=\"`bonds`\" pulumi-lang-java=\"`bonds`\"\u003e`bonds`\u003c/span\u003e below.\n"
+ },
+ "machineType": {
+ "type": "string",
+ "description": "Model\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyMachineTypePolicyBond:NodeIpAllocationPolicyMachineTypePolicyBond": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Bond Name\n"
+ },
+ "subnet": {
+ "type": "string",
+ "description": "IP source cluster subnet\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyNodePolicy:NodeIpAllocationPolicyNodePolicy": {
+ "properties": {
+ "bonds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:eflo/NodeIpAllocationPolicyNodePolicyBond:NodeIpAllocationPolicyNodePolicyBond"
+ },
+ "description": "Bond information See \u003cspan pulumi-lang-nodejs=\"`bonds`\" pulumi-lang-dotnet=\"`Bonds`\" pulumi-lang-go=\"`bonds`\" pulumi-lang-python=\"`bonds`\" pulumi-lang-yaml=\"`bonds`\" pulumi-lang-java=\"`bonds`\"\u003e`bonds`\u003c/span\u003e below.\n"
+ },
+ "hostname": {
+ "type": "string",
+ "description": "Host name\n"
+ },
+ "nodeId": {
+ "type": "string",
+ "description": "Node ID\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:eflo/NodeIpAllocationPolicyNodePolicyBond:NodeIpAllocationPolicyNodePolicyBond": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Bond Name\n"
+ },
+ "subnet": {
+ "type": "string",
+ "description": "IP source cluster subnet\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:eflo/ResourceMachineTypes:ResourceMachineTypes": {
"properties": {
"bondNum": {
@@ -44817,6 +45132,332 @@
},
"type": "object"
},
+ "alicloud:ehpc/ClusterV2Addon:ClusterV2Addon": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Customize the specific configuration information of the service component.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ },
+ "resourcesSpec": {
+ "type": "string",
+ "description": "Customize the resource configuration of the service component.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ },
+ "servicesSpec": {
+ "type": "string",
+ "description": "Customize the service configuration of the service component.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "string",
+ "description": "Customize the service component version.\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "required": [
+ "name",
+ "version"
+ ]
+ },
+ "alicloud:ehpc/ClusterV2ClusterCredentials:ClusterV2ClusterCredentials": {
+ "properties": {
+ "password": {
+ "type": "string",
+ "description": "The root password of the cluster node. It is 8 to 20 characters in length and must contain three types of characters: uppercase and lowercase letters, numbers, and special symbols. Special symbols can be: () ~! @ # $ % ^ \u0026 * - = + { } [ ] : ; ',. ? /\n",
+ "secret": true,
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2Manager:ClusterV2Manager": {
+ "properties": {
+ "directoryService": {
+ "$ref": "#/types/alicloud:ehpc/ClusterV2ManagerDirectoryService:ClusterV2ManagerDirectoryService",
+ "description": "The configurations of the domain account service. See \u003cspan pulumi-lang-nodejs=\"`directoryService`\" pulumi-lang-dotnet=\"`DirectoryService`\" pulumi-lang-go=\"`directoryService`\" pulumi-lang-python=\"`directory_service`\" pulumi-lang-yaml=\"`directoryService`\" pulumi-lang-java=\"`directoryService`\"\u003e`directory_service`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "dns": {
+ "$ref": "#/types/alicloud:ehpc/ClusterV2ManagerDns:ClusterV2ManagerDns",
+ "description": "The configurations of the domain name resolution service. See \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "managerNode": {
+ "$ref": "#/types/alicloud:ehpc/ClusterV2ManagerManagerNode:ClusterV2ManagerManagerNode",
+ "description": "The hardware configurations of the management node. See \u003cspan pulumi-lang-nodejs=\"`managerNode`\" pulumi-lang-dotnet=\"`ManagerNode`\" pulumi-lang-go=\"`managerNode`\" pulumi-lang-python=\"`manager_node`\" pulumi-lang-yaml=\"`managerNode`\" pulumi-lang-java=\"`managerNode`\"\u003e`manager_node`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "scheduler": {
+ "$ref": "#/types/alicloud:ehpc/ClusterV2ManagerScheduler:ClusterV2ManagerScheduler",
+ "description": "The configurations of the scheduler service. See \u003cspan pulumi-lang-nodejs=\"`scheduler`\" pulumi-lang-dotnet=\"`Scheduler`\" pulumi-lang-go=\"`scheduler`\" pulumi-lang-python=\"`scheduler`\" pulumi-lang-yaml=\"`scheduler`\" pulumi-lang-java=\"`scheduler`\"\u003e`scheduler`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2ManagerDirectoryService:ClusterV2ManagerDirectoryService": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The scheduler type. Valid values:\n\n- SLURM\n- PBS\n- OPENGRIDSCHEDULER\n- LSF_PLUGIN\n- PBS_PLUGIN\n",
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2ManagerDns:ClusterV2ManagerDns": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The scheduler type. Valid values:\n\n- SLURM\n- PBS\n- OPENGRIDSCHEDULER\n- LSF_PLUGIN\n- PBS_PLUGIN\n",
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2ManagerManagerNode:ClusterV2ManagerManagerNode": {
+ "properties": {
+ "autoRenew": {
+ "type": "boolean",
+ "description": "Whether to automatically renew. This parameter takes effect only when the value of InstanceChargeType is PrePaid. Value range:\n- true: Automatic renewal.\n- false: Do not renew automatically (default).\n",
+ "willReplaceOnChanges": true
+ },
+ "autoRenewPeriod": {
+ "type": "integer",
+ "description": "The renewal duration of a single automatic renewal. Value range:\n- When PeriodUnit = Week: 1, 2, 3.\n- When PeriodUnit = Month: 1, 2, 3, 6, 12, 24, 36, 48, 60.\n\nDefault value: 1.\n",
+ "willReplaceOnChanges": true
+ },
+ "duration": {
+ "type": "integer",
+ "description": "The duration of the preemptible instance, in hours. Value:\n- : After the instance is created, Alibaba Cloud will ensure that the instance will not be automatically released after one hour of operation. After one hour, the system will compare the bid price with the market price in real time and check the resource inventory to determine the holding and recycling of the instance.\n- 0: After creation, Alibaba Cloud does not guarantee the running time of the instance. The system compares the bid price with the market price in real time and checks the resource inventory to determine the holding and recycling of the instance.\n\nDefault value: 1.\n",
+ "willReplaceOnChanges": true
+ },
+ "enableHt": {
+ "type": "boolean",
+ "description": "EnableHT\n",
+ "willReplaceOnChanges": true
+ },
+ "expiredTime": {
+ "type": "string",
+ "description": "The expiration time of the management node.\n"
+ },
+ "imageId": {
+ "type": "string",
+ "description": "ImageId\n",
+ "willReplaceOnChanges": true
+ },
+ "instanceChargeType": {
+ "type": "string",
+ "description": "The instance billing method of the management node. Valid values:\n\n- PostPaid: pay-as-you-go\n- PrePaid: subscription\n",
+ "willReplaceOnChanges": true
+ },
+ "instanceId": {
+ "type": "string",
+ "description": "The instance ID of the management node.\n"
+ },
+ "instanceType": {
+ "type": "string",
+ "description": "The instance type of the management node.\n",
+ "willReplaceOnChanges": true
+ },
+ "period": {
+ "type": "integer",
+ "description": "The duration of the resource purchase. The unit is specified by PeriodUnit. The parameter InstanceChargeType takes effect only when the value is PrePaid and is a required value. Once DedicatedHostId is specified, the value range cannot exceed the subscription duration of the DDH. Value range:\n- When PeriodUnit = Week, the values of Period are 1, 2, 3, and 4.\n- When PeriodUnit = Month, the values of Period are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.\n",
+ "willReplaceOnChanges": true
+ },
+ "periodUnit": {
+ "type": "string",
+ "description": "The unit of duration of the year-to-month billing method. Value range:\n- Week.\n- Month (default).\n",
+ "willReplaceOnChanges": true
+ },
+ "spotPriceLimit": {
+ "type": "number",
+ "description": "Set the maximum price per hour for the instance. The maximum number of decimals is 3. It takes effect when the value of the SpotStrategy parameter is SpotWithPriceLimit.\n",
+ "willReplaceOnChanges": true
+ },
+ "spotStrategy": {
+ "type": "string",
+ "description": "The bidding strategy for pay-as-you-go instances. This parameter takes effect when the value of the InstanceChargeType parameter is PostPaid. Value range:\n- NoSpot: normal pay-as-you-go instances (default).\n- SpotWithPriceLimit: set the upper limit price for the preemptible instance.\n- SpotAsPriceGo: The system automatically bids, following the actual price of the current market.\n",
+ "willReplaceOnChanges": true
+ },
+ "systemDisk": {
+ "$ref": "#/types/alicloud:ehpc/ClusterV2ManagerManagerNodeSystemDisk:ClusterV2ManagerManagerNodeSystemDisk",
+ "description": "System disk configuration of the management node. See \u003cspan pulumi-lang-nodejs=\"`systemDisk`\" pulumi-lang-dotnet=\"`SystemDisk`\" pulumi-lang-go=\"`systemDisk`\" pulumi-lang-python=\"`system_disk`\" pulumi-lang-yaml=\"`systemDisk`\" pulumi-lang-java=\"`systemDisk`\"\u003e`system_disk`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "duration",
+ "expiredTime",
+ "instanceId"
+ ]
+ }
+ }
+ },
+ "alicloud:ehpc/ClusterV2ManagerManagerNodeSystemDisk:ClusterV2ManagerManagerNodeSystemDisk": {
+ "properties": {
+ "category": {
+ "type": "string",
+ "description": "Manage the system disk configuration of the node. Value range:\n- cloud_efficiency: The Ultra cloud disk.\n- cloud_ssd:SSD cloud disk.\n- cloud_essd:ESSD cloud disk.\n- cloud: ordinary cloud disk.\n",
+ "willReplaceOnChanges": true
+ },
+ "level": {
+ "type": "string",
+ "description": "When creating an ESSD cloud disk to use as a system disk, set the performance level of the cloud disk. Value range:\n- PL0: maximum random read/write IOPS 10000 for a single disk.\n- PL1 (default): Maximum random read/write IOPS 50000 for a single disk.\n- PL2: maximum random read/write IOPS 100000 for a single disk.\n- PL3: maximum random read/write IOPS 1 million for a single disk.\n",
+ "willReplaceOnChanges": true
+ },
+ "size": {
+ "type": "integer",
+ "description": "The system disk size of the management node. Unit: GiB. Value range:\n- Ordinary cloud tray: 20~500.\n- ESSD cloud disk:\n- PL0:1~2048.\n- PL1:20~2048.\n- PL2:461~2048.\n- PL3:1261~2048.\n- Other cloud disk types: 20~2048.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2ManagerScheduler:ClusterV2ManagerScheduler": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The scheduler type. Valid values:\n\n- SLURM\n- PBS\n- OPENGRIDSCHEDULER\n- LSF_PLUGIN\n- PBS_PLUGIN\n",
+ "willReplaceOnChanges": true
+ },
+ "version": {
+ "type": "string",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/ClusterV2SharedStorage:ClusterV2SharedStorage": {
+ "properties": {
+ "fileSystemId": {
+ "type": "string",
+ "description": "The ID of the mounted file system.\n",
+ "willReplaceOnChanges": true
+ },
+ "mountDirectory": {
+ "type": "string",
+ "description": "The local Mount directory where the file system is mounted.\n",
+ "willReplaceOnChanges": true
+ },
+ "mountOptions": {
+ "type": "string",
+ "description": "Storage mount options for the mounted file system.\n",
+ "willReplaceOnChanges": true
+ },
+ "mountTargetDomain": {
+ "type": "string",
+ "description": "The mount point address of the mounted file system.\n",
+ "willReplaceOnChanges": true
+ },
+ "nasDirectory": {
+ "type": "string",
+ "description": "The remote directory to which the mounted file system needs to be mounted.\n",
+ "willReplaceOnChanges": true
+ },
+ "protocolType": {
+ "type": "string",
+ "description": "The protocol type of the mounted file system. Value range:\n- NFS\n- SMB\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:ehpc/QueueComputeNode:QueueComputeNode": {
+ "properties": {
+ "autoRenew": {
+ "type": "boolean",
+ "description": "AutoRenew\n"
+ },
+ "autoRenewPeriod": {
+ "type": "integer",
+ "description": "AutoRenewPeriod\n"
+ },
+ "duration": {
+ "type": "integer",
+ "description": "Duration\n"
+ },
+ "enableHt": {
+ "type": "boolean",
+ "description": "Whether HT is enabled for the computing node.\n"
+ },
+ "imageId": {
+ "type": "string",
+ "description": "ImageId\n"
+ },
+ "instanceChargeType": {
+ "type": "string",
+ "description": "InstanceChargeType\n"
+ },
+ "instanceType": {
+ "type": "string",
+ "description": "InstanceTypes\n"
+ },
+ "period": {
+ "type": "integer",
+ "description": "Period\n"
+ },
+ "periodUnit": {
+ "type": "string",
+ "description": "PeriodUnit\n"
+ },
+ "spotPriceLimit": {
+ "type": "number",
+ "description": "SpotPriceLimit\n"
+ },
+ "spotStrategy": {
+ "type": "string",
+ "description": "SpotStrategy\n"
+ },
+ "systemDisk": {
+ "$ref": "#/types/alicloud:ehpc/QueueComputeNodeSystemDisk:QueueComputeNodeSystemDisk",
+ "description": "SystemDisk See \u003cspan pulumi-lang-nodejs=\"`systemDisk`\" pulumi-lang-dotnet=\"`SystemDisk`\" pulumi-lang-go=\"`systemDisk`\" pulumi-lang-python=\"`system_disk`\" pulumi-lang-yaml=\"`systemDisk`\" pulumi-lang-java=\"`systemDisk`\"\u003e`system_disk`\u003c/span\u003e below.\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "enableHt",
+ "spotStrategy"
+ ]
+ }
+ }
+ },
+ "alicloud:ehpc/QueueComputeNodeSystemDisk:QueueComputeNodeSystemDisk": {
+ "properties": {
+ "category": {
+ "type": "string",
+ "description": "Category\n"
+ },
+ "level": {
+ "type": "string",
+ "description": "Level\n"
+ },
+ "size": {
+ "type": "integer",
+ "description": "Size\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:ehpc/getClustersCluster:getClustersCluster": {
"properties": {
"accountType": {
@@ -45267,6 +45908,163 @@
}
}
},
+ "alicloud:elasticsearch/InstanceClientNodeConfiguration:InstanceClientNodeConfiguration": {
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "description": "Number of disks in the Elasticsearch cluster coordination node\n"
+ },
+ "disk": {
+ "type": "integer",
+ "description": "Elasticsearch cluster coordinates node disk size\n",
+ "willReplaceOnChanges": true
+ },
+ "diskType": {
+ "type": "string",
+ "description": "Elasticsearch cluster coordination node disk type\n",
+ "willReplaceOnChanges": true
+ },
+ "spec": {
+ "type": "string",
+ "description": "Elasticsearch cluster coordination node specification\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "disk"
+ ]
+ }
+ }
+ },
+ "alicloud:elasticsearch/InstanceDataNodeConfiguration:InstanceDataNodeConfiguration": {
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "description": "Number of data nodes in the Elasticsearch cluster\n"
+ },
+ "disk": {
+ "type": "integer",
+ "description": "Elasticsearch data node disk size\n"
+ },
+ "diskEncryption": {
+ "type": "boolean",
+ "description": "Whether the Elasticsearch data node disk is encrypted\n",
+ "willReplaceOnChanges": true
+ },
+ "diskType": {
+ "type": "string",
+ "description": "Elasticsearch cluster data node disk type\n",
+ "willReplaceOnChanges": true
+ },
+ "performanceLevel": {
+ "type": "string",
+ "description": "Elasticsearch cluster data node Essd disk level\n"
+ },
+ "spec": {
+ "type": "string",
+ "description": "Elasticsearch data node specification\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "spec"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "amount",
+ "diskEncryption",
+ "diskType",
+ "performanceLevel",
+ "spec"
+ ]
+ }
+ }
+ },
+ "alicloud:elasticsearch/InstanceKibanaConfiguration:InstanceKibanaConfiguration": {
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "description": "The number of disks of the Elasticsearch Kibana node. The default value is 1.\n",
+ "willReplaceOnChanges": true
+ },
+ "disk": {
+ "type": "integer",
+ "description": "Elasticsearch Kibana node disk size\n",
+ "willReplaceOnChanges": true
+ },
+ "spec": {
+ "type": "string",
+ "description": "Elasticsearch Kibana node disk specifications\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "spec"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "amount",
+ "disk",
+ "spec"
+ ]
+ }
+ }
+ },
+ "alicloud:elasticsearch/InstanceMasterConfiguration:InstanceMasterConfiguration": {
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "description": "Elasticsearch proprietary master node number of disks\n",
+ "willReplaceOnChanges": true
+ },
+ "disk": {
+ "type": "integer",
+ "description": "Elasticsearch proprietary master node disk size\n",
+ "willReplaceOnChanges": true
+ },
+ "diskType": {
+ "type": "string",
+ "description": "Elasticsearch proprietary master node disk type\n",
+ "willReplaceOnChanges": true
+ },
+ "spec": {
+ "type": "string",
+ "description": "Elasticsearch proprietary master node specifications\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:elasticsearch/InstanceWarmNodeConfiguration:InstanceWarmNodeConfiguration": {
+ "properties": {
+ "amount": {
+ "type": "integer",
+ "description": "Elasticsearch cluster cold data node disk number\n"
+ },
+ "disk": {
+ "type": "integer",
+ "description": "Elasticsearch cluster cold data node disk size\n"
+ },
+ "diskEncryption": {
+ "type": "boolean",
+ "description": "Elasticsearch cluster cold data node Disk encryption\n",
+ "willReplaceOnChanges": true
+ },
+ "diskType": {
+ "type": "string",
+ "description": "Elasticsearch cluster cold data node disk type\n",
+ "willReplaceOnChanges": true
+ },
+ "spec": {
+ "type": "string",
+ "description": "Elasticsearch cluster cold data node Disk Specification\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:elasticsearch/getInstancesInstance:getInstancesInstance": {
"properties": {
"createdAt": {
@@ -47572,6 +48370,56 @@
}
}
},
+ "alicloud:esa/HttpIncomingRequestHeaderModificationRuleRequestHeaderModification:HttpIncomingRequestHeaderModificationRuleRequestHeaderModification": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Request Header Name.\n"
+ },
+ "operation": {
+ "type": "string",
+ "description": "Mode of operation. Value range:\n"
+ },
+ "type": {
+ "type": "string",
+ "description": "Value type. Value range:\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "Request header value\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name",
+ "operation"
+ ]
+ },
+ "alicloud:esa/HttpIncomingResponseHeaderModificationRuleResponseHeaderModification:HttpIncomingResponseHeaderModificationRuleResponseHeaderModification": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The response header name.\n"
+ },
+ "operation": {
+ "type": "string",
+ "description": "Operation method. Possible values:\n"
+ },
+ "type": {
+ "type": "string",
+ "description": "The value type. Value range:\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "The response header value.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name",
+ "operation"
+ ]
+ },
"alicloud:esa/HttpRequestHeaderModificationRuleRequestHeaderModification:HttpRequestHeaderModificationRuleRequestHeaderModification": {
"properties": {
"name": {
@@ -48201,7 +49049,7 @@
},
"securityLevel": {
"$ref": "#/types/alicloud:esa/WafRuleConfigSecurityLevel:WafRuleConfigSecurityLevel",
- "description": "The overall security protection level of WAF. See \u003cspan pulumi-lang-nodejs=\"`securityLevel`\" pulumi-lang-dotnet=\"`SecurityLevel`\" pulumi-lang-go=\"`securityLevel`\" pulumi-lang-python=\"`security_level`\" pulumi-lang-yaml=\"`securityLevel`\" pulumi-lang-java=\"`securityLevel`\"\u003e`security_level`\u003c/span\u003e below.\n"
+ "description": "The overall security protection level of WAF.\nValid values:\n- off\n-\u003cspan pulumi-lang-nodejs=\" essentiallyOff\n\" pulumi-lang-dotnet=\" EssentiallyOff\n\" pulumi-lang-go=\" essentiallyOff\n\" pulumi-lang-python=\" essentially_off\n\" pulumi-lang-yaml=\" essentiallyOff\n\" pulumi-lang-java=\" essentiallyOff\n\"\u003e essentially_off\n\u003c/span\u003e- low\n- medium\n- high\n-\u003cspan pulumi-lang-nodejs=\" underAttack \" pulumi-lang-dotnet=\" UnderAttack \" pulumi-lang-go=\" underAttack \" pulumi-lang-python=\" under_attack \" pulumi-lang-yaml=\" underAttack \" pulumi-lang-java=\" underAttack \"\u003e under_attack \u003c/span\u003eSee \u003cspan pulumi-lang-nodejs=\"`securityLevel`\" pulumi-lang-dotnet=\"`SecurityLevel`\" pulumi-lang-go=\"`securityLevel`\" pulumi-lang-python=\"`security_level`\" pulumi-lang-yaml=\"`securityLevel`\" pulumi-lang-java=\"`securityLevel`\"\u003e`security_level`\u003c/span\u003e below.\n"
},
"sigchls": {
"type": "array",
@@ -53020,6 +53868,7 @@
"nodejs": {
"requiredOutputs": [
"accelerationInfo",
+ "healthCheckConfig",
"resolvedImageUri"
]
}
@@ -53063,7 +53912,19 @@
"type": "integer"
}
},
- "type": "object"
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "failureThreshold",
+ "httpGetUrl",
+ "initialDelaySeconds",
+ "periodSeconds",
+ "successThreshold",
+ "timeoutSeconds"
+ ]
+ }
+ }
},
"alicloud:fc/V3FunctionCustomDns:V3FunctionCustomDns": {
"properties": {
@@ -53133,6 +53994,7 @@
"language": {
"nodejs": {
"requiredOutputs": [
+ "healthCheckConfig",
"port"
]
}
@@ -53163,7 +54025,12 @@
"language": {
"nodejs": {
"requiredOutputs": [
- "failureThreshold"
+ "failureThreshold",
+ "httpGetUrl",
+ "initialDelaySeconds",
+ "periodSeconds",
+ "successThreshold",
+ "timeoutSeconds"
]
}
}
@@ -53406,7 +54273,15 @@
"description": "Switch List\n"
}
},
- "type": "object"
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "securityGroupId",
+ "vpcId"
+ ]
+ }
+ }
},
"alicloud:fc/V3LayerVersionCode:V3LayerVersionCode": {
"properties": {
@@ -60929,6 +61804,143 @@
},
"type": "object"
},
+ "alicloud:index/OpenApiExplorerApiMcpServerAdditionalApiDescription:OpenApiExplorerApiMcpServerAdditionalApiDescription": {
+ "properties": {
+ "apiName": {
+ "type": "string",
+ "description": "The API name, such as ListApiMcpServers.\n"
+ },
+ "apiOverrideJson": {
+ "type": "string",
+ "description": "API structure definition information. You can use this parameter to directly modify the API description and parameter list. You can obtain the API definition information from an API endpoint such as https://api.aliyun.com/meta/v1/products/Ecs/versions/2014-05-26/apis/DescribeInstances/api.json. \n\n\u003e **NOTE:** Note that required parameters must not be removed; otherwise, calls by the large model will continuously fail due to missing required parameters.\u003e\n"
+ },
+ "apiVersion": {
+ "type": "string",
+ "description": "API version information, typically in date format, such as 2014-05-26.\n"
+ },
+ "constParameters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:index/OpenApiExplorerApiMcpServerAdditionalApiDescriptionConstParameter:OpenApiExplorerApiMcpServerAdditionalApiDescriptionConstParameter"
+ },
+ "description": "Constant configuration information. When the MCP Server needs to fix certain tool parameters to specific values, you can configure this parameter to enforce those fixed values. \nParameters configured as constants will not be returned as tool parameters through the MCP protocol. Large models cannot define these parameters. During execution, the MCP Server merges these constant values into the API call parameters. See \u003cspan pulumi-lang-nodejs=\"`constParameters`\" pulumi-lang-dotnet=\"`ConstParameters`\" pulumi-lang-go=\"`constParameters`\" pulumi-lang-python=\"`const_parameters`\" pulumi-lang-yaml=\"`constParameters`\" pulumi-lang-java=\"`constParameters`\"\u003e`const_parameters`\u003c/span\u003e below.\n"
+ },
+ "enableOutputSchema": {
+ "type": "boolean",
+ "description": "By default, this feature is disabled, and the MCP Server returns only the structure definition of input parameters. When enabled, the MCP Server returns the output parameter structure definition via the MCP protocol. \n\n\u003e **NOTE:** The output parameter structure may be complex. Enabling this feature significantly increases the MCP context size. Use this feature with caution.\u003e\n"
+ },
+ "executeCliCommand": {
+ "type": "boolean",
+ "description": "Call interception. When this parameter is enabled, the MCP Server returns the complete CLI command name instead of directly executing the API call. Use this option when the API call is long-running or requires interaction with local files. The MCP Server enforces theoretical time limits for single-tool invocations: \n- SSE protocol: up to 30 minutes\n- Streamable HTTP protocol: up to 1 minute\n\nFor tools whose single API execution exceeds 30 minutes, we recommend enabling this parameter. Install the CLI and complete account authentication on the machine initiating the call, then combine it with this tool for optimal results.\n\n\u003e **NOTE:** The identity used to execute the CLI differs from the identity used by the MCP Server. Pay attention to the associated security risks.\u003e\n"
+ },
+ "product": {
+ "type": "string",
+ "description": "The name of the cloud product, such as Ecs.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:index/OpenApiExplorerApiMcpServerAdditionalApiDescriptionConstParameter:OpenApiExplorerApiMcpServerAdditionalApiDescriptionConstParameter": {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "Parameter location. Currently, except for ROA-style body parameters (which support up to two levels), nested parameter configurations beyond two levels are not supported. If you need to configure a composite data structure, set the Value to a JSON object. \n\nFor RPC-style APIs, examples include:\n- Name: sets the Name parameter to a fixed value.\n\nFor ROA-style APIs, examples include:\n- Name: sets a query or path parameter named Name to a fixed value;\n- body.Name: sets the Name field within the request body to a fixed value.\n\nConfigurations such as body.Name.Sub are not supported. If you need to set body.Name as a composite structure, specify the Value as a JSON object—for example, {\"Sub\": \"xxx\"}.\n\n\u003e **NOTE:**\u003cspan pulumi-lang-nodejs=\" xMcpRegionId \" pulumi-lang-dotnet=\" XMcpRegionId \" pulumi-lang-go=\" xMcpRegionId \" pulumi-lang-python=\" x_mcp_region_id \" pulumi-lang-yaml=\" xMcpRegionId \" pulumi-lang-java=\" xMcpRegionId \"\u003e x_mcp_region_id \u003c/span\u003eis a built-in MCP parameter used to control the region and can also be configured as a fixed value to invoke services in a specified region.\u003e\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "This property does not have a description in the spec, please add it before generating code.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:index/OpenApiExplorerApiMcpServerApi:OpenApiExplorerApiMcpServerApi": {
+ "properties": {
+ "apiVersion": {
+ "type": "string",
+ "description": "API version information, typically in date format—for example, the version for ECS is 2014-05-26.\n"
+ },
+ "product": {
+ "type": "string",
+ "description": "Product code, such as Ecs.\n"
+ },
+ "selectors": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Selectors in array format, where each item is an API name—for example, GetApiDefinition or ListApiDefinitions. You can obtain the complete list of supported APIs from the Alibaba Cloud Developer Portal.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "apiVersion",
+ "product",
+ "selectors"
+ ]
+ },
+ "alicloud:index/OpenApiExplorerApiMcpServerPrompt:OpenApiExplorerApiMcpServerPrompt": {
+ "properties": {
+ "arguments": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:index/OpenApiExplorerApiMcpServerPromptArgument:OpenApiExplorerApiMcpServerPromptArgument"
+ },
+ "description": "Parameters for the prompt. See \u003cspan pulumi-lang-nodejs=\"`arguments`\" pulumi-lang-dotnet=\"`Arguments`\" pulumi-lang-go=\"`arguments`\" pulumi-lang-python=\"`arguments`\" pulumi-lang-yaml=\"`arguments`\" pulumi-lang-java=\"`arguments`\"\u003e`arguments`\u003c/span\u003e below.\n"
+ },
+ "content": {
+ "type": "string",
+ "description": "Full content of the prompt, supporting dynamic parameters. Parameters must be defined in Arguments, using the format {{ARG}}, where ARG supports English characters. Example: My name is: {{name}}.\n"
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of the prompt parameter.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the prompt parameter.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:index/OpenApiExplorerApiMcpServerPromptArgument:OpenApiExplorerApiMcpServerPromptArgument": {
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "Description of the API MCP service.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the MCP Server. It can contain digits, English letters, and hyphens (-).\n"
+ },
+ "required": {
+ "type": "boolean",
+ "description": "Indicates whether the prompt parameter is required.\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:index/OpenApiExplorerApiMcpServerTerraformTool:OpenApiExplorerApiMcpServerTerraformTool": {
+ "properties": {
+ "async": {
+ "type": "boolean",
+ "description": "Specifies whether execution is asynchronous. If enabled, the system immediately proceeds to the next task after initiating a task, without waiting for each resource operation to complete.\n"
+ },
+ "code": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "destroyPolicy": {
+ "type": "string",
+ "description": "The cleanup policy applied to temporary resources after task completion, based on the task execution status:\n- NEVER: Do not delete any created resources, regardless of whether the task succeeds or fails.\n- ALWAYS: Immediately destroy all related resources upon task completion, regardless of success or failure.\n- ON_FAILURE: Delete related resources only if the task fails; retain them if the task succeeds.\n"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
"alicloud:index/ProviderAssumeRole:ProviderAssumeRole": {
"properties": {
"externalId": {
@@ -62956,7 +63968,7 @@
},
"engineType": {
"type": "string",
- "description": "Engine\n"
+ "description": "Engine\n\nEnumeration value:\n- `TABLE`: Wide table engine\n- `TSDB`: Time series Engine\n- `LSEARCH`: Search engine\n- `LTS`: LTS engine\n- `LVECTOR`: Vector engine\n- `LCOLUMN`: Column-store engine\n- `LAI`: AI engine\n- `FILE`: The underlying file engine\n- `LMESSAGE`: Message engine\n- `LROW`: Wide table Engine 3.0\n- `LSTREAM`: Stream engine\n"
},
"isLastVersion": {
"type": "boolean",
@@ -63052,7 +64064,7 @@
},
"nodeSpec": {
"type": "string",
- "description": "Node Specifications\n"
+ "description": "Node Specifications\n- Valid values when selecting cloud storage:\n- **lindorm.c.2xlarge**, 8 cores 16GB\n- **lindorm.g.2xlarge**, 8 cores 32GB\n- **lindorm.c.4xlarge**, 16 cores 32GB\n- **lindorm.g.4xlarge**, 16 cores 64GB\n- **lindorm.c.8xlarge**, 32 core 64GB\n- **lindorm.g.8xlarge**, 32 core 128GB\n- **lindorm.g.8xlarge**, 8 cores 64GB\n- **lindorm.r.4xlarge**, 16 cores 128GB\n- **lindorm.r.8xlarge**, 32 cores 256GB\n- Valid values when local disk storage is selected:\n- **lindorm.d2s.5XLarge**, 20 core 88GB(D2S)\n- **lindorm.d2s.10XLarge**, 40 core 176GB(D2S)\n- **lindorm.d2c.6XLarge**, 24 core 88GB(D2C)\n- **lindorm.d2c.12XLarge**, 48 cores 176GB(D2C)\n- **lindorm.d2C.24XLarge**, 96 core 352GB(D2C)\n- **lindorm.d1.2xlarge**, 8 cores 32GB(D1NE)\n- **lindorm.d1.4xlarge**, 16 cores 64GB(D1NE)\n- **lindorm.d1.6xlarge**, 24 cores 96GB(D1NE)\n- **lindorm.sd3c.3XLarge**, 14 cores 56GB(D3C PRO)\n- **lindorm.sd3c.7XLarge**, 28 core 112GB(D3C PRO)\n- **lindorm.sd3c.14XLarge**, 56 core 224GB(D3C PRO)\n- **lindorm.d3s.2XLarge**, 8 core 32GB(D3S)\n- **lindorm.d3s.4XLarge**, 16 cores 64GB(D3S)\n- **lindorm.d3s.8XLarge**, 32 core 128GB(D3S)\n- **lindorm.d3s.12XLarge**, 48 cores 192GB(D3S)\n- **lindorm.d3s.16XLarge**, 64 cores 256GB(D3S)\n- **lindorm.i4.xlarge**, 4 core 32GB(I4)\n- **lindorm.i4.2xlarge**, 8 core 64GB(I4)\n- **lindorm.i4.4xlarge**, 16 cores 128GB(I4)\n- **lindorm.i4.8xlarge**, 32 cores 256GB(I4)\n- **lindorm.i2.xlarge**, 4 core 32GB(I2)\n- **lindorm.i2.2xlarge**, 8 core 64GB(I2)\n- **lindorm.i2.4xlarge**, 16 cores 128GB(I2)\n- **lindorm.i2.8xlarge**, 32 cores 256GB(I2)\n"
},
"resourceGroupName": {
"type": "string",
@@ -63089,6 +64101,23 @@
}
}
},
+ "alicloud:lindorm/InstanceV2WhiteIpList:InstanceV2WhiteIpList": {
+ "properties": {
+ "groupName": {
+ "type": "string",
+ "description": "Group Name\n"
+ },
+ "ipList": {
+ "type": "string",
+ "description": "Whitelist information\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "groupName",
+ "ipList"
+ ]
+ },
"alicloud:lindorm/getInstancesInstance:getInstancesInstance": {
"properties": {
"autoRenew": {
@@ -69439,6 +70468,40 @@
"allowedOrigins"
]
},
+ "alicloud:oss/BucketHttpsConfigCipherSuit:BucketHttpsConfigCipherSuit": {
+ "properties": {
+ "customCipherSuites": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "This field is used to configure custom encryption algorithm suites for TLS 1.2.\n"
+ },
+ "enable": {
+ "type": "boolean",
+ "description": "Configures TLS encryption algorithm suites. Valid values:\ntrue: strong encryption algorithm suites or custom encryption algorithm suites.\nfalse: all encryption algorithm suites (default).\n"
+ },
+ "strongCipherSuite": {
+ "type": "boolean",
+ "description": "Specifies whether to use strong encryption algorithm suites. Valid values:\ntrue: uses strong encryption algorithm suites.\nfalse: uses custom encryption algorithm suites.\n"
+ },
+ "tls13CustomCipherSuites": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Specifies custom encryption algorithm suites. You can specify multiple suites. This field is used to configure custom encryption algorithm suites for TLS 1.3.\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "enable"
+ ]
+ }
+ }
+ },
"alicloud:oss/BucketLifecycleRule:BucketLifecycleRule": {
"properties": {
"abortMultipartUploads": {
@@ -72497,11 +73560,11 @@
"properties": {
"autoAcceptConnection": {
"type": "boolean",
- "description": "Whether to automatically accept terminal node connections.\n"
+ "description": "Specifies whether to automatically accept endpoint connection requests. Valid values: : \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
},
"connectBandwidth": {
"type": "integer",
- "description": "The connection bandwidth.\n"
+ "description": "The default maximum bandwidth of the endpoint connection.\n"
},
"id": {
"type": "string",
@@ -72509,34 +73572,34 @@
},
"serviceBusinessStatus": {
"type": "string",
- "description": "The business status of the terminal node service. Valid Value: `Normal`, `FinancialLocked` and `SecurityLocked`.\n"
+ "description": "The service state of the endpoint service. Default value: `Normal`. Valid values: `Normal`, `FinancialLocked` and `SecurityLocked`.\n"
},
"serviceDescription": {
"type": "string",
- "description": "The description of the terminal node service.\n"
+ "description": "The description of the endpoint service.\n"
},
"serviceDomain": {
"type": "string",
- "description": "The domain of service.\n"
+ "description": "The domain name of the endpoint service.\n"
},
"serviceId": {
"type": "string",
- "description": "The ID of the Vpc Endpoint Service.\n"
+ "description": "The ID of the endpoint service.\n"
},
"status": {
"type": "string",
- "description": "The Status of Vpc Endpoint Service. Valid Value: `Active`, `Creating`, `Deleted`, `Deleting` and `Pending`.\n"
+ "description": "The state of the endpoint service. Valid values: `Active`, `Creating`, `Deleted`, `Deleting` and `Pending`.\n"
},
"tags": {
"type": "object",
"additionalProperties": {
"type": "string"
},
- "description": "The tags of Vpc Endpoint Service.\n"
+ "description": "A mapping of tags to assign to the resource.\n"
},
"vpcEndpointServiceName": {
"type": "string",
- "description": "The name of Vpc Endpoint Service.\n"
+ "description": "The name of the endpoint service.\n"
}
},
"type": "object",
@@ -76042,6 +77105,497 @@
}
}
},
+ "alicloud:realtimecompute/DeploymentArtifact:DeploymentArtifact": {
+ "properties": {
+ "jarArtifact": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentArtifactJarArtifact:DeploymentArtifactJarArtifact",
+ "description": "JarArtifact See \u003cspan pulumi-lang-nodejs=\"`jarArtifact`\" pulumi-lang-dotnet=\"`JarArtifact`\" pulumi-lang-go=\"`jarArtifact`\" pulumi-lang-python=\"`jar_artifact`\" pulumi-lang-yaml=\"`jarArtifact`\" pulumi-lang-java=\"`jarArtifact`\"\u003e`jar_artifact`\u003c/span\u003e below.\n"
+ },
+ "kind": {
+ "type": "string",
+ "description": "Artifact type\n",
+ "willReplaceOnChanges": true
+ },
+ "pythonArtifact": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentArtifactPythonArtifact:DeploymentArtifactPythonArtifact",
+ "description": "PythonArtifact See \u003cspan pulumi-lang-nodejs=\"`pythonArtifact`\" pulumi-lang-dotnet=\"`PythonArtifact`\" pulumi-lang-go=\"`pythonArtifact`\" pulumi-lang-python=\"`python_artifact`\" pulumi-lang-yaml=\"`pythonArtifact`\" pulumi-lang-java=\"`pythonArtifact`\"\u003e`python_artifact`\u003c/span\u003e below.\n"
+ },
+ "sqlArtifact": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentArtifactSqlArtifact:DeploymentArtifactSqlArtifact",
+ "description": "SqlArtifact See \u003cspan pulumi-lang-nodejs=\"`sqlArtifact`\" pulumi-lang-dotnet=\"`SqlArtifact`\" pulumi-lang-go=\"`sqlArtifact`\" pulumi-lang-python=\"`sql_artifact`\" pulumi-lang-yaml=\"`sqlArtifact`\" pulumi-lang-java=\"`sqlArtifact`\"\u003e`sql_artifact`\u003c/span\u003e below.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "alicloud:realtimecompute/DeploymentArtifactJarArtifact:DeploymentArtifactJarArtifact": {
+ "properties": {
+ "additionalDependencies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Full URL path of additional files. If you need to use dependencies such as UDFs, connectors, or formats that are not registered on the VVP platform, you must add them using this method. Dependencies already registered on the platform do not require this approach.\n"
+ },
+ "entryClass": {
+ "type": "string",
+ "description": "Main class; you must specify the fully qualified class name\n"
+ },
+ "jarUri": {
+ "type": "string",
+ "description": "Full URL path of the JAR job\n"
+ },
+ "mainArgs": {
+ "type": "string",
+ "description": "Startup arguments\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentArtifactPythonArtifact:DeploymentArtifactPythonArtifact": {
+ "properties": {
+ "additionalDependencies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Full URL path of additional files. If you need to use dependencies such as UDFs, connectors, or formats that are not registered on the VVP platform, you must add them using this method. Dependencies already registered on the platform do not require this approach.\n"
+ },
+ "additionalPythonArchives": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "URL paths of dependent Python archive files\n"
+ },
+ "additionalPythonLibraries": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "URL paths of dependent Python library files\n"
+ },
+ "entryModule": {
+ "type": "string",
+ "description": "Entry module for Python\n"
+ },
+ "mainArgs": {
+ "type": "string",
+ "description": "Startup arguments\n"
+ },
+ "pythonArtifactUri": {
+ "type": "string",
+ "description": "Full URL path of the Python job\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentArtifactSqlArtifact:DeploymentArtifactSqlArtifact": {
+ "properties": {
+ "additionalDependencies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Full URL path of additional files. If you need to use dependencies such as UDFs, connectors, or formats that are not registered on the VVP platform, you must add them using this method. Dependencies already registered on the platform do not require this approach.\n"
+ },
+ "sqlScript": {
+ "type": "string",
+ "description": "Text content of the SQL job\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentBatchResourceSetting:DeploymentBatchResourceSetting": {
+ "properties": {
+ "basicResourceSetting": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSetting:DeploymentBatchResourceSettingBasicResourceSetting",
+ "description": "Resource settings for basic mode See \u003cspan pulumi-lang-nodejs=\"`basicResourceSetting`\" pulumi-lang-dotnet=\"`BasicResourceSetting`\" pulumi-lang-go=\"`basicResourceSetting`\" pulumi-lang-python=\"`basic_resource_setting`\" pulumi-lang-yaml=\"`basicResourceSetting`\" pulumi-lang-java=\"`basicResourceSetting`\"\u003e`basic_resource_setting`\u003c/span\u003e below.\n"
+ },
+ "maxSlot": {
+ "type": "integer",
+ "description": "Maximum number of slots\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSetting:DeploymentBatchResourceSettingBasicResourceSetting": {
+ "properties": {
+ "jobmanagerResourceSettingSpec": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec:DeploymentBatchResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec"
+ },
+ "parallelism": {
+ "type": "integer"
+ },
+ "taskmanagerResourceSettingSpec": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec:DeploymentBatchResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec:DeploymentBatchResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec": {
+ "properties": {
+ "cpu": {
+ "type": "number"
+ },
+ "memory": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentBatchResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec:DeploymentBatchResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec": {
+ "properties": {
+ "cpu": {
+ "type": "number"
+ },
+ "memory": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentDeploymentTarget:DeploymentDeploymentTarget": {
+ "properties": {
+ "mode": {
+ "type": "string",
+ "description": "Deployment mode, valid values: PER_JOB or SESSION\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Deployment target name\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "mode",
+ "name"
+ ]
+ },
+ "alicloud:realtimecompute/DeploymentLocalVariable:DeploymentLocalVariable": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Job variable name\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "Job variable value\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentLogging:DeploymentLogging": {
+ "properties": {
+ "log4j2ConfigurationTemplate": {
+ "type": "string",
+ "description": "Custom log template\n"
+ },
+ "log4jLoggers": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentLoggingLog4jLogger:DeploymentLoggingLog4jLogger"
+ },
+ "description": "log4j configuration See \u003cspan pulumi-lang-nodejs=\"`log4jLoggers`\" pulumi-lang-dotnet=\"`Log4jLoggers`\" pulumi-lang-go=\"`log4jLoggers`\" pulumi-lang-python=\"`log4j_loggers`\" pulumi-lang-yaml=\"`log4jLoggers`\" pulumi-lang-java=\"`log4jLoggers`\"\u003e`log4j_loggers`\u003c/span\u003e below.\n"
+ },
+ "logReservePolicy": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentLoggingLogReservePolicy:DeploymentLoggingLogReservePolicy",
+ "description": "Log retention policy See \u003cspan pulumi-lang-nodejs=\"`logReservePolicy`\" pulumi-lang-dotnet=\"`LogReservePolicy`\" pulumi-lang-go=\"`logReservePolicy`\" pulumi-lang-python=\"`log_reserve_policy`\" pulumi-lang-yaml=\"`logReservePolicy`\" pulumi-lang-java=\"`logReservePolicy`\"\u003e`log_reserve_policy`\u003c/span\u003e below.\n"
+ },
+ "loggingProfile": {
+ "type": "string",
+ "description": "Default system log template\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "log4j2ConfigurationTemplate",
+ "log4jLoggers",
+ "logReservePolicy",
+ "loggingProfile"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentLoggingLog4jLogger:DeploymentLoggingLog4jLogger": {
+ "properties": {
+ "loggerLevel": {
+ "type": "string",
+ "description": "Log output level\n"
+ },
+ "loggerName": {
+ "type": "string",
+ "description": "Class name for log output\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "loggerLevel",
+ "loggerName"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentLoggingLogReservePolicy:DeploymentLoggingLogReservePolicy": {
+ "properties": {
+ "expirationDays": {
+ "type": "integer",
+ "description": "Number of days to retain logs after log retention is enabled\n"
+ },
+ "openHistory": {
+ "type": "boolean",
+ "description": "Whether to enable log retention\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "expirationDays",
+ "openHistory"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSetting:DeploymentStreamingResourceSetting": {
+ "properties": {
+ "basicResourceSetting": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSetting:DeploymentStreamingResourceSettingBasicResourceSetting",
+ "description": "Resource settings for basic mode See \u003cspan pulumi-lang-nodejs=\"`basicResourceSetting`\" pulumi-lang-dotnet=\"`BasicResourceSetting`\" pulumi-lang-go=\"`basicResourceSetting`\" pulumi-lang-python=\"`basic_resource_setting`\" pulumi-lang-yaml=\"`basicResourceSetting`\" pulumi-lang-java=\"`basicResourceSetting`\"\u003e`basic_resource_setting`\u003c/span\u003e below.\n"
+ },
+ "expertResourceSetting": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentStreamingResourceSettingExpertResourceSetting:DeploymentStreamingResourceSettingExpertResourceSetting",
+ "description": "Expert mode resource settings See \u003cspan pulumi-lang-nodejs=\"`expertResourceSetting`\" pulumi-lang-dotnet=\"`ExpertResourceSetting`\" pulumi-lang-go=\"`expertResourceSetting`\" pulumi-lang-python=\"`expert_resource_setting`\" pulumi-lang-yaml=\"`expertResourceSetting`\" pulumi-lang-java=\"`expertResourceSetting`\"\u003e`expert_resource_setting`\u003c/span\u003e below.\n"
+ },
+ "resourceSettingMode": {
+ "type": "string",
+ "description": "Resource mode used in streaming mode, valid values: BASIC or EXPERT\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "basicResourceSetting",
+ "expertResourceSetting",
+ "resourceSettingMode"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSetting:DeploymentStreamingResourceSettingBasicResourceSetting": {
+ "properties": {
+ "jobmanagerResourceSettingSpec": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec:DeploymentStreamingResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec"
+ },
+ "parallelism": {
+ "type": "integer"
+ },
+ "taskmanagerResourceSettingSpec": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec:DeploymentStreamingResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "jobmanagerResourceSettingSpec",
+ "parallelism",
+ "taskmanagerResourceSettingSpec"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec:DeploymentStreamingResourceSettingBasicResourceSettingJobmanagerResourceSettingSpec": {
+ "properties": {
+ "cpu": {
+ "type": "number"
+ },
+ "memory": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "cpu",
+ "memory"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec:DeploymentStreamingResourceSettingBasicResourceSettingTaskmanagerResourceSettingSpec": {
+ "properties": {
+ "cpu": {
+ "type": "number"
+ },
+ "memory": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "cpu",
+ "memory"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSettingExpertResourceSetting:DeploymentStreamingResourceSettingExpertResourceSetting": {
+ "properties": {
+ "jobmanagerResourceSettingSpec": {
+ "$ref": "#/types/alicloud:realtimecompute/DeploymentStreamingResourceSettingExpertResourceSettingJobmanagerResourceSettingSpec:DeploymentStreamingResourceSettingExpertResourceSettingJobmanagerResourceSettingSpec"
+ },
+ "resourcePlan": {
+ "type": "string",
+ "description": "Resource plan for expert mode\n"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/DeploymentStreamingResourceSettingExpertResourceSettingJobmanagerResourceSettingSpec:DeploymentStreamingResourceSettingExpertResourceSettingJobmanagerResourceSettingSpec": {
+ "properties": {
+ "cpu": {
+ "type": "number"
+ },
+ "memory": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/JobLocalVariable:JobLocalVariable": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Local variables name\n",
+ "willReplaceOnChanges": true
+ },
+ "value": {
+ "type": "string",
+ "description": "Local variables value\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/JobRestoreStrategy:JobRestoreStrategy": {
+ "properties": {
+ "allowNonRestoredState": {
+ "type": "boolean",
+ "description": "Stateless startup\n",
+ "willReplaceOnChanges": true
+ },
+ "jobStartTimeInMs": {
+ "type": "integer",
+ "description": "Stateless start time. When stateless start is selected, you can set this parameter to enable all source tables that support startTime to read data from this time.\n",
+ "willReplaceOnChanges": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "Restore type\n",
+ "willReplaceOnChanges": true
+ },
+ "savepointId": {
+ "type": "string",
+ "description": "SavepointId\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ },
+ "alicloud:realtimecompute/JobStatus:JobStatus": {
+ "properties": {
+ "currentJobStatus": {
+ "type": "string",
+ "description": "Job current status\n"
+ },
+ "failure": {
+ "$ref": "#/types/alicloud:realtimecompute/JobStatusFailure:JobStatusFailure",
+ "description": "Job failure information\n"
+ },
+ "healthScore": {
+ "type": "integer",
+ "description": "Job Run Health Score\n"
+ },
+ "riskLevel": {
+ "type": "string",
+ "description": "Risk level, which indicates the risk level of the operation status of the job.\n"
+ },
+ "running": {
+ "$ref": "#/types/alicloud:realtimecompute/JobStatusRunning:JobStatusRunning",
+ "description": "job running status, which has value when the job is Running.\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "currentJobStatus",
+ "failure",
+ "healthScore",
+ "riskLevel",
+ "running"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/JobStatusFailure:JobStatusFailure": {
+ "properties": {
+ "failedAt": {
+ "type": "integer",
+ "description": "Job failure time\n"
+ },
+ "message": {
+ "type": "string",
+ "description": "Failure Information Details\n"
+ },
+ "reason": {
+ "type": "string",
+ "description": "Failure Reason\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "failedAt",
+ "message",
+ "reason"
+ ]
+ }
+ }
+ },
+ "alicloud:realtimecompute/JobStatusRunning:JobStatusRunning": {
+ "properties": {
+ "observedFlinkJobRestarts": {
+ "type": "integer",
+ "description": "Number of job restarts\n"
+ },
+ "observedFlinkJobStatus": {
+ "type": "string",
+ "description": "Flink job status\n"
+ }
+ },
+ "type": "object",
+ "language": {
+ "nodejs": {
+ "requiredOutputs": [
+ "observedFlinkJobRestarts",
+ "observedFlinkJobStatus"
+ ]
+ }
+ }
+ },
"alicloud:realtimecompute/VvpInstanceResourceSpec:VvpInstanceResourceSpec": {
"properties": {
"cpu": {
@@ -87841,6 +89395,19 @@
"vendor"
]
},
+ "alicloud:threatdetection/CheckConfigSelectedCheck:CheckConfigSelectedCheck": {
+ "properties": {
+ "checkId": {
+ "type": "integer",
+ "description": "The ID of the check item.\n"
+ },
+ "sectionId": {
+ "type": "integer",
+ "description": "The section ID of the check item.\n"
+ }
+ },
+ "type": "object"
+ },
"alicloud:threatdetection/HoneypotPresetMeta:HoneypotPresetMeta": {
"properties": {
"burp": {
@@ -88171,6 +89738,255 @@
}
}
},
+ "alicloud:threatdetection/getCheckItemConfigsConfig:getCheckItemConfigsConfig": {
+ "properties": {
+ "checkId": {
+ "type": "integer",
+ "description": "The ID of the check item\n"
+ },
+ "checkShowName": {
+ "type": "string",
+ "description": "The name of the check item.\n"
+ },
+ "checkType": {
+ "type": "string",
+ "description": "The source type of the Situation Awareness check item. Value:- **CUSTOM**: user-defined- **SYSTEM**: Predefined by the situational awareness platform\n"
+ },
+ "customConfigs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:threatdetection/getCheckItemConfigsConfigCustomConfig:getCheckItemConfigsConfigCustomConfig"
+ },
+ "description": "The custom configuration items of the check item.\n"
+ },
+ "description": {
+ "$ref": "#/types/alicloud:threatdetection/getCheckItemConfigsConfigDescription:getCheckItemConfigsConfigDescription",
+ "description": "The description of the check item.\n"
+ },
+ "estimatedCount": {
+ "type": "integer",
+ "description": "The estimated quota that will be consumed by this check item.\n"
+ },
+ "instanceSubType": {
+ "type": "string",
+ "description": "The asset subtype of the cloud service. Valid values:* If **InstanceType** is set to **ECS**, this parameter supports the following valid values: * **INSTANCE** * **DISK** * **SECURITY_GROUP*** If **InstanceType** is set to **ACR**, this parameter supports the following valid values: * **REPOSITORY_ENTERPRISE** * **REPOSITORY_PERSON*** If **InstanceType** is set to **RAM**, this parameter supports the following valid values: * **ALIAS** * **USER** * **POLICY** * **GROUP*** If **InstanceType** is set to **WAF**, this parameter supports the following valid value: * **DOMAIN*** If **InstanceType** is set to other values, this parameter supports the following valid values: * **INSTANCE**\n"
+ },
+ "instanceType": {
+ "type": "string",
+ "description": "The asset type of the cloud service. Valid values:* **ECS**: Elastic Compute Service (ECS).* **SLB**: Server Load Balancer (SLB).* **RDS**: ApsaraDB RDS.* **MONGODB**: ApsaraDB for MongoDB (MongoDB).* **KVSTORE**: ApsaraDB for Redis (Redis).* **ACR**: Container Registry.* **CSK**: Container Service for Kubernetes (ACK).* **VPC**: Virtual Private Cloud (VPC).* **ACTIONTRAIL**: ActionTrail.* **CDN**: Alibaba Cloud CDN (CDN).* **CAS**: Certificate Management Service (formerly SSL Certificates Service).* **RDC**: Apsara Devops.* **RAM**: Resource Access Management (RAM).* **DDOS**: Anti-DDoS.* **WAF**: Web Application Firewall (WAF).* **OSS**: Object Storage Service (OSS).* **POLARDB**: PolarDB.* **POSTGRESQL**: ApsaraDB RDS for PostgreSQL.* **MSE**: Microservices Engine (MSE).* **NAS**: File Storage NAS (NAS).* **SDDP**: Sensitive Data Discovery and Protection (SDDP).* **EIP**: Elastic IP Address (EIP).\n"
+ },
+ "riskLevel": {
+ "type": "string",
+ "description": "The risk level of the check item. Valid values:* **HIGH*** **MEDIUM*** **LOW**\n"
+ },
+ "sectionIds": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "description": "The IDs of the sections associated with the check items.\n"
+ },
+ "vendor": {
+ "type": "string",
+ "description": "The type of the cloud asset. Valid values:* **0**: an asset provided by Alibaba Cloud.* **1**: an asset outside Alibaba Cloud.* **2**: an asset in a data center.* **3**, **4**, **5**, and **7**: other cloud asset.* **8**: a simple application server.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "checkId",
+ "checkShowName",
+ "checkType",
+ "customConfigs",
+ "description",
+ "estimatedCount",
+ "instanceSubType",
+ "instanceType",
+ "riskLevel",
+ "sectionIds",
+ "vendor"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckItemConfigsConfigCustomConfig:getCheckItemConfigsConfigCustomConfig": {
+ "properties": {
+ "defaultValue": {
+ "type": "string",
+ "description": "The default value of the custom configuration item. The value is a string.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the custom configuration item, which is unique in a check item.\n"
+ },
+ "showName": {
+ "type": "string",
+ "description": "The display name of the custom configuration item for internationalization.\n"
+ },
+ "typeDefine": {
+ "type": "string",
+ "description": "The type of the custom configuration item. The value is a JSON string.\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "The content of the description for the check item when the Type parameter is text.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "defaultValue",
+ "name",
+ "showName",
+ "typeDefine",
+ "value"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckItemConfigsConfigDescription:getCheckItemConfigsConfigDescription": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of the description of the check item. Valid value:* **text**.\n"
+ },
+ "value": {
+ "type": "string",
+ "description": "The content of the description for the check item when the Type parameter is text.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "type",
+ "value"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckStructuresStructure:getCheckStructuresStructure": {
+ "properties": {
+ "standardType": {
+ "type": "string",
+ "description": "The type of the check item.- **RISK**: security risk.- **IDENTITY_PERMISSION**: Cloud Infrastructure Entitlement Management (CIEM).- **COMPLIANCE**: security compliance.\n"
+ },
+ "standards": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:threatdetection/getCheckStructuresStructureStandard:getCheckStructuresStructureStandard"
+ },
+ "description": "The structure information about the check items of the business type.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "standardType",
+ "standards"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckStructuresStructureStandard:getCheckStructuresStructureStandard": {
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "The ID of the section for the check item.\n"
+ },
+ "requirements": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:threatdetection/getCheckStructuresStructureStandardRequirement:getCheckStructuresStructureStandardRequirement"
+ },
+ "description": "The standards of the check items.\n"
+ },
+ "showName": {
+ "type": "string",
+ "description": "The display name of the standard for the check item.\n"
+ },
+ "type": {
+ "type": "string",
+ "description": "The standard type of the check item. Valid values:- **RISK**: security risk.- **IDENTITY_PERMISSION**: CIEM.- **COMPLIANCE**: security compliance.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "id",
+ "requirements",
+ "showName",
+ "type"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckStructuresStructureStandardRequirement:getCheckStructuresStructureStandardRequirement": {
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "The ID of the section for the check item.\n"
+ },
+ "sections": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:threatdetection/getCheckStructuresStructureStandardRequirementSection:getCheckStructuresStructureStandardRequirementSection"
+ },
+ "description": "The information about the sections of check items.\n"
+ },
+ "showName": {
+ "type": "string",
+ "description": "The display name of the standard for the check item.\n"
+ },
+ "totalCheckCount": {
+ "type": "integer",
+ "description": "The total number of check items for the requirement.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "id",
+ "sections",
+ "showName",
+ "totalCheckCount"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "alicloud:threatdetection/getCheckStructuresStructureStandardRequirementSection:getCheckStructuresStructureStandardRequirementSection": {
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "The ID of the section for the check item.\n"
+ },
+ "showName": {
+ "type": "string",
+ "description": "The display name of the standard for the check item.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "id",
+ "showName"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
"alicloud:threatdetection/getHoneyPotsPot:getHoneyPotsPot": {
"properties": {
"honeypotId": {
@@ -96194,7 +98010,7 @@
},
"resources": {
"alicloud:ackone/cluster:Cluster": {
- "description": "Provides a Ack One Cluster resource. Fleet Manager Cluster.\n\nFor information about Ack One Cluster and how to use it, see [What is Cluster](https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/developer-reference/api-adcp-2022-01-01-createhubcluster).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultVpc = new alicloud.vpc.Network(\"defaultVpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultyVSwitch = new alicloud.vpc.Switch(\"defaultyVSwitch\", {\n vpcId: defaultVpc.id,\n cidrBlock: \"172.16.2.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.ackone.Cluster(\"default\", {\n network: {\n vpcId: defaultVpc.id,\n vswitches: [defaultyVSwitch.id],\n },\n profile: \"XFlow\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_vpc = alicloud.vpc.Network(\"defaultVpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefaulty_v_switch = alicloud.vpc.Switch(\"defaultyVSwitch\",\n vpc_id=default_vpc.id,\n cidr_block=\"172.16.2.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_cluster = alicloud.ackone.Cluster(\"default\",\n network={\n \"vpc_id\": default_vpc.id,\n \"vswitches\": [defaulty_v_switch.id],\n },\n profile=\"XFlow\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultVpc = new AliCloud.Vpc.Network(\"defaultVpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultyVSwitch = new AliCloud.Vpc.Switch(\"defaultyVSwitch\", new()\n {\n VpcId = defaultVpc.Id,\n CidrBlock = \"172.16.2.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.AckOne.Cluster(\"default\", new()\n {\n Network = new AliCloud.AckOne.Inputs.ClusterNetworkArgs\n {\n VpcId = defaultVpc.Id,\n Vswitches = new[]\n {\n defaultyVSwitch.Id,\n },\n },\n Profile = \"XFlow\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ackone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVpc, err := vpc.NewNetwork(ctx, \"defaultVpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultyVSwitch, err := vpc.NewSwitch(ctx, \"defaultyVSwitch\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultVpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.2.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ackone.NewCluster(ctx, \"default\", \u0026ackone.ClusterArgs{\n\t\t\tNetwork: \u0026ackone.ClusterNetworkArgs{\n\t\t\t\tVpcId: defaultVpc.ID(),\n\t\t\t\tVswitches: pulumi.StringArray{\n\t\t\t\t\tdefaultyVSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProfile: pulumi.String(\"XFlow\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ackone.Cluster;\nimport com.pulumi.alicloud.ackone.ClusterArgs;\nimport com.pulumi.alicloud.ackone.inputs.ClusterNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultVpc = new Network(\"defaultVpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultyVSwitch = new Switch(\"defaultyVSwitch\", SwitchArgs.builder()\n .vpcId(defaultVpc.id())\n .cidrBlock(\"172.16.2.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .network(ClusterNetworkArgs.builder()\n .vpcId(defaultVpc.id())\n .vswitches(defaultyVSwitch.id())\n .build())\n .profile(\"XFlow\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultVpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultyVSwitch:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultVpc.id}\n cidrBlock: 172.16.2.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:ackone:Cluster\n name: default\n properties:\n network:\n vpcId: ${defaultVpc.id}\n vswitches:\n - ${defaultyVSwitch.id}\n profile: XFlow\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAck One Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ackone/cluster:Cluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Ack One Cluster resource. Fleet Manager Cluster.\n\nFor information about Ack One Cluster and how to use it, see [What is Cluster](https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/developer-reference/api-adcp-2022-01-01-createhubcluster).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultVpc = new alicloud.vpc.Network(\"defaultVpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultyVSwitch = new alicloud.vpc.Switch(\"defaultyVSwitch\", {\n vpcId: defaultVpc.id,\n cidrBlock: \"172.16.2.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.ackone.Cluster(\"default\", {\n network: {\n vpcId: defaultVpc.id,\n vswitches: [defaultyVSwitch.id],\n },\n profile: \"XFlow\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_vpc = alicloud.vpc.Network(\"defaultVpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefaulty_v_switch = alicloud.vpc.Switch(\"defaultyVSwitch\",\n vpc_id=default_vpc.id,\n cidr_block=\"172.16.2.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_cluster = alicloud.ackone.Cluster(\"default\",\n network={\n \"vpc_id\": default_vpc.id,\n \"vswitches\": [defaulty_v_switch.id],\n },\n profile=\"XFlow\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultVpc = new AliCloud.Vpc.Network(\"defaultVpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultyVSwitch = new AliCloud.Vpc.Switch(\"defaultyVSwitch\", new()\n {\n VpcId = defaultVpc.Id,\n CidrBlock = \"172.16.2.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.AckOne.Cluster(\"default\", new()\n {\n Network = new AliCloud.AckOne.Inputs.ClusterNetworkArgs\n {\n VpcId = defaultVpc.Id,\n Vswitches = new[]\n {\n defaultyVSwitch.Id,\n },\n },\n Profile = \"XFlow\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ackone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVpc, err := vpc.NewNetwork(ctx, \"defaultVpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultyVSwitch, err := vpc.NewSwitch(ctx, \"defaultyVSwitch\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultVpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.2.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ackone.NewCluster(ctx, \"default\", \u0026ackone.ClusterArgs{\n\t\t\tNetwork: \u0026ackone.ClusterNetworkArgs{\n\t\t\t\tVpcId: defaultVpc.ID(),\n\t\t\t\tVswitches: pulumi.StringArray{\n\t\t\t\t\tdefaultyVSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProfile: pulumi.String(\"XFlow\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ackone.Cluster;\nimport com.pulumi.alicloud.ackone.ClusterArgs;\nimport com.pulumi.alicloud.ackone.inputs.ClusterNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultVpc = new Network(\"defaultVpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultyVSwitch = new Switch(\"defaultyVSwitch\", SwitchArgs.builder()\n .vpcId(defaultVpc.id())\n .cidrBlock(\"172.16.2.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .network(ClusterNetworkArgs.builder()\n .vpcId(defaultVpc.id())\n .vswitches(defaultyVSwitch.id())\n .build())\n .profile(\"XFlow\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultVpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultyVSwitch:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultVpc.id}\n cidrBlock: 172.16.2.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:ackone:Cluster\n name: default\n properties:\n network:\n vpcId: ${defaultVpc.id}\n vswitches:\n - ${defaultyVSwitch.id}\n profile: XFlow\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAck One Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ackone/cluster:Cluster example \u003cid\u003e\n```\n\n",
"properties": {
"argocdEnabled": {
"type": "boolean",
@@ -96288,7 +98104,7 @@
}
},
"alicloud:ackone/membershipAttachment:MembershipAttachment": {
- "description": "Provides an Ack One Membership Attachment resource. Fleet Manager Membership Attachment.\n\nFor information about Ack One Membership Attachment and how to use it, see [How to attach cluster tp hub](https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/developer-reference/api-adcp-2022-01-01-attachclustertohub).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst keyName = config.get(\"keyName\") || \"%s\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst cloudEfficiency = enhanced.then(enhanced =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: enhanced.zones?.[0]?.zoneId,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n systemDiskCategory: \"cloud_efficiency\",\n}));\nconst _default = new alicloud.vpc.Network(\"default\", {cidrBlock: \"10.4.0.0/16\"});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n cidrBlock: \"10.4.0.0/24\",\n vpcId: _default.id,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n clusterSpec: \"ack.pro.small\",\n vswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: keyName});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"1\",\n});\nconst defaultCluster = new alicloud.ackone.Cluster(\"default\", {\n network: {\n vpcId: _default.id,\n vswitches: [defaultSwitch.id],\n },\n argocdEnabled: false,\n}, {\n dependsOn: [defaultManagedKubernetes],\n});\nconst defaultMembershipAttachment = new alicloud.ackone.MembershipAttachment(\"default\", {\n clusterId: defaultCluster.id,\n subClusterId: defaultManagedKubernetes.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nkey_name = config.get(\"keyName\")\nif key_name is None:\n key_name = \"%s\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ncloud_efficiency = alicloud.ecs.get_instance_types(availability_zone=enhanced.zones[0].zone_id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\",\n system_disk_category=\"cloud_efficiency\")\ndefault = alicloud.vpc.Network(\"default\", cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default.id,\n zone_id=enhanced.zones[0].zone_id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n cluster_spec=\"ack.pro.small\",\n vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True,\n is_enterprise_security_group=True)\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=key_name)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"1\")\ndefault_cluster = alicloud.ackone.Cluster(\"default\",\n network={\n \"vpc_id\": default.id,\n \"vswitches\": [default_switch.id],\n },\n argocd_enabled=False,\n opts = pulumi.ResourceOptions(depends_on=[default_managed_kubernetes]))\ndefault_membership_attachment = alicloud.ackone.MembershipAttachment(\"default\",\n cluster_id=default_cluster.id,\n sub_cluster_id=default_managed_kubernetes.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var keyName = config.Get(\"keyName\") ?? \"%s\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var cloudEfficiency = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = @default.Id,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n ClusterSpec = \"ack.pro.small\",\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = keyName,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"1\",\n });\n\n var defaultCluster = new AliCloud.AckOne.Cluster(\"default\", new()\n {\n Network = new AliCloud.AckOne.Inputs.ClusterNetworkArgs\n {\n VpcId = @default.Id,\n Vswitches = new[]\n {\n defaultSwitch.Id,\n },\n },\n ArgocdEnabled = false,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n defaultManagedKubernetes,\n },\n });\n\n var defaultMembershipAttachment = new AliCloud.AckOne.MembershipAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n SubClusterId = defaultManagedKubernetes.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ackone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tkeyName := \"%s\"\n\t\tif param := cfg.Get(\"keyName\"); param != \"\" {\n\t\t\tkeyName = param\n\t\t}\n\t\tenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcloudEfficiency, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(enhanced.Zones[0].ZoneId),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(keyName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tDesiredSize: pulumi.String(\"1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := ackone.NewCluster(ctx, \"default\", \u0026ackone.ClusterArgs{\n\t\t\tNetwork: \u0026ackone.ClusterNetworkArgs{\n\t\t\t\tVpcId: _default.ID(),\n\t\t\t\tVswitches: pulumi.StringArray{\n\t\t\t\t\tdefaultSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tArgocdEnabled: pulumi.Bool(false),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdefaultManagedKubernetes,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ackone.NewMembershipAttachment(ctx, \"default\", \u0026ackone.MembershipAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tSubClusterId: defaultManagedKubernetes.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.ackone.Cluster;\nimport com.pulumi.alicloud.ackone.ClusterArgs;\nimport com.pulumi.alicloud.ackone.inputs.ClusterNetworkArgs;\nimport com.pulumi.alicloud.ackone.MembershipAttachment;\nimport com.pulumi.alicloud.ackone.MembershipAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var keyName = config.get(\"keyName\").orElse(\"%s\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n final var cloudEfficiency = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(enhanced.zones()[0].zoneId())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(default_.id())\n .zoneId(enhanced.zones()[0].zoneId())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .clusterSpec(\"ack.pro.small\")\n .vswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(keyName)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"1\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .network(ClusterNetworkArgs.builder()\n .vpcId(default_.id())\n .vswitches(defaultSwitch.id())\n .build())\n .argocdEnabled(false)\n .build(), CustomResourceOptions.builder()\n .dependsOn(defaultManagedKubernetes)\n .build());\n\n var defaultMembershipAttachment = new MembershipAttachment(\"defaultMembershipAttachment\", MembershipAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .subClusterId(defaultManagedKubernetes.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n keyName:\n type: string\n default: '%s'\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n cidrBlock: 10.4.0.0/24\n vpcId: ${default.id}\n zoneId: ${enhanced.zones[0].zoneId}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n clusterSpec: ack.pro.small\n vswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${keyName}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 1\n defaultCluster:\n type: alicloud:ackone:Cluster\n name: default\n properties:\n network:\n vpcId: ${default.id}\n vswitches:\n - ${defaultSwitch.id}\n argocdEnabled: false\n options:\n dependsOn:\n - ${defaultManagedKubernetes}\n defaultMembershipAttachment:\n type: alicloud:ackone:MembershipAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n subClusterId: ${defaultManagedKubernetes.id}\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n cloudEfficiency:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${enhanced.zones[0].zoneId}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n systemDiskCategory: cloud_efficiency\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAck One Membership Attachment can be imported using the id, which consists of cluster_id and sub_cluster_id, e.g.\n\n```sh\n$ pulumi import alicloud:ackone/membershipAttachment:MembershipAttachment example \u003ccluster_id\u003e:\u003csub_cluster_id\u003e\n```\n\n",
+ "description": "Provides an Ack One Membership Attachment resource. Fleet Manager Membership Attachment.\n\nFor information about Ack One Membership Attachment and how to use it, see [How to attach cluster tp hub](https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/developer-reference/api-adcp-2022-01-01-attachclustertohub).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst keyName = config.get(\"keyName\") || \"%s\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst cloudEfficiency = enhanced.then(enhanced =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: enhanced.zones?.[0]?.zoneId,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n systemDiskCategory: \"cloud_efficiency\",\n}));\nconst _default = new alicloud.vpc.Network(\"default\", {cidrBlock: \"10.4.0.0/16\"});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n cidrBlock: \"10.4.0.0/24\",\n vpcId: _default.id,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n clusterSpec: \"ack.pro.small\",\n vswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: keyName});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"1\",\n});\nconst defaultCluster = new alicloud.ackone.Cluster(\"default\", {\n network: {\n vpcId: _default.id,\n vswitches: [defaultSwitch.id],\n },\n argocdEnabled: false,\n}, {\n dependsOn: [defaultManagedKubernetes],\n});\nconst defaultMembershipAttachment = new alicloud.ackone.MembershipAttachment(\"default\", {\n clusterId: defaultCluster.id,\n subClusterId: defaultManagedKubernetes.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nkey_name = config.get(\"keyName\")\nif key_name is None:\n key_name = \"%s\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ncloud_efficiency = alicloud.ecs.get_instance_types(availability_zone=enhanced.zones[0].zone_id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\",\n system_disk_category=\"cloud_efficiency\")\ndefault = alicloud.vpc.Network(\"default\", cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default.id,\n zone_id=enhanced.zones[0].zone_id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n cluster_spec=\"ack.pro.small\",\n vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True,\n is_enterprise_security_group=True)\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=key_name)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"1\")\ndefault_cluster = alicloud.ackone.Cluster(\"default\",\n network={\n \"vpc_id\": default.id,\n \"vswitches\": [default_switch.id],\n },\n argocd_enabled=False,\n opts = pulumi.ResourceOptions(depends_on=[default_managed_kubernetes]))\ndefault_membership_attachment = alicloud.ackone.MembershipAttachment(\"default\",\n cluster_id=default_cluster.id,\n sub_cluster_id=default_managed_kubernetes.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var keyName = config.Get(\"keyName\") ?? \"%s\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var cloudEfficiency = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = @default.Id,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n ClusterSpec = \"ack.pro.small\",\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = keyName,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"1\",\n });\n\n var defaultCluster = new AliCloud.AckOne.Cluster(\"default\", new()\n {\n Network = new AliCloud.AckOne.Inputs.ClusterNetworkArgs\n {\n VpcId = @default.Id,\n Vswitches = new[]\n {\n defaultSwitch.Id,\n },\n },\n ArgocdEnabled = false,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n defaultManagedKubernetes,\n },\n });\n\n var defaultMembershipAttachment = new AliCloud.AckOne.MembershipAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n SubClusterId = defaultManagedKubernetes.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ackone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tkeyName := \"%s\"\n\t\tif param := cfg.Get(\"keyName\"); param != \"\" {\n\t\t\tkeyName = param\n\t\t}\n\t\tenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcloudEfficiency, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(enhanced.Zones[0].ZoneId),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(keyName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tDesiredSize: pulumi.String(\"1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := ackone.NewCluster(ctx, \"default\", \u0026ackone.ClusterArgs{\n\t\t\tNetwork: \u0026ackone.ClusterNetworkArgs{\n\t\t\t\tVpcId: _default.ID(),\n\t\t\t\tVswitches: pulumi.StringArray{\n\t\t\t\t\tdefaultSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tArgocdEnabled: pulumi.Bool(false),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdefaultManagedKubernetes,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ackone.NewMembershipAttachment(ctx, \"default\", \u0026ackone.MembershipAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tSubClusterId: defaultManagedKubernetes.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.ackone.Cluster;\nimport com.pulumi.alicloud.ackone.ClusterArgs;\nimport com.pulumi.alicloud.ackone.inputs.ClusterNetworkArgs;\nimport com.pulumi.alicloud.ackone.MembershipAttachment;\nimport com.pulumi.alicloud.ackone.MembershipAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var keyName = config.get(\"keyName\").orElse(\"%s\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n final var cloudEfficiency = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(enhanced.zones()[0].zoneId())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(default_.id())\n .zoneId(enhanced.zones()[0].zoneId())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .clusterSpec(\"ack.pro.small\")\n .vswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(keyName)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"1\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .network(ClusterNetworkArgs.builder()\n .vpcId(default_.id())\n .vswitches(defaultSwitch.id())\n .build())\n .argocdEnabled(false)\n .build(), CustomResourceOptions.builder()\n .dependsOn(defaultManagedKubernetes)\n .build());\n\n var defaultMembershipAttachment = new MembershipAttachment(\"defaultMembershipAttachment\", MembershipAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .subClusterId(defaultManagedKubernetes.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n keyName:\n type: string\n default: '%s'\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n cidrBlock: 10.4.0.0/24\n vpcId: ${default.id}\n zoneId: ${enhanced.zones[0].zoneId}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n clusterSpec: ack.pro.small\n vswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${keyName}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 1\n defaultCluster:\n type: alicloud:ackone:Cluster\n name: default\n properties:\n network:\n vpcId: ${default.id}\n vswitches:\n - ${defaultSwitch.id}\n argocdEnabled: false\n options:\n dependsOn:\n - ${defaultManagedKubernetes}\n defaultMembershipAttachment:\n type: alicloud:ackone:MembershipAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n subClusterId: ${defaultManagedKubernetes.id}\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n cloudEfficiency:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${enhanced.zones[0].zoneId}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n systemDiskCategory: cloud_efficiency\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAck One Membership Attachment can be imported using the id, which consists of cluster_id and sub_cluster_id, e.g.\n\n```sh\n$ pulumi import alicloud:ackone/membershipAttachment:MembershipAttachment example \u003ccluster_id\u003e:\u003csub_cluster_id\u003e\n```\n\n",
"properties": {
"clusterId": {
"type": "string",
@@ -96337,7 +98153,7 @@
}
},
"alicloud:actiontrail/advancedQueryTemplate:AdvancedQueryTemplate": {
- "description": "Provides a Actiontrail Advanced Query Template resource.\n\nsql template of advanced query.\n\nFor information about Actiontrail Advanced Query Template and how to use it, see [What is Advanced Query Template](https://next.api.alibabacloud.com/document/Actiontrail/2020-07-06/CreateAdvancedQueryTemplate).\n\n\u003e **NOTE:** Available since v1.255.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.actiontrail.AdvancedQueryTemplate(\"default\", {\n simpleQuery: true,\n templateName: \"exampleTemplateName\",\n templateSql: \"*\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.actiontrail.AdvancedQueryTemplate(\"default\",\n simple_query=True,\n template_name=\"exampleTemplateName\",\n template_sql=\"*\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.ActionTrail.AdvancedQueryTemplate(\"default\", new()\n {\n SimpleQuery = true,\n TemplateName = \"exampleTemplateName\",\n TemplateSql = \"*\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := actiontrail.NewAdvancedQueryTemplate(ctx, \"default\", \u0026actiontrail.AdvancedQueryTemplateArgs{\n\t\t\tSimpleQuery: pulumi.Bool(true),\n\t\t\tTemplateName: pulumi.String(\"exampleTemplateName\"),\n\t\t\tTemplateSql: pulumi.String(\"*\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.AdvancedQueryTemplate;\nimport com.pulumi.alicloud.actiontrail.AdvancedQueryTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AdvancedQueryTemplate(\"default\", AdvancedQueryTemplateArgs.builder()\n .simpleQuery(true)\n .templateName(\"exampleTemplateName\")\n .templateSql(\"*\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:actiontrail:AdvancedQueryTemplate\n properties:\n simpleQuery: true\n templateName: exampleTemplateName\n templateSql: '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nActiontrail Advanced Query Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/advancedQueryTemplate:AdvancedQueryTemplate example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Actiontrail Advanced Query Template resource.\n\nsql template of advanced query.\n\nFor information about Actiontrail Advanced Query Template and how to use it, see [What is Advanced Query Template](https://next.api.alibabacloud.com/document/Actiontrail/2020-07-06/CreateAdvancedQueryTemplate).\n\n\u003e **NOTE:** Available since v1.255.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.actiontrail.AdvancedQueryTemplate(\"default\", {\n simpleQuery: true,\n templateName: \"exampleTemplateName\",\n templateSql: \"*\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.actiontrail.AdvancedQueryTemplate(\"default\",\n simple_query=True,\n template_name=\"exampleTemplateName\",\n template_sql=\"*\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.ActionTrail.AdvancedQueryTemplate(\"default\", new()\n {\n SimpleQuery = true,\n TemplateName = \"exampleTemplateName\",\n TemplateSql = \"*\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := actiontrail.NewAdvancedQueryTemplate(ctx, \"default\", \u0026actiontrail.AdvancedQueryTemplateArgs{\n\t\t\tSimpleQuery: pulumi.Bool(true),\n\t\t\tTemplateName: pulumi.String(\"exampleTemplateName\"),\n\t\t\tTemplateSql: pulumi.String(\"*\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.AdvancedQueryTemplate;\nimport com.pulumi.alicloud.actiontrail.AdvancedQueryTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AdvancedQueryTemplate(\"default\", AdvancedQueryTemplateArgs.builder()\n .simpleQuery(true)\n .templateName(\"exampleTemplateName\")\n .templateSql(\"*\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:actiontrail:AdvancedQueryTemplate\n properties:\n simpleQuery: true\n templateName: exampleTemplateName\n templateSql: '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nActiontrail Advanced Query Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/advancedQueryTemplate:AdvancedQueryTemplate example \u003cid\u003e\n```\n\n",
"properties": {
"simpleQuery": {
"type": "boolean",
@@ -96394,7 +98210,7 @@
}
},
"alicloud:actiontrail/globalEventsStorageRegion:GlobalEventsStorageRegion": {
- "description": "Provides a Global events storage region resource.\n\nFor information about global events storage region and how to use it, see [What is Global Events Storage Region](https://next.api.alibabacloud.com/api/Actiontrail/2020-07-06/UpdateGlobalEventsStorageRegion).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst foo = new alicloud.actiontrail.GlobalEventsStorageRegion(\"foo\", {storageRegion: \"cn-hangzhou\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nfoo = alicloud.actiontrail.GlobalEventsStorageRegion(\"foo\", storage_region=\"cn-hangzhou\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new AliCloud.ActionTrail.GlobalEventsStorageRegion(\"foo\", new()\n {\n StorageRegion = \"cn-hangzhou\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := actiontrail.NewGlobalEventsStorageRegion(ctx, \"foo\", \u0026actiontrail.GlobalEventsStorageRegionArgs{\n\t\t\tStorageRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.GlobalEventsStorageRegion;\nimport com.pulumi.alicloud.actiontrail.GlobalEventsStorageRegionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var foo = new GlobalEventsStorageRegion(\"foo\", GlobalEventsStorageRegionArgs.builder()\n .storageRegion(\"cn-hangzhou\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: alicloud:actiontrail:GlobalEventsStorageRegion\n properties:\n storageRegion: cn-hangzhou\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nGlobal events storage region not can be imported.\n\n",
+ "description": "Provides a Global events storage region resource.\n\nFor information about global events storage region and how to use it, see [What is Global Events Storage Region](https://next.api.alibabacloud.com/api/Actiontrail/2020-07-06/UpdateGlobalEventsStorageRegion).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst foo = new alicloud.actiontrail.GlobalEventsStorageRegion(\"foo\", {storageRegion: \"cn-hangzhou\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nfoo = alicloud.actiontrail.GlobalEventsStorageRegion(\"foo\", storage_region=\"cn-hangzhou\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new AliCloud.ActionTrail.GlobalEventsStorageRegion(\"foo\", new()\n {\n StorageRegion = \"cn-hangzhou\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := actiontrail.NewGlobalEventsStorageRegion(ctx, \"foo\", \u0026actiontrail.GlobalEventsStorageRegionArgs{\n\t\t\tStorageRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.GlobalEventsStorageRegion;\nimport com.pulumi.alicloud.actiontrail.GlobalEventsStorageRegionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var foo = new GlobalEventsStorageRegion(\"foo\", GlobalEventsStorageRegionArgs.builder()\n .storageRegion(\"cn-hangzhou\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: alicloud:actiontrail:GlobalEventsStorageRegion\n properties:\n storageRegion: cn-hangzhou\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nGlobal events storage region not can be imported.\n\n",
"properties": {
"storageRegion": {
"type": "string",
@@ -96422,25 +98238,30 @@
}
},
"alicloud:actiontrail/historyDeliveryJob:HistoryDeliveryJob": {
- "description": "Provides a Actiontrail History Delivery Job resource.\n\nFor information about Actiontrail History Delivery Job and how to use it, see [What is History Delivery Job](https://www.alibabacloud.com/help/en/actiontrail/latest/api-actiontrail-2020-07-06-createdeliveryhistoryjob).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n\u003e **NOTE:** You are authorized to use the historical event delivery task feature. To use this feature, [submit a ticket](https://workorder-intl.console.aliyun.com/?spm=a2c63.p38356.0.0.e29f552bb6odNZ#/ticket/createIndex) or ask the sales manager to add you to the whitelist.\n\n\u003e **NOTE:** Make sure that you have called the \u003cspan pulumi-lang-nodejs=\"`alicloud.actiontrail.Trail`\" pulumi-lang-dotnet=\"`alicloud.actiontrail.Trail`\" pulumi-lang-go=\"`actiontrail.Trail`\" pulumi-lang-python=\"`actiontrail.Trail`\" pulumi-lang-yaml=\"`alicloud.actiontrail.Trail`\" pulumi-lang-java=\"`alicloud.actiontrail.Trail`\"\u003e`alicloud.actiontrail.Trail`\u003c/span\u003e to create a single-account or multi-account trace that delivered to Log Service SLS.\n\n\u003e **NOTE:** An Alibaba cloud account can only have one running delivery history job at the same time.\n\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetAccount = alicloud.getAccount({});\nconst exampleProject = new alicloud.log.Project(\"example\", {\n projectName: `${name}-${_default.result}`,\n description: \"tf actiontrail example\",\n});\nconst exampleTrail = new alicloud.actiontrail.Trail(\"example\", {\n trailName: `${name}-${_default.result}`,\n slsProjectArn: pulumi.all([example, exampleGetAccount, exampleProject.name]).apply(([example, exampleGetAccount, name]) =\u003e `acs:log:${example.regions?.[0]?.id}:${exampleGetAccount.id}:project/${name}`),\n});\nconst exampleHistoryDeliveryJob = new alicloud.actiontrail.HistoryDeliveryJob(\"example\", {trailName: exampleTrail.id});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.get_regions(current=True)\nexample_get_account = alicloud.get_account()\nexample_project = alicloud.log.Project(\"example\",\n project_name=f\"{name}-{default['result']}\",\n description=\"tf actiontrail example\")\nexample_trail = alicloud.actiontrail.Trail(\"example\",\n trail_name=f\"{name}-{default['result']}\",\n sls_project_arn=example_project.name.apply(lambda name: f\"acs:log:{example.regions[0].id}:{example_get_account.id}:project/{name}\"))\nexample_history_delivery_job = alicloud.actiontrail.HistoryDeliveryJob(\"example\", trail_name=example_trail.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetAccount = AliCloud.GetAccount.Invoke();\n\n var exampleProject = new AliCloud.Log.Project(\"example\", new()\n {\n ProjectName = $\"{name}-{@default.Result}\",\n Description = \"tf actiontrail example\",\n });\n\n var exampleTrail = new AliCloud.ActionTrail.Trail(\"example\", new()\n {\n TrailName = $\"{name}-{@default.Result}\",\n SlsProjectArn = Output.Tuple(example, exampleGetAccount, exampleProject.Name).Apply(values =\u003e\n {\n var example = values.Item1;\n var exampleGetAccount = values.Item2;\n var name = values.Item3;\n return $\"acs:log:{example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{exampleGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{name}\";\n }),\n });\n\n var exampleHistoryDeliveryJob = new AliCloud.ActionTrail.HistoryDeliveryJob(\"example\", new()\n {\n TrailName = exampleTrail.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleProject, err := log.NewProject(ctx, \"example\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tDescription: pulumi.String(\"tf actiontrail example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTrail, err := actiontrail.NewTrail(ctx, \"example\", \u0026actiontrail.TrailArgs{\n\t\t\tTrailName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tSlsProjectArn: exampleProject.Name.ApplyT(func(name string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v\", example.Regions[0].Id, exampleGetAccount.Id, name), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = actiontrail.NewHistoryDeliveryJob(ctx, \"example\", \u0026actiontrail.HistoryDeliveryJobArgs{\n\t\t\tTrailName: exampleTrail.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.actiontrail.Trail;\nimport com.pulumi.alicloud.actiontrail.TrailArgs;\nimport com.pulumi.alicloud.actiontrail.HistoryDeliveryJob;\nimport com.pulumi.alicloud.actiontrail.HistoryDeliveryJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var exampleProject = new Project(\"exampleProject\", ProjectArgs.builder()\n .projectName(String.format(\"%s-%s\", name,default_.result()))\n .description(\"tf actiontrail example\")\n .build());\n\n var exampleTrail = new Trail(\"exampleTrail\", TrailArgs.builder()\n .trailName(String.format(\"%s-%s\", name,default_.result()))\n .slsProjectArn(exampleProject.name().applyValue(_name -\u003e String.format(\"acs:log:%s:%s:project/%s\", example.regions()[0].id(),exampleGetAccount.id(),_name)))\n .build());\n\n var exampleHistoryDeliveryJob = new HistoryDeliveryJob(\"exampleHistoryDeliveryJob\", HistoryDeliveryJobArgs.builder()\n .trailName(exampleTrail.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n exampleProject:\n type: alicloud:log:Project\n name: example\n properties:\n projectName: ${name}-${default.result}\n description: tf actiontrail example\n exampleTrail:\n type: alicloud:actiontrail:Trail\n name: example\n properties:\n trailName: ${name}-${default.result}\n slsProjectArn: acs:log:${example.regions[0].id}:${exampleGetAccount.id}:project/${exampleProject.name}\n exampleHistoryDeliveryJob:\n type: alicloud:actiontrail:HistoryDeliveryJob\n name: example\n properties:\n trailName: ${exampleTrail.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n exampleGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nActiontrail History Delivery Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/historyDeliveryJob:HistoryDeliveryJob example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Action Trail History Delivery Job resource.\n\nDelivery History Tasks.\n\nFor information about Action Trail History Delivery Job and how to use it, see [What is History Delivery Job](https://www.alibabacloud.com/help/en/actiontrail/latest/api-actiontrail-2020-07-06-createdeliveryhistoryjob).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n\u003e **NOTE:** You are authorized to use the historical event delivery task feature. To use this feature, [submit a ticket](https://workorder-intl.console.aliyun.com/?spm=a2c63.p38356.0.0.e29f552bb6odNZ#/ticket/createIndex) or ask the sales manager to add you to the whitelist.\n\n\u003e **NOTE:** Make sure that you have called the \u003cspan pulumi-lang-nodejs=\"`alicloud.actiontrail.Trail`\" pulumi-lang-dotnet=\"`alicloud.actiontrail.Trail`\" pulumi-lang-go=\"`actiontrail.Trail`\" pulumi-lang-python=\"`actiontrail.Trail`\" pulumi-lang-yaml=\"`alicloud.actiontrail.Trail`\" pulumi-lang-java=\"`alicloud.actiontrail.Trail`\"\u003e`alicloud.actiontrail.Trail`\u003c/span\u003e to create a single-account or multi-account trace that delivered to Log Service SLS.\n\n\u003e **NOTE:** An Alibaba cloud account can only have one running delivery history job at the same time.\n\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultGetRoles = alicloud.ram.getRoles({\n nameRegex: \"AliyunServiceRoleForActionTrail\",\n});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n description: name,\n projectName: name,\n});\nconst defaultTrail = new alicloud.actiontrail.Trail(\"default\", {\n eventRw: \"Write\",\n slsProjectArn: pulumi.all([_default, defaultGetAccount, defaultProject.projectName]).apply(([_default, defaultGetAccount, projectName]) =\u003e `acs:log:${_default.regions?.[0]?.id}:${defaultGetAccount.id}:project/${projectName}`),\n trailName: name,\n slsWriteRoleArn: defaultGetRoles.then(defaultGetRoles =\u003e defaultGetRoles.roles?.[0]?.arn),\n trailRegion: \"All\",\n isOrganizationTrail: false,\n status: \"Enable\",\n eventSelectors: JSON.stringify([{\n ServiceName: \"PDS\",\n }]),\n dataEventTrailRegion: \"cn-hangzhou\",\n});\nconst defaultHistoryDeliveryJob = new alicloud.actiontrail.HistoryDeliveryJob(\"default\", {trailName: defaultTrail.id});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_account = alicloud.get_account()\ndefault_get_roles = alicloud.ram.get_roles(name_regex=\"AliyunServiceRoleForActionTrail\")\ndefault_project = alicloud.log.Project(\"default\",\n description=name,\n project_name=name)\ndefault_trail = alicloud.actiontrail.Trail(\"default\",\n event_rw=\"Write\",\n sls_project_arn=default_project.project_name.apply(lambda project_name: f\"acs:log:{default.regions[0].id}:{default_get_account.id}:project/{project_name}\"),\n trail_name=name,\n sls_write_role_arn=default_get_roles.roles[0].arn,\n trail_region=\"All\",\n is_organization_trail=False,\n status=\"Enable\",\n event_selectors=json.dumps([{\n \"ServiceName\": \"PDS\",\n }]),\n data_event_trail_region=\"cn-hangzhou\")\ndefault_history_delivery_job = alicloud.actiontrail.HistoryDeliveryJob(\"default\", trail_name=default_trail.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultGetRoles = AliCloud.Ram.GetRoles.Invoke(new()\n {\n NameRegex = \"AliyunServiceRoleForActionTrail\",\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n Description = name,\n ProjectName = name,\n });\n\n var defaultTrail = new AliCloud.ActionTrail.Trail(\"default\", new()\n {\n EventRw = \"Write\",\n SlsProjectArn = Output.Tuple(@default, defaultGetAccount, defaultProject.ProjectName).Apply(values =\u003e\n {\n var @default = values.Item1;\n var defaultGetAccount = values.Item2;\n var projectName = values.Item3;\n return $\"acs:log:{@default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}\";\n }),\n TrailName = name,\n SlsWriteRoleArn = defaultGetRoles.Apply(getRolesResult =\u003e getRolesResult.Roles[0]?.Arn),\n TrailRegion = \"All\",\n IsOrganizationTrail = false,\n Status = \"Enable\",\n EventSelectors = JsonSerializer.Serialize(new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"ServiceName\"] = \"PDS\",\n },\n }),\n DataEventTrailRegion = \"cn-hangzhou\",\n });\n\n var defaultHistoryDeliveryJob = new AliCloud.ActionTrail.HistoryDeliveryJob(\"default\", new()\n {\n TrailName = defaultTrail.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRoles, err := ram.GetRoles(ctx, \u0026ram.GetRolesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"AliyunServiceRoleForActionTrail\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tProjectName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal([]map[string]interface{}{\n\t\t\tmap[string]interface{}{\n\t\t\t\t\"ServiceName\": \"PDS\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultTrail, err := actiontrail.NewTrail(ctx, \"default\", \u0026actiontrail.TrailArgs{\n\t\t\tEventRw: pulumi.String(\"Write\"),\n\t\t\tSlsProjectArn: defaultProject.ProjectName.ApplyT(func(projectName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v\", _default.Regions[0].Id, defaultGetAccount.Id, projectName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tTrailName: pulumi.String(name),\n\t\t\tSlsWriteRoleArn: pulumi.String(defaultGetRoles.Roles[0].Arn),\n\t\t\tTrailRegion: pulumi.String(\"All\"),\n\t\t\tIsOrganizationTrail: pulumi.Bool(false),\n\t\t\tStatus: pulumi.String(\"Enable\"),\n\t\t\tEventSelectors: pulumi.String(json0),\n\t\t\tDataEventTrailRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = actiontrail.NewHistoryDeliveryJob(ctx, \"default\", \u0026actiontrail.HistoryDeliveryJobArgs{\n\t\t\tTrailName: defaultTrail.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.ram.RamFunctions;\nimport com.pulumi.alicloud.ram.inputs.GetRolesArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.actiontrail.Trail;\nimport com.pulumi.alicloud.actiontrail.TrailArgs;\nimport com.pulumi.alicloud.actiontrail.HistoryDeliveryJob;\nimport com.pulumi.alicloud.actiontrail.HistoryDeliveryJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRoles = RamFunctions.getRoles(GetRolesArgs.builder()\n .nameRegex(\"AliyunServiceRoleForActionTrail\")\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .description(name)\n .projectName(name)\n .build());\n\n var defaultTrail = new Trail(\"defaultTrail\", TrailArgs.builder()\n .eventRw(\"Write\")\n .slsProjectArn(defaultProject.projectName().applyValue(_projectName -\u003e String.format(\"acs:log:%s:%s:project/%s\", default_.regions()[0].id(),defaultGetAccount.id(),_projectName)))\n .trailName(name)\n .slsWriteRoleArn(defaultGetRoles.roles()[0].arn())\n .trailRegion(\"All\")\n .isOrganizationTrail(false)\n .status(\"Enable\")\n .eventSelectors(serializeJson(\n jsonArray(jsonObject(\n jsonProperty(\"ServiceName\", \"PDS\")\n ))))\n .dataEventTrailRegion(\"cn-hangzhou\")\n .build());\n\n var defaultHistoryDeliveryJob = new HistoryDeliveryJob(\"defaultHistoryDeliveryJob\", HistoryDeliveryJobArgs.builder()\n .trailName(defaultTrail.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n description: ${name}\n projectName: ${name}\n defaultTrail:\n type: alicloud:actiontrail:Trail\n name: default\n properties:\n eventRw: Write\n slsProjectArn: acs:log:${default.regions[0].id}:${defaultGetAccount.id}:project/${defaultProject.projectName}\n trailName: ${name}\n slsWriteRoleArn: ${defaultGetRoles.roles[0].arn}\n trailRegion: All\n isOrganizationTrail: false\n status: Enable\n eventSelectors:\n fn::toJSON:\n - ServiceName: PDS\n dataEventTrailRegion: cn-hangzhou\n defaultHistoryDeliveryJob:\n type: alicloud:actiontrail:HistoryDeliveryJob\n name: default\n properties:\n trailName: ${defaultTrail.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRoles:\n fn::invoke:\n function: alicloud:ram:getRoles\n arguments:\n nameRegex: AliyunServiceRoleForActionTrail\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAction Trail History Delivery Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/historyDeliveryJob:HistoryDeliveryJob example \u003cid\u003e\n```\n\n",
"properties": {
+ "createTime": {
+ "type": "string",
+ "description": "The creation time of the resource\n"
+ },
"status": {
"type": "integer",
- "description": "The status of the task. Valid values: \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e. \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e: The task is initializing. \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e: The task is delivering historical events. \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e: The delivery of historical events is complete. \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e: The task fails.\n"
+ "description": "The status of the resource\n"
},
"trailName": {
"type": "string",
- "description": "The name of the trail for which you want to create a historical event delivery task.\n"
+ "description": "The Track Name.\n"
}
},
"required": [
+ "createTime",
"status",
"trailName"
],
"inputProperties": {
"trailName": {
"type": "string",
- "description": "The name of the trail for which you want to create a historical event delivery task.\n",
+ "description": "The Track Name.\n",
"willReplaceOnChanges": true
}
},
@@ -96450,13 +98271,17 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering HistoryDeliveryJob resources.\n",
"properties": {
+ "createTime": {
+ "type": "string",
+ "description": "The creation time of the resource\n"
+ },
"status": {
"type": "integer",
- "description": "The status of the task. Valid values: \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e. \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e: The task is initializing. \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e: The task is delivering historical events. \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e: The delivery of historical events is complete. \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e: The task fails.\n"
+ "description": "The status of the resource\n"
},
"trailName": {
"type": "string",
- "description": "The name of the trail for which you want to create a historical event delivery task.\n",
+ "description": "The Track Name.\n",
"willReplaceOnChanges": true
}
},
@@ -96464,7 +98289,7 @@
}
},
"alicloud:actiontrail/trail:Trail": {
- "description": "Provides a Actiontrail Trail resource.\n\nTrail of ActionTrail. After creating a trail, you need to enable the trail through StartLogging.\n\nFor information about Actiontrail Trail and how to use it, see [What is Trail](https://www.alibabacloud.com/help/en/actiontrail/latest/api-actiontrail-2020-07-06-createtrail).\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: `${name}-${defaultInteger.result}`,\n description: \"tf actiontrail example\",\n});\nconst defaultGetRoles = alicloud.ram.getRoles({\n nameRegex: \"AliyunServiceRoleForActionTrail\",\n});\nconst defaultTrail = new alicloud.actiontrail.Trail(\"default\", {\n trailName: name,\n slsWriteRoleArn: defaultGetRoles.then(defaultGetRoles =\u003e defaultGetRoles.roles?.[0]?.arn),\n slsProjectArn: pulumi.all([_default, defaultGetAccount, defaultProject.projectName]).apply(([_default, defaultGetAccount, projectName]) =\u003e `acs:log:${_default.regions?.[0]?.id}:${defaultGetAccount.id}:project/${projectName}`),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_account = alicloud.get_account()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_project = alicloud.log.Project(\"default\",\n project_name=f\"{name}-{default_integer['result']}\",\n description=\"tf actiontrail example\")\ndefault_get_roles = alicloud.ram.get_roles(name_regex=\"AliyunServiceRoleForActionTrail\")\ndefault_trail = alicloud.actiontrail.Trail(\"default\",\n trail_name=name,\n sls_write_role_arn=default_get_roles.roles[0].arn,\n sls_project_arn=default_project.project_name.apply(lambda project_name: f\"acs:log:{default.regions[0].id}:{default_get_account.id}:project/{project_name}\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = $\"{name}-{defaultInteger.Result}\",\n Description = \"tf actiontrail example\",\n });\n\n var defaultGetRoles = AliCloud.Ram.GetRoles.Invoke(new()\n {\n NameRegex = \"AliyunServiceRoleForActionTrail\",\n });\n\n var defaultTrail = new AliCloud.ActionTrail.Trail(\"default\", new()\n {\n TrailName = name,\n SlsWriteRoleArn = defaultGetRoles.Apply(getRolesResult =\u003e getRolesResult.Roles[0]?.Arn),\n SlsProjectArn = Output.Tuple(@default, defaultGetAccount, defaultProject.ProjectName).Apply(values =\u003e\n {\n var @default = values.Item1;\n var defaultGetAccount = values.Item2;\n var projectName = values.Item3;\n return $\"acs:log:{@default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}\";\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"tf actiontrail example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRoles, err := ram.GetRoles(ctx, \u0026ram.GetRolesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"AliyunServiceRoleForActionTrail\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = actiontrail.NewTrail(ctx, \"default\", \u0026actiontrail.TrailArgs{\n\t\t\tTrailName: pulumi.String(name),\n\t\t\tSlsWriteRoleArn: pulumi.String(defaultGetRoles.Roles[0].Arn),\n\t\t\tSlsProjectArn: defaultProject.ProjectName.ApplyT(func(projectName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v\", _default.Regions[0].Id, defaultGetAccount.Id, projectName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.ram.RamFunctions;\nimport com.pulumi.alicloud.ram.inputs.GetRolesArgs;\nimport com.pulumi.alicloud.actiontrail.Trail;\nimport com.pulumi.alicloud.actiontrail.TrailArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .description(\"tf actiontrail example\")\n .build());\n\n final var defaultGetRoles = RamFunctions.getRoles(GetRolesArgs.builder()\n .nameRegex(\"AliyunServiceRoleForActionTrail\")\n .build());\n\n var defaultTrail = new Trail(\"defaultTrail\", TrailArgs.builder()\n .trailName(name)\n .slsWriteRoleArn(defaultGetRoles.roles()[0].arn())\n .slsProjectArn(defaultProject.projectName().applyValue(_projectName -\u003e String.format(\"acs:log:%s:%s:project/%s\", default_.regions()[0].id(),defaultGetAccount.id(),_projectName)))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName: ${name}-${defaultInteger.result}\n description: tf actiontrail example\n defaultTrail:\n type: alicloud:actiontrail:Trail\n name: default\n properties:\n trailName: ${name}\n slsWriteRoleArn: ${defaultGetRoles.roles[0].arn}\n slsProjectArn: acs:log:${default.regions[0].id}:${defaultGetAccount.id}:project/${defaultProject.projectName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRoles:\n fn::invoke:\n function: alicloud:ram:getRoles\n arguments:\n nameRegex: AliyunServiceRoleForActionTrail\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nActiontrail Trail can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/trail:Trail example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Actiontrail Trail resource.\n\nTrail of ActionTrail. After creating a trail, you need to enable the trail through StartLogging.\n\nFor information about Actiontrail Trail and how to use it, see [What is Trail](https://www.alibabacloud.com/help/en/actiontrail/latest/api-actiontrail-2020-07-06-createtrail).\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: `${name}-${defaultInteger.result}`,\n description: \"tf actiontrail example\",\n});\nconst defaultGetRoles = alicloud.ram.getRoles({\n nameRegex: \"AliyunServiceRoleForActionTrail\",\n});\nconst defaultTrail = new alicloud.actiontrail.Trail(\"default\", {\n trailName: name,\n slsWriteRoleArn: defaultGetRoles.then(defaultGetRoles =\u003e defaultGetRoles.roles?.[0]?.arn),\n slsProjectArn: pulumi.all([_default, defaultGetAccount, defaultProject.projectName]).apply(([_default, defaultGetAccount, projectName]) =\u003e `acs:log:${_default.regions?.[0]?.id}:${defaultGetAccount.id}:project/${projectName}`),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_account = alicloud.get_account()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_project = alicloud.log.Project(\"default\",\n project_name=f\"{name}-{default_integer['result']}\",\n description=\"tf actiontrail example\")\ndefault_get_roles = alicloud.ram.get_roles(name_regex=\"AliyunServiceRoleForActionTrail\")\ndefault_trail = alicloud.actiontrail.Trail(\"default\",\n trail_name=name,\n sls_write_role_arn=default_get_roles.roles[0].arn,\n sls_project_arn=default_project.project_name.apply(lambda project_name: f\"acs:log:{default.regions[0].id}:{default_get_account.id}:project/{project_name}\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = $\"{name}-{defaultInteger.Result}\",\n Description = \"tf actiontrail example\",\n });\n\n var defaultGetRoles = AliCloud.Ram.GetRoles.Invoke(new()\n {\n NameRegex = \"AliyunServiceRoleForActionTrail\",\n });\n\n var defaultTrail = new AliCloud.ActionTrail.Trail(\"default\", new()\n {\n TrailName = name,\n SlsWriteRoleArn = defaultGetRoles.Apply(getRolesResult =\u003e getRolesResult.Roles[0]?.Arn),\n SlsProjectArn = Output.Tuple(@default, defaultGetAccount, defaultProject.ProjectName).Apply(values =\u003e\n {\n var @default = values.Item1;\n var defaultGetAccount = values.Item2;\n var projectName = values.Item3;\n return $\"acs:log:{@default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}\";\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"tf actiontrail example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRoles, err := ram.GetRoles(ctx, \u0026ram.GetRolesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"AliyunServiceRoleForActionTrail\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = actiontrail.NewTrail(ctx, \"default\", \u0026actiontrail.TrailArgs{\n\t\t\tTrailName: pulumi.String(name),\n\t\t\tSlsWriteRoleArn: pulumi.String(defaultGetRoles.Roles[0].Arn),\n\t\t\tSlsProjectArn: defaultProject.ProjectName.ApplyT(func(projectName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v\", _default.Regions[0].Id, defaultGetAccount.Id, projectName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.ram.RamFunctions;\nimport com.pulumi.alicloud.ram.inputs.GetRolesArgs;\nimport com.pulumi.alicloud.actiontrail.Trail;\nimport com.pulumi.alicloud.actiontrail.TrailArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .description(\"tf actiontrail example\")\n .build());\n\n final var defaultGetRoles = RamFunctions.getRoles(GetRolesArgs.builder()\n .nameRegex(\"AliyunServiceRoleForActionTrail\")\n .build());\n\n var defaultTrail = new Trail(\"defaultTrail\", TrailArgs.builder()\n .trailName(name)\n .slsWriteRoleArn(defaultGetRoles.roles()[0].arn())\n .slsProjectArn(defaultProject.projectName().applyValue(_projectName -\u003e String.format(\"acs:log:%s:%s:project/%s\", default_.regions()[0].id(),defaultGetAccount.id(),_projectName)))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName: ${name}-${defaultInteger.result}\n description: tf actiontrail example\n defaultTrail:\n type: alicloud:actiontrail:Trail\n name: default\n properties:\n trailName: ${name}\n slsWriteRoleArn: ${defaultGetRoles.roles[0].arn}\n slsProjectArn: acs:log:${default.regions[0].id}:${defaultGetAccount.id}:project/${defaultProject.projectName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRoles:\n fn::invoke:\n function: alicloud:ram:getRoles\n arguments:\n nameRegex: AliyunServiceRoleForActionTrail\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nActiontrail Trail can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/trail:Trail example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -96502,7 +98327,7 @@
"name": {
"type": "string",
"description": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead."
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead."
},
"ossBucketName": {
"type": "string",
@@ -96553,6 +98378,7 @@
"name",
"regionId",
"slsWriteRoleArn",
+ "status",
"trailName",
"trailRegion"
],
@@ -96590,7 +98416,7 @@
"name": {
"type": "string",
"description": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.",
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead.",
"willReplaceOnChanges": true
},
"ossBucketName": {
@@ -96672,7 +98498,7 @@
"name": {
"type": "string",
"description": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.",
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead.",
"willReplaceOnChanges": true
},
"ossBucketName": {
@@ -96722,7 +98548,7 @@
}
},
"alicloud:actiontrail/trailDeprecated:TrailDeprecated": {
- "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.actiontrail.Trail \" pulumi-lang-dotnet=\" alicloud.actiontrail.Trail \" pulumi-lang-go=\" actiontrail.Trail \" pulumi-lang-python=\" actiontrail.Trail \" pulumi-lang-yaml=\" alicloud.actiontrail.Trail \" pulumi-lang-java=\" alicloud.actiontrail.Trail \"\u003e alicloud.actiontrail.Trail \u003c/span\u003efrom version 1.95.0.\n\nProvides a new resource to manage [Action Trail](https://www.alibabacloud.com/help/doc-detail/28804.htm).\n\n\u003e **NOTE:** Available in 1.35.0+\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new action trail.\nconst foo = new alicloud.actiontrail.TrailDeprecated(\"foo\", {\n name: \"action-trail\",\n eventRw: \"Write-test\",\n ossBucketName: bucket.id,\n roleName: attach.roleName,\n ossKeyPrefix: \"at-product-account-audit-B\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new action trail.\nfoo = alicloud.actiontrail.TrailDeprecated(\"foo\",\n name=\"action-trail\",\n event_rw=\"Write-test\",\n oss_bucket_name=bucket[\"id\"],\n role_name=attach[\"roleName\"],\n oss_key_prefix=\"at-product-account-audit-B\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new action trail.\n var foo = new AliCloud.ActionTrail.TrailDeprecated(\"foo\", new()\n {\n Name = \"action-trail\",\n EventRw = \"Write-test\",\n OssBucketName = bucket.Id,\n RoleName = attach.RoleName,\n OssKeyPrefix = \"at-product-account-audit-B\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new action trail.\n\t\t_, err := actiontrail.NewTrailDeprecated(ctx, \"foo\", \u0026actiontrail.TrailDeprecatedArgs{\n\t\t\tName: pulumi.String(\"action-trail\"),\n\t\t\tEventRw: pulumi.String(\"Write-test\"),\n\t\t\tOssBucketName: pulumi.Any(bucket.Id),\n\t\t\tRoleName: pulumi.Any(attach.RoleName),\n\t\t\tOssKeyPrefix: pulumi.String(\"at-product-account-audit-B\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.TrailDeprecated;\nimport com.pulumi.alicloud.actiontrail.TrailDeprecatedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new action trail.\n var foo = new TrailDeprecated(\"foo\", TrailDeprecatedArgs.builder()\n .name(\"action-trail\")\n .eventRw(\"Write-test\")\n .ossBucketName(bucket.id())\n .roleName(attach.roleName())\n .ossKeyPrefix(\"at-product-account-audit-B\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new action trail.\n foo:\n type: alicloud:actiontrail:TrailDeprecated\n properties:\n name: action-trail\n eventRw: Write-test\n ossBucketName: ${bucket.id}\n roleName: ${attach.roleName}\n ossKeyPrefix: at-product-account-audit-B\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAction trail can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/trailDeprecated:TrailDeprecated foo abc12345678\n```\n\n",
+ "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.actiontrail.Trail \" pulumi-lang-dotnet=\" alicloud.actiontrail.Trail \" pulumi-lang-go=\" actiontrail.Trail \" pulumi-lang-python=\" actiontrail.Trail \" pulumi-lang-yaml=\" alicloud.actiontrail.Trail \" pulumi-lang-java=\" alicloud.actiontrail.Trail \"\u003e alicloud.actiontrail.Trail \u003c/span\u003efrom version 1.95.0.\n\nProvides a new resource to manage [Action Trail](https://www.alibabacloud.com/help/doc-detail/28804.htm).\n\n\u003e **NOTE:** Available in 1.35.0+\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new action trail.\nconst foo = new alicloud.actiontrail.TrailDeprecated(\"foo\", {\n name: \"action-trail\",\n eventRw: \"Write-test\",\n ossBucketName: bucket.id,\n roleName: attach.roleName,\n ossKeyPrefix: \"at-product-account-audit-B\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new action trail.\nfoo = alicloud.actiontrail.TrailDeprecated(\"foo\",\n name=\"action-trail\",\n event_rw=\"Write-test\",\n oss_bucket_name=bucket[\"id\"],\n role_name=attach[\"roleName\"],\n oss_key_prefix=\"at-product-account-audit-B\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new action trail.\n var foo = new AliCloud.ActionTrail.TrailDeprecated(\"foo\", new()\n {\n Name = \"action-trail\",\n EventRw = \"Write-test\",\n OssBucketName = bucket.Id,\n RoleName = attach.RoleName,\n OssKeyPrefix = \"at-product-account-audit-B\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new action trail.\n\t\t_, err := actiontrail.NewTrailDeprecated(ctx, \"foo\", \u0026actiontrail.TrailDeprecatedArgs{\n\t\t\tName: pulumi.String(\"action-trail\"),\n\t\t\tEventRw: pulumi.String(\"Write-test\"),\n\t\t\tOssBucketName: pulumi.Any(bucket.Id),\n\t\t\tRoleName: pulumi.Any(attach.RoleName),\n\t\t\tOssKeyPrefix: pulumi.String(\"at-product-account-audit-B\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.actiontrail.TrailDeprecated;\nimport com.pulumi.alicloud.actiontrail.TrailDeprecatedArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new action trail.\n var foo = new TrailDeprecated(\"foo\", TrailDeprecatedArgs.builder()\n .name(\"action-trail\")\n .eventRw(\"Write-test\")\n .ossBucketName(bucket.id())\n .roleName(attach.roleName())\n .ossKeyPrefix(\"at-product-account-audit-B\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new action trail.\n foo:\n type: alicloud:actiontrail:TrailDeprecated\n properties:\n name: action-trail\n eventRw: Write-test\n ossBucketName: ${bucket.id}\n roleName: ${attach.roleName}\n ossKeyPrefix: at-product-account-audit-B\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAction trail can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:actiontrail/trailDeprecated:TrailDeprecated foo abc12345678\n```\n\n",
"properties": {
"createTime": {
"type": "string"
@@ -96753,7 +98579,7 @@
"name": {
"type": "string",
"description": "The name of the trail to be created, which must be unique for an account.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead."
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead."
},
"ossBucketName": {
"type": "string",
@@ -96799,6 +98625,7 @@
"name",
"regionId",
"slsWriteRoleArn",
+ "status",
"trailName",
"trailRegion"
],
@@ -96830,7 +98657,7 @@
"name": {
"type": "string",
"description": "The name of the trail to be created, which must be unique for an account.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.",
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead.",
"willReplaceOnChanges": true
},
"ossBucketName": {
@@ -96901,7 +98728,7 @@
"name": {
"type": "string",
"description": "The name of the trail to be created, which must be unique for an account.\n",
- "deprecationMessage": "Field \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e has been deprecated from provider version 1.95.0. New field \u003cspan pulumi-lang-nodejs=\"`trailName`\" pulumi-lang-dotnet=\"`TrailName`\" pulumi-lang-go=\"`trailName`\" pulumi-lang-python=\"`trail_name`\" pulumi-lang-yaml=\"`trailName`\" pulumi-lang-java=\"`trailName`\"\u003e`trail_name`\u003c/span\u003e instead.",
+ "deprecationMessage": "Field 'name' has been deprecated since provider version 1.95.0. New field 'trail_name' instead.",
"willReplaceOnChanges": true
},
"ossBucketName": {
@@ -96947,7 +98774,7 @@
"deprecationMessage": "Resource renamed to `Trail`"
},
"alicloud:adb/account:Account": {
- "description": "Provides a [ADB](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/latest/api-doc-adb-2019-03-15-api-doc-createaccount) account resource and used to manage databases.\n\n\u003e **NOTE:** Available since v1.71.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst creation = config.get(\"creation\") || \"ADB\";\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst cluster = new alicloud.adb.DBCluster(\"cluster\", {\n dbClusterCategory: \"MixedStorage\",\n mode: \"flexible\",\n computeResource: \"8Core32GB\",\n vswitchId: vswitchId,\n description: name,\n});\nconst defaultAccount = new alicloud.adb.Account(\"default\", {\n dbClusterId: cluster.id,\n accountName: name,\n accountPassword: \"tf_example123\",\n accountDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ncreation = config.get(\"creation\")\nif creation is None:\n creation = \"ADB\"\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\nvswitch_id = default_get_switches.ids[0]\ncluster = alicloud.adb.DBCluster(\"cluster\",\n db_cluster_category=\"MixedStorage\",\n mode=\"flexible\",\n compute_resource=\"8Core32GB\",\n vswitch_id=vswitch_id,\n description=name)\ndefault_account = alicloud.adb.Account(\"default\",\n db_cluster_id=cluster.id,\n account_name=name,\n account_password=\"tf_example123\",\n account_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var creation = config.Get(\"creation\") ?? \"ADB\";\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var cluster = new AliCloud.Adb.DBCluster(\"cluster\", new()\n {\n DbClusterCategory = \"MixedStorage\",\n Mode = \"flexible\",\n ComputeResource = \"8Core32GB\",\n VswitchId = vswitchId,\n Description = name,\n });\n\n var defaultAccount = new AliCloud.Adb.Account(\"default\", new()\n {\n DbClusterId = cluster.Id,\n AccountName = name,\n AccountPassword = \"tf_example123\",\n AccountDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tcreation := \"ADB\"\n\t\tif param := cfg.Get(\"creation\"); param != \"\" {\n\t\t\tcreation = param\n\t\t}\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\tcluster, err := adb.NewDBCluster(ctx, \"cluster\", \u0026adb.DBClusterArgs{\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tComputeResource: pulumi.String(\"8Core32GB\"),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewAccount(ctx, \"default\", \u0026adb.AccountArgs{\n\t\t\tDbClusterId: cluster.ID(),\n\t\t\tAccountName: pulumi.String(name),\n\t\t\tAccountPassword: pulumi.String(\"tf_example123\"),\n\t\t\tAccountDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.Account;\nimport com.pulumi.alicloud.adb.AccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var creation = config.get(\"creation\").orElse(\"ADB\");\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n var cluster = new DBCluster(\"cluster\", DBClusterArgs.builder()\n .dbClusterCategory(\"MixedStorage\")\n .mode(\"flexible\")\n .computeResource(\"8Core32GB\")\n .vswitchId(vswitchId)\n .description(name)\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbClusterId(cluster.id())\n .accountName(name)\n .accountPassword(\"tf_example123\")\n .accountDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n creation:\n type: string\n default: ADB\n name:\n type: string\n default: tfexample\nresources:\n cluster:\n type: alicloud:adb:DBCluster\n properties:\n dbClusterCategory: MixedStorage\n mode: flexible\n computeResource: 8Core32GB\n vswitchId: ${vswitchId}\n description: ${name}\n defaultAccount:\n type: alicloud:adb:Account\n name: default\n properties:\n dbClusterId: ${cluster.id}\n accountName: ${name}\n accountPassword: tf_example123\n accountDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nADB account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/account:Account example am-12345:tf_account\n```\n\n",
+ "description": "Provides a [ADB](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/latest/api-doc-adb-2019-03-15-api-doc-createaccount) account resource and used to manage databases.\n\n\u003e **NOTE:** Available since v1.71.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst creation = config.get(\"creation\") || \"ADB\";\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst cluster = new alicloud.adb.DBCluster(\"cluster\", {\n dbClusterCategory: \"MixedStorage\",\n mode: \"flexible\",\n computeResource: \"8Core32GB\",\n vswitchId: vswitchId,\n description: name,\n});\nconst defaultAccount = new alicloud.adb.Account(\"default\", {\n dbClusterId: cluster.id,\n accountName: name,\n accountPassword: \"tf_example123\",\n accountDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ncreation = config.get(\"creation\")\nif creation is None:\n creation = \"ADB\"\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\nvswitch_id = default_get_switches.ids[0]\ncluster = alicloud.adb.DBCluster(\"cluster\",\n db_cluster_category=\"MixedStorage\",\n mode=\"flexible\",\n compute_resource=\"8Core32GB\",\n vswitch_id=vswitch_id,\n description=name)\ndefault_account = alicloud.adb.Account(\"default\",\n db_cluster_id=cluster.id,\n account_name=name,\n account_password=\"tf_example123\",\n account_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var creation = config.Get(\"creation\") ?? \"ADB\";\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var cluster = new AliCloud.Adb.DBCluster(\"cluster\", new()\n {\n DbClusterCategory = \"MixedStorage\",\n Mode = \"flexible\",\n ComputeResource = \"8Core32GB\",\n VswitchId = vswitchId,\n Description = name,\n });\n\n var defaultAccount = new AliCloud.Adb.Account(\"default\", new()\n {\n DbClusterId = cluster.Id,\n AccountName = name,\n AccountPassword = \"tf_example123\",\n AccountDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tcreation := \"ADB\"\n\t\tif param := cfg.Get(\"creation\"); param != \"\" {\n\t\t\tcreation = param\n\t\t}\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\tcluster, err := adb.NewDBCluster(ctx, \"cluster\", \u0026adb.DBClusterArgs{\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tComputeResource: pulumi.String(\"8Core32GB\"),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewAccount(ctx, \"default\", \u0026adb.AccountArgs{\n\t\t\tDbClusterId: cluster.ID(),\n\t\t\tAccountName: pulumi.String(name),\n\t\t\tAccountPassword: pulumi.String(\"tf_example123\"),\n\t\t\tAccountDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.Account;\nimport com.pulumi.alicloud.adb.AccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var creation = config.get(\"creation\").orElse(\"ADB\");\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n var cluster = new DBCluster(\"cluster\", DBClusterArgs.builder()\n .dbClusterCategory(\"MixedStorage\")\n .mode(\"flexible\")\n .computeResource(\"8Core32GB\")\n .vswitchId(vswitchId)\n .description(name)\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbClusterId(cluster.id())\n .accountName(name)\n .accountPassword(\"tf_example123\")\n .accountDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n creation:\n type: string\n default: ADB\n name:\n type: string\n default: tfexample\nresources:\n cluster:\n type: alicloud:adb:DBCluster\n properties:\n dbClusterCategory: MixedStorage\n mode: flexible\n computeResource: 8Core32GB\n vswitchId: ${vswitchId}\n description: ${name}\n defaultAccount:\n type: alicloud:adb:Account\n name: default\n properties:\n dbClusterId: ${cluster.id}\n accountName: ${name}\n accountPassword: tf_example123\n accountDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nADB account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/account:Account example am-12345:tf_account\n```\n\n",
"properties": {
"accountDescription": {
"type": "string",
@@ -97135,7 +98962,7 @@
}
},
"alicloud:adb/cluster:Cluster": {
- "description": "Provides a ADB cluster resource. An ADB cluster is an isolated database\nenvironment in the cloud. An ADB cluster can contain multiple user-created\ndatabases.\n\n\u003e **NOTE:** Deprecated since v1.121.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.121.0`. Please use new resource alicloud_adb_db_cluster.\n\n## Example Usage\n\n### Create a ADB MySQL cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"adbClusterconfig\";\nconst creation = config.get(\"creation\") || \"ADB\";\nconst _default = alicloud.getZones({\n availableResourceCreation: creation,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.adb.Cluster(\"default\", {\n dbClusterVersion: \"3.0\",\n dbClusterCategory: \"Cluster\",\n dbNodeClass: \"C8\",\n dbNodeCount: 2,\n dbNodeStorage: 200,\n payType: \"PostPaid\",\n description: name,\n vswitchId: defaultSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"adbClusterconfig\"\ncreation = config.get(\"creation\")\nif creation is None:\n creation = \"ADB\"\ndefault = alicloud.get_zones(available_resource_creation=creation)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_cluster = alicloud.adb.Cluster(\"default\",\n db_cluster_version=\"3.0\",\n db_cluster_category=\"Cluster\",\n db_node_class=\"C8\",\n db_node_count=2,\n db_node_storage=200,\n pay_type=\"PostPaid\",\n description=name,\n vswitch_id=default_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"adbClusterconfig\";\n var creation = config.Get(\"creation\") ?? \"ADB\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = creation,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.Adb.Cluster(\"default\", new()\n {\n DbClusterVersion = \"3.0\",\n DbClusterCategory = \"Cluster\",\n DbNodeClass = \"C8\",\n DbNodeCount = 2,\n DbNodeStorage = 200,\n PayType = \"PostPaid\",\n Description = name,\n VswitchId = defaultSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"adbClusterconfig\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcreation := \"ADB\"\n\t\tif param := cfg.Get(\"creation\"); param != \"\" {\n\t\t\tcreation = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(creation),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewCluster(ctx, \"default\", \u0026adb.ClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"3.0\"),\n\t\t\tDbClusterCategory: pulumi.String(\"Cluster\"),\n\t\t\tDbNodeClass: pulumi.String(\"C8\"),\n\t\t\tDbNodeCount: pulumi.Int(2),\n\t\t\tDbNodeStorage: pulumi.Int(200),\n\t\t\tPayType: pulumi.String(\"PostPaid\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.Cluster;\nimport com.pulumi.alicloud.adb.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"adbClusterconfig\");\n final var creation = config.get(\"creation\").orElse(\"ADB\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(creation)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .dbClusterVersion(\"3.0\")\n .dbClusterCategory(\"Cluster\")\n .dbNodeClass(\"C8\")\n .dbNodeCount(2)\n .dbNodeStorage(200)\n .payType(\"PostPaid\")\n .description(name)\n .vswitchId(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: adbClusterconfig\n creation:\n type: string\n default: ADB\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:adb:Cluster\n name: default\n properties:\n dbClusterVersion: '3.0'\n dbClusterCategory: Cluster\n dbNodeClass: C8\n dbNodeCount: 2\n dbNodeStorage: 200\n payType: PostPaid\n description: ${name}\n vswitchId: ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: ${creation}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nADB cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/cluster:Cluster example am-abc12345678\n```\n\n",
+ "description": "Provides a ADB cluster resource. An ADB cluster is an isolated database\nenvironment in the cloud. An ADB cluster can contain multiple user-created\ndatabases.\n\n\u003e **NOTE:** Deprecated since v1.121.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.121.0`. Please use new resource alicloud_adb_db_cluster.\n\n## Example Usage\n\n### Create a ADB MySQL cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"adbClusterconfig\";\nconst creation = config.get(\"creation\") || \"ADB\";\nconst _default = alicloud.getZones({\n availableResourceCreation: creation,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.adb.Cluster(\"default\", {\n dbClusterVersion: \"3.0\",\n dbClusterCategory: \"Cluster\",\n dbNodeClass: \"C8\",\n dbNodeCount: 2,\n dbNodeStorage: 200,\n payType: \"PostPaid\",\n description: name,\n vswitchId: defaultSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"adbClusterconfig\"\ncreation = config.get(\"creation\")\nif creation is None:\n creation = \"ADB\"\ndefault = alicloud.get_zones(available_resource_creation=creation)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_cluster = alicloud.adb.Cluster(\"default\",\n db_cluster_version=\"3.0\",\n db_cluster_category=\"Cluster\",\n db_node_class=\"C8\",\n db_node_count=2,\n db_node_storage=200,\n pay_type=\"PostPaid\",\n description=name,\n vswitch_id=default_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"adbClusterconfig\";\n var creation = config.Get(\"creation\") ?? \"ADB\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = creation,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.Adb.Cluster(\"default\", new()\n {\n DbClusterVersion = \"3.0\",\n DbClusterCategory = \"Cluster\",\n DbNodeClass = \"C8\",\n DbNodeCount = 2,\n DbNodeStorage = 200,\n PayType = \"PostPaid\",\n Description = name,\n VswitchId = defaultSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"adbClusterconfig\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcreation := \"ADB\"\n\t\tif param := cfg.Get(\"creation\"); param != \"\" {\n\t\t\tcreation = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(creation),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewCluster(ctx, \"default\", \u0026adb.ClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"3.0\"),\n\t\t\tDbClusterCategory: pulumi.String(\"Cluster\"),\n\t\t\tDbNodeClass: pulumi.String(\"C8\"),\n\t\t\tDbNodeCount: pulumi.Int(2),\n\t\t\tDbNodeStorage: pulumi.Int(200),\n\t\t\tPayType: pulumi.String(\"PostPaid\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.Cluster;\nimport com.pulumi.alicloud.adb.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"adbClusterconfig\");\n final var creation = config.get(\"creation\").orElse(\"ADB\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(creation)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .dbClusterVersion(\"3.0\")\n .dbClusterCategory(\"Cluster\")\n .dbNodeClass(\"C8\")\n .dbNodeCount(2)\n .dbNodeStorage(200)\n .payType(\"PostPaid\")\n .description(name)\n .vswitchId(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: adbClusterconfig\n creation:\n type: string\n default: ADB\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:adb:Cluster\n name: default\n properties:\n dbClusterVersion: '3.0'\n dbClusterCategory: Cluster\n dbNodeClass: C8\n dbNodeCount: 2\n dbNodeStorage: 200\n payType: PostPaid\n description: ${name}\n vswitchId: ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: ${creation}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nADB cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/cluster:Cluster example am-abc12345678\n```\n\n",
"properties": {
"autoRenewPeriod": {
"type": "integer",
@@ -97552,7 +99379,7 @@
}
},
"alicloud:adb/connection:Connection": {
- "description": "Provides an ADB connection resource to allocate an Internet connection string for ADB cluster.\n\n\u003e **NOTE:** Each ADB instance will allocate a intranet connnection string automatically and its prifix is ADB instance ID.\n To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.\n\n\u003e **NOTE:** Available since v1.81.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst cluster = new alicloud.adb.DBCluster(\"cluster\", {\n dbClusterCategory: \"MixedStorage\",\n mode: \"flexible\",\n computeResource: \"8Core32GB\",\n vswitchId: vswitchId,\n description: name,\n});\nconst defaultConnection = new alicloud.adb.Connection(\"default\", {\n dbClusterId: cluster.id,\n connectionPrefix: \"example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\nvswitch_id = default_get_switches.ids[0]\ncluster = alicloud.adb.DBCluster(\"cluster\",\n db_cluster_category=\"MixedStorage\",\n mode=\"flexible\",\n compute_resource=\"8Core32GB\",\n vswitch_id=vswitch_id,\n description=name)\ndefault_connection = alicloud.adb.Connection(\"default\",\n db_cluster_id=cluster.id,\n connection_prefix=\"example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var cluster = new AliCloud.Adb.DBCluster(\"cluster\", new()\n {\n DbClusterCategory = \"MixedStorage\",\n Mode = \"flexible\",\n ComputeResource = \"8Core32GB\",\n VswitchId = vswitchId,\n Description = name,\n });\n\n var defaultConnection = new AliCloud.Adb.Connection(\"default\", new()\n {\n DbClusterId = cluster.Id,\n ConnectionPrefix = \"example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\tcluster, err := adb.NewDBCluster(ctx, \"cluster\", \u0026adb.DBClusterArgs{\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tComputeResource: pulumi.String(\"8Core32GB\"),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewConnection(ctx, \"default\", \u0026adb.ConnectionArgs{\n\t\t\tDbClusterId: cluster.ID(),\n\t\t\tConnectionPrefix: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.Connection;\nimport com.pulumi.alicloud.adb.ConnectionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n var cluster = new DBCluster(\"cluster\", DBClusterArgs.builder()\n .dbClusterCategory(\"MixedStorage\")\n .mode(\"flexible\")\n .computeResource(\"8Core32GB\")\n .vswitchId(vswitchId)\n .description(name)\n .build());\n\n var defaultConnection = new Connection(\"defaultConnection\", ConnectionArgs.builder()\n .dbClusterId(cluster.id())\n .connectionPrefix(\"example\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n cluster:\n type: alicloud:adb:DBCluster\n properties:\n dbClusterCategory: MixedStorage\n mode: flexible\n computeResource: 8Core32GB\n vswitchId: ${vswitchId}\n description: ${name}\n defaultConnection:\n type: alicloud:adb:Connection\n name: default\n properties:\n dbClusterId: ${cluster.id}\n connectionPrefix: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nADB connection can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/connection:Connection example am-12345678\n```\n\n",
+ "description": "Provides an ADB connection resource to allocate an Internet connection string for ADB cluster.\n\n\u003e **NOTE:** Each ADB instance will allocate a intranet connnection string automatically and its prifix is ADB instance ID.\n To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.\n\n\u003e **NOTE:** Available since v1.81.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst cluster = new alicloud.adb.DBCluster(\"cluster\", {\n dbClusterCategory: \"MixedStorage\",\n mode: \"flexible\",\n computeResource: \"8Core32GB\",\n vswitchId: vswitchId,\n description: name,\n});\nconst defaultConnection = new alicloud.adb.Connection(\"default\", {\n dbClusterId: cluster.id,\n connectionPrefix: \"example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\nvswitch_id = default_get_switches.ids[0]\ncluster = alicloud.adb.DBCluster(\"cluster\",\n db_cluster_category=\"MixedStorage\",\n mode=\"flexible\",\n compute_resource=\"8Core32GB\",\n vswitch_id=vswitch_id,\n description=name)\ndefault_connection = alicloud.adb.Connection(\"default\",\n db_cluster_id=cluster.id,\n connection_prefix=\"example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var cluster = new AliCloud.Adb.DBCluster(\"cluster\", new()\n {\n DbClusterCategory = \"MixedStorage\",\n Mode = \"flexible\",\n ComputeResource = \"8Core32GB\",\n VswitchId = vswitchId,\n Description = name,\n });\n\n var defaultConnection = new AliCloud.Adb.Connection(\"default\", new()\n {\n DbClusterId = cluster.Id,\n ConnectionPrefix = \"example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\tcluster, err := adb.NewDBCluster(ctx, \"cluster\", \u0026adb.DBClusterArgs{\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tComputeResource: pulumi.String(\"8Core32GB\"),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewConnection(ctx, \"default\", \u0026adb.ConnectionArgs{\n\t\t\tDbClusterId: cluster.ID(),\n\t\t\tConnectionPrefix: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.Connection;\nimport com.pulumi.alicloud.adb.ConnectionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n var cluster = new DBCluster(\"cluster\", DBClusterArgs.builder()\n .dbClusterCategory(\"MixedStorage\")\n .mode(\"flexible\")\n .computeResource(\"8Core32GB\")\n .vswitchId(vswitchId)\n .description(name)\n .build());\n\n var defaultConnection = new Connection(\"defaultConnection\", ConnectionArgs.builder()\n .dbClusterId(cluster.id())\n .connectionPrefix(\"example\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n cluster:\n type: alicloud:adb:DBCluster\n properties:\n dbClusterCategory: MixedStorage\n mode: flexible\n computeResource: 8Core32GB\n vswitchId: ${vswitchId}\n description: ${name}\n defaultConnection:\n type: alicloud:adb:Connection\n name: default\n properties:\n dbClusterId: ${cluster.id}\n connectionPrefix: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nADB connection can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/connection:Connection example am-12345678\n```\n\n",
"properties": {
"connectionPrefix": {
"type": "string",
@@ -98088,7 +99915,7 @@
}
},
"alicloud:adb/dBClusterLakeVersion:DBClusterLakeVersion": {
- "description": "Provides a AnalyticDB for MySQL (ADB) DB Cluster Lake Version resource.\n\nFor information about AnalyticDB for MySQL (ADB) DB Cluster Lake Version and how to use it, see [What is DB Cluster Lake Version](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-createdbcluster).\n\n\u003e **NOTE:** Available since v1.190.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst defaultDBClusterLakeVersion = new alicloud.adb.DBClusterLakeVersion(\"default\", {\n dbClusterVersion: \"5.0\",\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n computeResource: \"16ACU\",\n storageResource: \"0ACU\",\n paymentType: \"PayAsYouGo\",\n enableDefaultResourceGroup: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\ndefault_db_cluster_lake_version = alicloud.adb.DBClusterLakeVersion(\"default\",\n db_cluster_version=\"5.0\",\n vpc_id=default_get_networks.ids[0],\n vswitch_id=default_get_switches.ids[0],\n zone_id=default.ids[0],\n compute_resource=\"16ACU\",\n storage_resource=\"0ACU\",\n payment_type=\"PayAsYouGo\",\n enable_default_resource_group=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var defaultDBClusterLakeVersion = new AliCloud.Adb.DBClusterLakeVersion(\"default\", new()\n {\n DbClusterVersion = \"5.0\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n ComputeResource = \"16ACU\",\n StorageResource = \"0ACU\",\n PaymentType = \"PayAsYouGo\",\n EnableDefaultResourceGroup = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewDBClusterLakeVersion(ctx, \"default\", \u0026adb.DBClusterLakeVersionArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"5.0\"),\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tComputeResource: pulumi.String(\"16ACU\"),\n\t\t\tStorageResource: pulumi.String(\"0ACU\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tEnableDefaultResourceGroup: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersion;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultDBClusterLakeVersion = new DBClusterLakeVersion(\"defaultDBClusterLakeVersion\", DBClusterLakeVersionArgs.builder()\n .dbClusterVersion(\"5.0\")\n .vpcId(defaultGetNetworks.ids()[0])\n .vswitchId(defaultGetSwitches.ids()[0])\n .zoneId(default_.ids()[0])\n .computeResource(\"16ACU\")\n .storageResource(\"0ACU\")\n .paymentType(\"PayAsYouGo\")\n .enableDefaultResourceGroup(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultDBClusterLakeVersion:\n type: alicloud:adb:DBClusterLakeVersion\n name: default\n properties:\n dbClusterVersion: '5.0'\n vpcId: ${defaultGetNetworks.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneId: ${default.ids[0]}\n computeResource: 16ACU\n storageResource: 0ACU\n paymentType: PayAsYouGo\n enableDefaultResourceGroup: false\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAnalyticDB for MySQL (ADB) DB Cluster Lake Version can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/dBClusterLakeVersion:DBClusterLakeVersion example \u003cid\u003e\n```\n\n",
+ "description": "Provides a AnalyticDB for MySQL (ADB) DB Cluster Lake Version resource.\n\nFor information about AnalyticDB for MySQL (ADB) DB Cluster Lake Version and how to use it, see [What is DB Cluster Lake Version](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-createdbcluster).\n\n\u003e **NOTE:** Available since v1.190.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.adb.getZones({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.ids?.[0],\n}));\nconst defaultDBClusterLakeVersion = new alicloud.adb.DBClusterLakeVersion(\"default\", {\n dbClusterVersion: \"5.0\",\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n computeResource: \"16ACU\",\n storageResource: \"0ACU\",\n paymentType: \"PayAsYouGo\",\n enableDefaultResourceGroup: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.adb.get_zones()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default.ids[0])\ndefault_db_cluster_lake_version = alicloud.adb.DBClusterLakeVersion(\"default\",\n db_cluster_version=\"5.0\",\n vpc_id=default_get_networks.ids[0],\n vswitch_id=default_get_switches.ids[0],\n zone_id=default.ids[0],\n compute_resource=\"16ACU\",\n storage_resource=\"0ACU\",\n payment_type=\"PayAsYouGo\",\n enable_default_resource_group=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n });\n\n var defaultDBClusterLakeVersion = new AliCloud.Adb.DBClusterLakeVersion(\"default\", new()\n {\n DbClusterVersion = \"5.0\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n ComputeResource = \"16ACU\",\n StorageResource = \"0ACU\",\n PaymentType = \"PayAsYouGo\",\n EnableDefaultResourceGroup = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewDBClusterLakeVersion(ctx, \"default\", \u0026adb.DBClusterLakeVersionArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"5.0\"),\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tComputeResource: pulumi.String(\"16ACU\"),\n\t\t\tStorageResource: pulumi.String(\"0ACU\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tEnableDefaultResourceGroup: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersion;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultDBClusterLakeVersion = new DBClusterLakeVersion(\"defaultDBClusterLakeVersion\", DBClusterLakeVersionArgs.builder()\n .dbClusterVersion(\"5.0\")\n .vpcId(defaultGetNetworks.ids()[0])\n .vswitchId(defaultGetSwitches.ids()[0])\n .zoneId(default_.ids()[0])\n .computeResource(\"16ACU\")\n .storageResource(\"0ACU\")\n .paymentType(\"PayAsYouGo\")\n .enableDefaultResourceGroup(false)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultDBClusterLakeVersion:\n type: alicloud:adb:DBClusterLakeVersion\n name: default\n properties:\n dbClusterVersion: '5.0'\n vpcId: ${defaultGetNetworks.ids[0]}\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneId: ${default.ids[0]}\n computeResource: 16ACU\n storageResource: 0ACU\n paymentType: PayAsYouGo\n enableDefaultResourceGroup: false\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAnalyticDB for MySQL (ADB) DB Cluster Lake Version can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/dBClusterLakeVersion:DBClusterLakeVersion example \u003cid\u003e\n```\n\n",
"properties": {
"backupSetId": {
"type": "string",
@@ -98545,7 +100372,7 @@
}
},
"alicloud:adb/lakeAccount:LakeAccount": {
- "description": "Provides a ADB Lake Account resource. Account of the DBClusterLakeVesion.\n\nFor information about ADB Lake Account and how to use it, see [What is Lake Account](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-createaccount).\nFor information about ADB Lake Account Privileges and how to use it, see [What are Lake Account Privileges](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-modifyaccountprivileges/).\n\n\u003e **NOTE:** Available since v1.214.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst VPCID = new alicloud.vpc.Network(\"VPCID\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst VSWITCHID = new alicloud.vpc.Switch(\"VSWITCHID\", {\n vpcId: VPCID.id,\n zoneId: \"cn-hangzhou-k\",\n vswitchName: name,\n cidrBlock: \"172.16.0.0/24\",\n});\nconst createInstance = new alicloud.adb.DBClusterLakeVersion(\"CreateInstance\", {\n storageResource: \"0ACU\",\n zoneId: \"cn-hangzhou-k\",\n vpcId: VPCID.id,\n vswitchId: VSWITCHID.id,\n dbClusterDescription: name,\n computeResource: \"16ACU\",\n dbClusterVersion: \"5.0\",\n paymentType: \"PayAsYouGo\",\n securityIps: \"127.0.0.1\",\n});\nconst defaultLakeAccount = new alicloud.adb.LakeAccount(\"default\", {\n dbClusterId: createInstance.id,\n accountType: \"Super\",\n accountName: \"tfnormal\",\n accountPassword: \"normal@2023\",\n accountPrivileges: [\n {\n privilegeType: \"Database\",\n privilegeObject: {\n database: \"MYSQL\",\n },\n privileges: [\n \"select\",\n \"update\",\n ],\n },\n {\n privilegeType: \"Table\",\n privilegeObject: {\n database: \"INFORMATION_SCHEMA\",\n table: \"ENGINES\",\n },\n privileges: [\"update\"],\n },\n {\n privilegeType: \"Column\",\n privilegeObject: {\n table: \"COLUMNS\",\n column: \"PRIVILEGES\",\n database: \"INFORMATION_SCHEMA\",\n },\n privileges: [\"update\"],\n },\n ],\n accountDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nvpcid = alicloud.vpc.Network(\"VPCID\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\nvswitchid = alicloud.vpc.Switch(\"VSWITCHID\",\n vpc_id=vpcid.id,\n zone_id=\"cn-hangzhou-k\",\n vswitch_name=name,\n cidr_block=\"172.16.0.0/24\")\ncreate_instance = alicloud.adb.DBClusterLakeVersion(\"CreateInstance\",\n storage_resource=\"0ACU\",\n zone_id=\"cn-hangzhou-k\",\n vpc_id=vpcid.id,\n vswitch_id=vswitchid.id,\n db_cluster_description=name,\n compute_resource=\"16ACU\",\n db_cluster_version=\"5.0\",\n payment_type=\"PayAsYouGo\",\n security_ips=\"127.0.0.1\")\ndefault_lake_account = alicloud.adb.LakeAccount(\"default\",\n db_cluster_id=create_instance.id,\n account_type=\"Super\",\n account_name=\"tfnormal\",\n account_password=\"normal@2023\",\n account_privileges=[\n {\n \"privilege_type\": \"Database\",\n \"privilege_object\": {\n \"database\": \"MYSQL\",\n },\n \"privileges\": [\n \"select\",\n \"update\",\n ],\n },\n {\n \"privilege_type\": \"Table\",\n \"privilege_object\": {\n \"database\": \"INFORMATION_SCHEMA\",\n \"table\": \"ENGINES\",\n },\n \"privileges\": [\"update\"],\n },\n {\n \"privilege_type\": \"Column\",\n \"privilege_object\": {\n \"table\": \"COLUMNS\",\n \"column\": \"PRIVILEGES\",\n \"database\": \"INFORMATION_SCHEMA\",\n },\n \"privileges\": [\"update\"],\n },\n ],\n account_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var VPCID = new AliCloud.Vpc.Network(\"VPCID\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var VSWITCHID = new AliCloud.Vpc.Switch(\"VSWITCHID\", new()\n {\n VpcId = VPCID.Id,\n ZoneId = \"cn-hangzhou-k\",\n VswitchName = name,\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var createInstance = new AliCloud.Adb.DBClusterLakeVersion(\"CreateInstance\", new()\n {\n StorageResource = \"0ACU\",\n ZoneId = \"cn-hangzhou-k\",\n VpcId = VPCID.Id,\n VswitchId = VSWITCHID.Id,\n DbClusterDescription = name,\n ComputeResource = \"16ACU\",\n DbClusterVersion = \"5.0\",\n PaymentType = \"PayAsYouGo\",\n SecurityIps = \"127.0.0.1\",\n });\n\n var defaultLakeAccount = new AliCloud.Adb.LakeAccount(\"default\", new()\n {\n DbClusterId = createInstance.Id,\n AccountType = \"Super\",\n AccountName = \"tfnormal\",\n AccountPassword = \"normal@2023\",\n AccountPrivileges = new[]\n {\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Database\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Database = \"MYSQL\",\n },\n Privileges = new[]\n {\n \"select\",\n \"update\",\n },\n },\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Table\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Database = \"INFORMATION_SCHEMA\",\n Table = \"ENGINES\",\n },\n Privileges = new[]\n {\n \"update\",\n },\n },\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Column\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Table = \"COLUMNS\",\n Column = \"PRIVILEGES\",\n Database = \"INFORMATION_SCHEMA\",\n },\n Privileges = new[]\n {\n \"update\",\n },\n },\n },\n AccountDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tVPCID, err := vpc.NewNetwork(ctx, \"VPCID\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tVSWITCHID, err := vpc.NewSwitch(ctx, \"VSWITCHID\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: VPCID.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateInstance, err := adb.NewDBClusterLakeVersion(ctx, \"CreateInstance\", \u0026adb.DBClusterLakeVersionArgs{\n\t\t\tStorageResource: pulumi.String(\"0ACU\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVpcId: VPCID.ID(),\n\t\t\tVswitchId: VSWITCHID.ID(),\n\t\t\tDbClusterDescription: pulumi.String(name),\n\t\t\tComputeResource: pulumi.String(\"16ACU\"),\n\t\t\tDbClusterVersion: pulumi.String(\"5.0\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSecurityIps: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewLakeAccount(ctx, \"default\", \u0026adb.LakeAccountArgs{\n\t\t\tDbClusterId: createInstance.ID(),\n\t\t\tAccountType: pulumi.String(\"Super\"),\n\t\t\tAccountName: pulumi.String(\"tfnormal\"),\n\t\t\tAccountPassword: pulumi.String(\"normal@2023\"),\n\t\t\tAccountPrivileges: adb.LakeAccountAccountPrivilegeArray{\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Database\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tDatabase: pulumi.String(\"MYSQL\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"select\"),\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Table\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tDatabase: pulumi.String(\"INFORMATION_SCHEMA\"),\n\t\t\t\t\t\tTable: pulumi.String(\"ENGINES\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Column\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tTable: pulumi.String(\"COLUMNS\"),\n\t\t\t\t\t\tColumn: pulumi.String(\"PRIVILEGES\"),\n\t\t\t\t\t\tDatabase: pulumi.String(\"INFORMATION_SCHEMA\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAccountDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersion;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersionArgs;\nimport com.pulumi.alicloud.adb.LakeAccount;\nimport com.pulumi.alicloud.adb.LakeAccountArgs;\nimport com.pulumi.alicloud.adb.inputs.LakeAccountAccountPrivilegeArgs;\nimport com.pulumi.alicloud.adb.inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var vPCID = new Network(\"VPCID\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var vSWITCHID = new Switch(\"VSWITCHID\", SwitchArgs.builder()\n .vpcId(VPCID.id())\n .zoneId(\"cn-hangzhou-k\")\n .vswitchName(name)\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var createInstance = new DBClusterLakeVersion(\"createInstance\", DBClusterLakeVersionArgs.builder()\n .storageResource(\"0ACU\")\n .zoneId(\"cn-hangzhou-k\")\n .vpcId(VPCID.id())\n .vswitchId(VSWITCHID.id())\n .dbClusterDescription(name)\n .computeResource(\"16ACU\")\n .dbClusterVersion(\"5.0\")\n .paymentType(\"PayAsYouGo\")\n .securityIps(\"127.0.0.1\")\n .build());\n\n var defaultLakeAccount = new LakeAccount(\"defaultLakeAccount\", LakeAccountArgs.builder()\n .dbClusterId(createInstance.id())\n .accountType(\"Super\")\n .accountName(\"tfnormal\")\n .accountPassword(\"normal@2023\")\n .accountPrivileges( \n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Database\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .database(\"MYSQL\")\n .build())\n .privileges( \n \"select\",\n \"update\")\n .build(),\n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Table\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .database(\"INFORMATION_SCHEMA\")\n .table(\"ENGINES\")\n .build())\n .privileges(\"update\")\n .build(),\n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Column\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .table(\"COLUMNS\")\n .column(\"PRIVILEGES\")\n .database(\"INFORMATION_SCHEMA\")\n .build())\n .privileges(\"update\")\n .build())\n .accountDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n VPCID:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n VSWITCHID:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${VPCID.id}\n zoneId: cn-hangzhou-k\n vswitchName: ${name}\n cidrBlock: 172.16.0.0/24\n createInstance:\n type: alicloud:adb:DBClusterLakeVersion\n name: CreateInstance\n properties:\n storageResource: 0ACU\n zoneId: cn-hangzhou-k\n vpcId: ${VPCID.id}\n vswitchId: ${VSWITCHID.id}\n dbClusterDescription: ${name}\n computeResource: 16ACU\n dbClusterVersion: '5.0'\n paymentType: PayAsYouGo\n securityIps: 127.0.0.1\n defaultLakeAccount:\n type: alicloud:adb:LakeAccount\n name: default\n properties:\n dbClusterId: ${createInstance.id}\n accountType: Super\n accountName: tfnormal\n accountPassword: normal@2023\n accountPrivileges:\n - privilegeType: Database\n privilegeObject:\n database: MYSQL\n privileges:\n - select\n - update\n - privilegeType: Table\n privilegeObject:\n database: INFORMATION_SCHEMA\n table: ENGINES\n privileges:\n - update\n - privilegeType: Column\n privilegeObject:\n table: COLUMNS\n column: PRIVILEGES\n database: INFORMATION_SCHEMA\n privileges:\n - update\n accountDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nADB Lake Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/lakeAccount:LakeAccount example \u003cdb_cluster_id\u003e:\u003caccount_name\u003e\n```\n\n",
+ "description": "Provides a ADB Lake Account resource. Account of the DBClusterLakeVesion.\n\nFor information about ADB Lake Account and how to use it, see [What is Lake Account](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-createaccount).\nFor information about ADB Lake Account Privileges and how to use it, see [What are Lake Account Privileges](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/developer-reference/api-adb-2021-12-01-modifyaccountprivileges/).\n\n\u003e **NOTE:** Available since v1.214.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst VPCID = new alicloud.vpc.Network(\"VPCID\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst VSWITCHID = new alicloud.vpc.Switch(\"VSWITCHID\", {\n vpcId: VPCID.id,\n zoneId: \"cn-hangzhou-k\",\n vswitchName: name,\n cidrBlock: \"172.16.0.0/24\",\n});\nconst createInstance = new alicloud.adb.DBClusterLakeVersion(\"CreateInstance\", {\n storageResource: \"0ACU\",\n zoneId: \"cn-hangzhou-k\",\n vpcId: VPCID.id,\n vswitchId: VSWITCHID.id,\n dbClusterDescription: name,\n computeResource: \"16ACU\",\n dbClusterVersion: \"5.0\",\n paymentType: \"PayAsYouGo\",\n securityIps: \"127.0.0.1\",\n});\nconst defaultLakeAccount = new alicloud.adb.LakeAccount(\"default\", {\n dbClusterId: createInstance.id,\n accountType: \"Super\",\n accountName: \"tfnormal\",\n accountPassword: \"normal@2023\",\n accountPrivileges: [\n {\n privilegeType: \"Database\",\n privilegeObject: {\n database: \"MYSQL\",\n },\n privileges: [\n \"select\",\n \"update\",\n ],\n },\n {\n privilegeType: \"Table\",\n privilegeObject: {\n database: \"INFORMATION_SCHEMA\",\n table: \"ENGINES\",\n },\n privileges: [\"update\"],\n },\n {\n privilegeType: \"Column\",\n privilegeObject: {\n table: \"COLUMNS\",\n column: \"PRIVILEGES\",\n database: \"INFORMATION_SCHEMA\",\n },\n privileges: [\"update\"],\n },\n ],\n accountDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nvpcid = alicloud.vpc.Network(\"VPCID\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\nvswitchid = alicloud.vpc.Switch(\"VSWITCHID\",\n vpc_id=vpcid.id,\n zone_id=\"cn-hangzhou-k\",\n vswitch_name=name,\n cidr_block=\"172.16.0.0/24\")\ncreate_instance = alicloud.adb.DBClusterLakeVersion(\"CreateInstance\",\n storage_resource=\"0ACU\",\n zone_id=\"cn-hangzhou-k\",\n vpc_id=vpcid.id,\n vswitch_id=vswitchid.id,\n db_cluster_description=name,\n compute_resource=\"16ACU\",\n db_cluster_version=\"5.0\",\n payment_type=\"PayAsYouGo\",\n security_ips=\"127.0.0.1\")\ndefault_lake_account = alicloud.adb.LakeAccount(\"default\",\n db_cluster_id=create_instance.id,\n account_type=\"Super\",\n account_name=\"tfnormal\",\n account_password=\"normal@2023\",\n account_privileges=[\n {\n \"privilege_type\": \"Database\",\n \"privilege_object\": {\n \"database\": \"MYSQL\",\n },\n \"privileges\": [\n \"select\",\n \"update\",\n ],\n },\n {\n \"privilege_type\": \"Table\",\n \"privilege_object\": {\n \"database\": \"INFORMATION_SCHEMA\",\n \"table\": \"ENGINES\",\n },\n \"privileges\": [\"update\"],\n },\n {\n \"privilege_type\": \"Column\",\n \"privilege_object\": {\n \"table\": \"COLUMNS\",\n \"column\": \"PRIVILEGES\",\n \"database\": \"INFORMATION_SCHEMA\",\n },\n \"privileges\": [\"update\"],\n },\n ],\n account_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var VPCID = new AliCloud.Vpc.Network(\"VPCID\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var VSWITCHID = new AliCloud.Vpc.Switch(\"VSWITCHID\", new()\n {\n VpcId = VPCID.Id,\n ZoneId = \"cn-hangzhou-k\",\n VswitchName = name,\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var createInstance = new AliCloud.Adb.DBClusterLakeVersion(\"CreateInstance\", new()\n {\n StorageResource = \"0ACU\",\n ZoneId = \"cn-hangzhou-k\",\n VpcId = VPCID.Id,\n VswitchId = VSWITCHID.Id,\n DbClusterDescription = name,\n ComputeResource = \"16ACU\",\n DbClusterVersion = \"5.0\",\n PaymentType = \"PayAsYouGo\",\n SecurityIps = \"127.0.0.1\",\n });\n\n var defaultLakeAccount = new AliCloud.Adb.LakeAccount(\"default\", new()\n {\n DbClusterId = createInstance.Id,\n AccountType = \"Super\",\n AccountName = \"tfnormal\",\n AccountPassword = \"normal@2023\",\n AccountPrivileges = new[]\n {\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Database\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Database = \"MYSQL\",\n },\n Privileges = new[]\n {\n \"select\",\n \"update\",\n },\n },\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Table\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Database = \"INFORMATION_SCHEMA\",\n Table = \"ENGINES\",\n },\n Privileges = new[]\n {\n \"update\",\n },\n },\n new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegeArgs\n {\n PrivilegeType = \"Column\",\n PrivilegeObject = new AliCloud.Adb.Inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs\n {\n Table = \"COLUMNS\",\n Column = \"PRIVILEGES\",\n Database = \"INFORMATION_SCHEMA\",\n },\n Privileges = new[]\n {\n \"update\",\n },\n },\n },\n AccountDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tVPCID, err := vpc.NewNetwork(ctx, \"VPCID\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tVSWITCHID, err := vpc.NewSwitch(ctx, \"VSWITCHID\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: VPCID.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateInstance, err := adb.NewDBClusterLakeVersion(ctx, \"CreateInstance\", \u0026adb.DBClusterLakeVersionArgs{\n\t\t\tStorageResource: pulumi.String(\"0ACU\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVpcId: VPCID.ID(),\n\t\t\tVswitchId: VSWITCHID.ID(),\n\t\t\tDbClusterDescription: pulumi.String(name),\n\t\t\tComputeResource: pulumi.String(\"16ACU\"),\n\t\t\tDbClusterVersion: pulumi.String(\"5.0\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSecurityIps: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewLakeAccount(ctx, \"default\", \u0026adb.LakeAccountArgs{\n\t\t\tDbClusterId: createInstance.ID(),\n\t\t\tAccountType: pulumi.String(\"Super\"),\n\t\t\tAccountName: pulumi.String(\"tfnormal\"),\n\t\t\tAccountPassword: pulumi.String(\"normal@2023\"),\n\t\t\tAccountPrivileges: adb.LakeAccountAccountPrivilegeArray{\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Database\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tDatabase: pulumi.String(\"MYSQL\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"select\"),\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Table\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tDatabase: pulumi.String(\"INFORMATION_SCHEMA\"),\n\t\t\t\t\t\tTable: pulumi.String(\"ENGINES\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026adb.LakeAccountAccountPrivilegeArgs{\n\t\t\t\t\tPrivilegeType: pulumi.String(\"Column\"),\n\t\t\t\t\tPrivilegeObject: \u0026adb.LakeAccountAccountPrivilegePrivilegeObjectArgs{\n\t\t\t\t\t\tTable: pulumi.String(\"COLUMNS\"),\n\t\t\t\t\t\tColumn: pulumi.String(\"PRIVILEGES\"),\n\t\t\t\t\t\tDatabase: pulumi.String(\"INFORMATION_SCHEMA\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrivileges: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAccountDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersion;\nimport com.pulumi.alicloud.adb.DBClusterLakeVersionArgs;\nimport com.pulumi.alicloud.adb.LakeAccount;\nimport com.pulumi.alicloud.adb.LakeAccountArgs;\nimport com.pulumi.alicloud.adb.inputs.LakeAccountAccountPrivilegeArgs;\nimport com.pulumi.alicloud.adb.inputs.LakeAccountAccountPrivilegePrivilegeObjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var vPCID = new Network(\"VPCID\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var vSWITCHID = new Switch(\"VSWITCHID\", SwitchArgs.builder()\n .vpcId(VPCID.id())\n .zoneId(\"cn-hangzhou-k\")\n .vswitchName(name)\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var createInstance = new DBClusterLakeVersion(\"createInstance\", DBClusterLakeVersionArgs.builder()\n .storageResource(\"0ACU\")\n .zoneId(\"cn-hangzhou-k\")\n .vpcId(VPCID.id())\n .vswitchId(VSWITCHID.id())\n .dbClusterDescription(name)\n .computeResource(\"16ACU\")\n .dbClusterVersion(\"5.0\")\n .paymentType(\"PayAsYouGo\")\n .securityIps(\"127.0.0.1\")\n .build());\n\n var defaultLakeAccount = new LakeAccount(\"defaultLakeAccount\", LakeAccountArgs.builder()\n .dbClusterId(createInstance.id())\n .accountType(\"Super\")\n .accountName(\"tfnormal\")\n .accountPassword(\"normal@2023\")\n .accountPrivileges( \n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Database\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .database(\"MYSQL\")\n .build())\n .privileges( \n \"select\",\n \"update\")\n .build(),\n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Table\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .database(\"INFORMATION_SCHEMA\")\n .table(\"ENGINES\")\n .build())\n .privileges(\"update\")\n .build(),\n LakeAccountAccountPrivilegeArgs.builder()\n .privilegeType(\"Column\")\n .privilegeObject(LakeAccountAccountPrivilegePrivilegeObjectArgs.builder()\n .table(\"COLUMNS\")\n .column(\"PRIVILEGES\")\n .database(\"INFORMATION_SCHEMA\")\n .build())\n .privileges(\"update\")\n .build())\n .accountDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n VPCID:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n VSWITCHID:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${VPCID.id}\n zoneId: cn-hangzhou-k\n vswitchName: ${name}\n cidrBlock: 172.16.0.0/24\n createInstance:\n type: alicloud:adb:DBClusterLakeVersion\n name: CreateInstance\n properties:\n storageResource: 0ACU\n zoneId: cn-hangzhou-k\n vpcId: ${VPCID.id}\n vswitchId: ${VSWITCHID.id}\n dbClusterDescription: ${name}\n computeResource: 16ACU\n dbClusterVersion: '5.0'\n paymentType: PayAsYouGo\n securityIps: 127.0.0.1\n defaultLakeAccount:\n type: alicloud:adb:LakeAccount\n name: default\n properties:\n dbClusterId: ${createInstance.id}\n accountType: Super\n accountName: tfnormal\n accountPassword: normal@2023\n accountPrivileges:\n - privilegeType: Database\n privilegeObject:\n database: MYSQL\n privileges:\n - select\n - update\n - privilegeType: Table\n privilegeObject:\n database: INFORMATION_SCHEMA\n table: ENGINES\n privileges:\n - update\n - privilegeType: Column\n privilegeObject:\n table: COLUMNS\n column: PRIVILEGES\n database: INFORMATION_SCHEMA\n privileges:\n - update\n accountDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nADB Lake Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/lakeAccount:LakeAccount example \u003cdb_cluster_id\u003e:\u003caccount_name\u003e\n```\n\n",
"properties": {
"accountDescription": {
"type": "string",
@@ -98668,7 +100495,7 @@
}
},
"alicloud:adb/resourceGroup:ResourceGroup": {
- "description": "Provides a AnalyticDB for MySQL (ADB) Resource Group resource.\n\nFor information about AnalyticDB for MySQL (ADB) Resource Group and how to use it, see [What is Resource Group](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/latest/api-doc-adb-2019-03-15-api-doc-createdbresourcegroup).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultDBCluster = new alicloud.adb.DBCluster(\"default\", {\n computeResource: \"48Core192GB\",\n dbClusterCategory: \"MixedStorage\",\n dbClusterVersion: \"3.0\",\n dbNodeClass: \"E32\",\n dbNodeStorage: 100,\n description: name,\n elasticIoResource: 1,\n maintainTime: \"04:00Z-05:00Z\",\n mode: \"flexible\",\n paymentType: \"PayAsYouGo\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n securityIps: [\n \"10.168.1.12\",\n \"10.168.1.11\",\n ],\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultResourceGroup = new alicloud.adb.ResourceGroup(\"default\", {\n groupName: \"TF_EXAMPLE\",\n groupType: \"batch\",\n nodeNum: 0,\n dbClusterId: defaultDBCluster.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.adb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_db_cluster = alicloud.adb.DBCluster(\"default\",\n compute_resource=\"48Core192GB\",\n db_cluster_category=\"MixedStorage\",\n db_cluster_version=\"3.0\",\n db_node_class=\"E32\",\n db_node_storage=100,\n description=name,\n elastic_io_resource=1,\n maintain_time=\"04:00Z-05:00Z\",\n mode=\"flexible\",\n payment_type=\"PayAsYouGo\",\n resource_group_id=default_get_resource_groups.ids[0],\n security_ips=[\n \"10.168.1.12\",\n \"10.168.1.11\",\n ],\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n zone_id=default.zones[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_resource_group = alicloud.adb.ResourceGroup(\"default\",\n group_name=\"TF_EXAMPLE\",\n group_type=\"batch\",\n node_num=0,\n db_cluster_id=default_db_cluster.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultDBCluster = new AliCloud.Adb.DBCluster(\"default\", new()\n {\n ComputeResource = \"48Core192GB\",\n DbClusterCategory = \"MixedStorage\",\n DbClusterVersion = \"3.0\",\n DbNodeClass = \"E32\",\n DbNodeStorage = 100,\n Description = name,\n ElasticIoResource = 1,\n MaintainTime = \"04:00Z-05:00Z\",\n Mode = \"flexible\",\n PaymentType = \"PayAsYouGo\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n SecurityIps = new[]\n {\n \"10.168.1.12\",\n \"10.168.1.11\",\n },\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultResourceGroup = new AliCloud.Adb.ResourceGroup(\"default\", new()\n {\n GroupName = \"TF_EXAMPLE\",\n GroupType = \"batch\",\n NodeNum = 0,\n DbClusterId = defaultDBCluster.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDBCluster, err := adb.NewDBCluster(ctx, \"default\", \u0026adb.DBClusterArgs{\n\t\t\tComputeResource: pulumi.String(\"48Core192GB\"),\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tDbClusterVersion: pulumi.String(\"3.0\"),\n\t\t\tDbNodeClass: pulumi.String(\"E32\"),\n\t\t\tDbNodeStorage: pulumi.Int(100),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tElasticIoResource: pulumi.Int(1),\n\t\t\tMaintainTime: pulumi.String(\"04:00Z-05:00Z\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.168.1.12\"),\n\t\t\t\tpulumi.String(\"10.168.1.11\"),\n\t\t\t},\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewResourceGroup(ctx, \"default\", \u0026adb.ResourceGroupArgs{\n\t\t\tGroupName: pulumi.String(\"TF_EXAMPLE\"),\n\t\t\tGroupType: pulumi.String(\"batch\"),\n\t\t\tNodeNum: pulumi.Int(0),\n\t\t\tDbClusterId: defaultDBCluster.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.ResourceGroup;\nimport com.pulumi.alicloud.adb.ResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultDBCluster = new DBCluster(\"defaultDBCluster\", DBClusterArgs.builder()\n .computeResource(\"48Core192GB\")\n .dbClusterCategory(\"MixedStorage\")\n .dbClusterVersion(\"3.0\")\n .dbNodeClass(\"E32\")\n .dbNodeStorage(100)\n .description(name)\n .elasticIoResource(1)\n .maintainTime(\"04:00Z-05:00Z\")\n .mode(\"flexible\")\n .paymentType(\"PayAsYouGo\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .securityIps( \n \"10.168.1.12\",\n \"10.168.1.11\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .zoneId(default_.zones()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultResourceGroup = new ResourceGroup(\"defaultResourceGroup\", ResourceGroupArgs.builder()\n .groupName(\"TF_EXAMPLE\")\n .groupType(\"batch\")\n .nodeNum(0)\n .dbClusterId(defaultDBCluster.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultDBCluster:\n type: alicloud:adb:DBCluster\n name: default\n properties:\n computeResource: 48Core192GB\n dbClusterCategory: MixedStorage\n dbClusterVersion: '3.0'\n dbNodeClass: E32\n dbNodeStorage: 100\n description: ${name}\n elasticIoResource: 1\n maintainTime: 04:00Z-05:00Z\n mode: flexible\n paymentType: PayAsYouGo\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n securityIps:\n - 10.168.1.12\n - 10.168.1.11\n vpcId: ${defaultNetwork.id}\n vswitchId: ${defaultSwitch.id}\n zoneId: ${default.zones[0].id}\n tags:\n Created: TF\n For: example\n defaultResourceGroup:\n type: alicloud:adb:ResourceGroup\n name: default\n properties:\n groupName: TF_EXAMPLE\n groupType: batch\n nodeNum: 0\n dbClusterId: ${defaultDBCluster.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAdb Resource Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/resourceGroup:ResourceGroup example \u003cdb_cluster_id\u003e:\u003cgroup_name\u003e\n```\n\n",
+ "description": "Provides a AnalyticDB for MySQL (ADB) Resource Group resource.\n\nFor information about AnalyticDB for MySQL (ADB) Resource Group and how to use it, see [What is Resource Group](https://www.alibabacloud.com/help/en/analyticdb-for-mysql/latest/api-doc-adb-2019-03-15-api-doc-createdbresourcegroup).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.adb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultDBCluster = new alicloud.adb.DBCluster(\"default\", {\n computeResource: \"48Core192GB\",\n dbClusterCategory: \"MixedStorage\",\n dbClusterVersion: \"3.0\",\n dbNodeClass: \"E32\",\n dbNodeStorage: 100,\n description: name,\n elasticIoResource: 1,\n maintainTime: \"04:00Z-05:00Z\",\n mode: \"flexible\",\n paymentType: \"PayAsYouGo\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n securityIps: [\n \"10.168.1.12\",\n \"10.168.1.11\",\n ],\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultResourceGroup = new alicloud.adb.ResourceGroup(\"default\", {\n groupName: \"TF_EXAMPLE\",\n groupType: \"batch\",\n nodeNum: 0,\n dbClusterId: defaultDBCluster.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.adb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_db_cluster = alicloud.adb.DBCluster(\"default\",\n compute_resource=\"48Core192GB\",\n db_cluster_category=\"MixedStorage\",\n db_cluster_version=\"3.0\",\n db_node_class=\"E32\",\n db_node_storage=100,\n description=name,\n elastic_io_resource=1,\n maintain_time=\"04:00Z-05:00Z\",\n mode=\"flexible\",\n payment_type=\"PayAsYouGo\",\n resource_group_id=default_get_resource_groups.ids[0],\n security_ips=[\n \"10.168.1.12\",\n \"10.168.1.11\",\n ],\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n zone_id=default.zones[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_resource_group = alicloud.adb.ResourceGroup(\"default\",\n group_name=\"TF_EXAMPLE\",\n group_type=\"batch\",\n node_num=0,\n db_cluster_id=default_db_cluster.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Adb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultDBCluster = new AliCloud.Adb.DBCluster(\"default\", new()\n {\n ComputeResource = \"48Core192GB\",\n DbClusterCategory = \"MixedStorage\",\n DbClusterVersion = \"3.0\",\n DbNodeClass = \"E32\",\n DbNodeStorage = 100,\n Description = name,\n ElasticIoResource = 1,\n MaintainTime = \"04:00Z-05:00Z\",\n Mode = \"flexible\",\n PaymentType = \"PayAsYouGo\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n SecurityIps = new[]\n {\n \"10.168.1.12\",\n \"10.168.1.11\",\n },\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultResourceGroup = new AliCloud.Adb.ResourceGroup(\"default\", new()\n {\n GroupName = \"TF_EXAMPLE\",\n GroupType = \"batch\",\n NodeNum = 0,\n DbClusterId = defaultDBCluster.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/adb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := adb.GetZones(ctx, \u0026adb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDBCluster, err := adb.NewDBCluster(ctx, \"default\", \u0026adb.DBClusterArgs{\n\t\t\tComputeResource: pulumi.String(\"48Core192GB\"),\n\t\t\tDbClusterCategory: pulumi.String(\"MixedStorage\"),\n\t\t\tDbClusterVersion: pulumi.String(\"3.0\"),\n\t\t\tDbNodeClass: pulumi.String(\"E32\"),\n\t\t\tDbNodeStorage: pulumi.Int(100),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tElasticIoResource: pulumi.Int(1),\n\t\t\tMaintainTime: pulumi.String(\"04:00Z-05:00Z\"),\n\t\t\tMode: pulumi.String(\"flexible\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.168.1.12\"),\n\t\t\t\tpulumi.String(\"10.168.1.11\"),\n\t\t\t},\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = adb.NewResourceGroup(ctx, \"default\", \u0026adb.ResourceGroupArgs{\n\t\t\tGroupName: pulumi.String(\"TF_EXAMPLE\"),\n\t\t\tGroupType: pulumi.String(\"batch\"),\n\t\t\tNodeNum: pulumi.Int(0),\n\t\t\tDbClusterId: defaultDBCluster.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.adb.AdbFunctions;\nimport com.pulumi.alicloud.adb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.adb.DBCluster;\nimport com.pulumi.alicloud.adb.DBClusterArgs;\nimport com.pulumi.alicloud.adb.ResourceGroup;\nimport com.pulumi.alicloud.adb.ResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AdbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultDBCluster = new DBCluster(\"defaultDBCluster\", DBClusterArgs.builder()\n .computeResource(\"48Core192GB\")\n .dbClusterCategory(\"MixedStorage\")\n .dbClusterVersion(\"3.0\")\n .dbNodeClass(\"E32\")\n .dbNodeStorage(100)\n .description(name)\n .elasticIoResource(1)\n .maintainTime(\"04:00Z-05:00Z\")\n .mode(\"flexible\")\n .paymentType(\"PayAsYouGo\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .securityIps( \n \"10.168.1.12\",\n \"10.168.1.11\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .zoneId(default_.zones()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultResourceGroup = new ResourceGroup(\"defaultResourceGroup\", ResourceGroupArgs.builder()\n .groupName(\"TF_EXAMPLE\")\n .groupType(\"batch\")\n .nodeNum(0)\n .dbClusterId(defaultDBCluster.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultDBCluster:\n type: alicloud:adb:DBCluster\n name: default\n properties:\n computeResource: 48Core192GB\n dbClusterCategory: MixedStorage\n dbClusterVersion: '3.0'\n dbNodeClass: E32\n dbNodeStorage: 100\n description: ${name}\n elasticIoResource: 1\n maintainTime: 04:00Z-05:00Z\n mode: flexible\n paymentType: PayAsYouGo\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n securityIps:\n - 10.168.1.12\n - 10.168.1.11\n vpcId: ${defaultNetwork.id}\n vswitchId: ${defaultSwitch.id}\n zoneId: ${default.zones[0].id}\n tags:\n Created: TF\n For: example\n defaultResourceGroup:\n type: alicloud:adb:ResourceGroup\n name: default\n properties:\n groupName: TF_EXAMPLE\n groupType: batch\n nodeNum: 0\n dbClusterId: ${defaultDBCluster.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:adb:getZones\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAdb Resource Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:adb/resourceGroup:ResourceGroup example \u003cdb_cluster_id\u003e:\u003cgroup_name\u003e\n```\n\n",
"properties": {
"clusterMode": {
"type": "string",
@@ -98930,7 +100757,7 @@
}
},
"alicloud:alb/aScript:AScript": {
- "description": "Provides a Application Load Balancer (ALB) A Script resource.\n\n\n\nFor information about Application Load Balancer (ALB) A Script and how to use it, see [What is A Script](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createascripts).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 8081,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultAScript = new alicloud.alb.AScript(\"default\", {\n scriptContent: \"time()\",\n position: \"RequestHead\",\n ascriptName: name,\n enabled: true,\n listenerId: defaultListener.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=8081,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_a_script = alicloud.alb.AScript(\"default\",\n script_content=\"time()\",\n position=\"RequestHead\",\n ascript_name=name,\n enabled=True,\n listener_id=default_listener.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 8081,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultAScript = new AliCloud.Alb.AScript(\"default\", new()\n {\n ScriptContent = \"time()\",\n Position = \"RequestHead\",\n AscriptName = name,\n Enabled = true,\n ListenerId = defaultListener.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(8081),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAScript(ctx, \"default\", \u0026alb.AScriptArgs{\n\t\t\tScriptContent: pulumi.String(\"time()\"),\n\t\t\tPosition: pulumi.String(\"RequestHead\"),\n\t\t\tAscriptName: pulumi.String(name),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.AScript;\nimport com.pulumi.alicloud.alb.AScriptArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(8081)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultAScript = new AScript(\"defaultAScript\", AScriptArgs.builder()\n .scriptContent(\"time()\")\n .position(\"RequestHead\")\n .ascriptName(name)\n .enabled(true)\n .listenerId(defaultListener.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) A Script can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/aScript:AScript example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) A Script resource.\n\n\n\nFor information about Application Load Balancer (ALB) A Script and how to use it, see [What is A Script](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createascripts).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 8081,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultAScript = new alicloud.alb.AScript(\"default\", {\n scriptContent: \"time()\",\n position: \"RequestHead\",\n ascriptName: name,\n enabled: true,\n listenerId: defaultListener.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=8081,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_a_script = alicloud.alb.AScript(\"default\",\n script_content=\"time()\",\n position=\"RequestHead\",\n ascript_name=name,\n enabled=True,\n listener_id=default_listener.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 8081,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultAScript = new AliCloud.Alb.AScript(\"default\", new()\n {\n ScriptContent = \"time()\",\n Position = \"RequestHead\",\n AscriptName = name,\n Enabled = true,\n ListenerId = defaultListener.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(8081),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAScript(ctx, \"default\", \u0026alb.AScriptArgs{\n\t\t\tScriptContent: pulumi.String(\"time()\"),\n\t\t\tPosition: pulumi.String(\"RequestHead\"),\n\t\t\tAscriptName: pulumi.String(name),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.AScript;\nimport com.pulumi.alicloud.alb.AScriptArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(8081)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultAScript = new AScript(\"defaultAScript\", AScriptArgs.builder()\n .scriptContent(\"time()\")\n .position(\"RequestHead\")\n .ascriptName(name)\n .enabled(true)\n .listenerId(defaultListener.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) A Script can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/aScript:AScript example \u003cid\u003e\n```\n\n",
"properties": {
"ascriptName": {
"type": "string",
@@ -99073,7 +100900,7 @@
}
},
"alicloud:alb/acl:Acl": {
- "description": "Provides a Application Load Balancer (ALB) Acl resource.\n\nFor information about ALB Acl and how to use it, see [What is Acl](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createacl).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: \"tf_example\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=\"tf_example\",\n resource_group_id=default.groups[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = \"tf_example\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(\"tf_example\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(\"tf_example\")\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultAcl:\n type: alicloud:alb:Acl\n name: default\n properties:\n aclName: tf_example\n resourceGroupId: ${default.groups[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nALB Acl can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/acl:Acl example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Acl resource.\n\nFor information about ALB Acl and how to use it, see [What is Acl](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createacl).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: \"tf_example\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=\"tf_example\",\n resource_group_id=default.groups[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = \"tf_example\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(\"tf_example\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(\"tf_example\")\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultAcl:\n type: alicloud:alb:Acl\n name: default\n properties:\n aclName: tf_example\n resourceGroupId: ${default.groups[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nALB Acl can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/acl:Acl example \u003cid\u003e\n```\n\n",
"properties": {
"aclEntries": {
"type": "array",
@@ -99182,7 +101009,7 @@
}
},
"alicloud:alb/aclEntryAttachment:AclEntryAttachment": {
- "description": "For information about acl entry attachment and how to use it, see [Configure an acl entry](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-addentriestoacl).\n\n\u003e **NOTE:** Available since v1.166.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: name,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\nconst defaultAclEntryAttachment = new alicloud.alb.AclEntryAttachment(\"default\", {\n aclId: defaultAcl.id,\n entry: \"168.10.10.0/24\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=name,\n resource_group_id=default.groups[0].id)\ndefault_acl_entry_attachment = alicloud.alb.AclEntryAttachment(\"default\",\n acl_id=default_acl.id,\n entry=\"168.10.10.0/24\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n var defaultAclEntryAttachment = new AliCloud.Alb.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n Entry = \"168.10.10.0/24\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAcl, err := alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAclEntryAttachment(ctx, \"default\", \u0026alb.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tEntry: pulumi.String(\"168.10.10.0/24\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport com.pulumi.alicloud.alb.AclEntryAttachment;\nimport com.pulumi.alicloud.alb.AclEntryAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(name)\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .entry(\"168.10.10.0/24\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultAcl:\n type: alicloud:alb:Acl\n name: default\n properties:\n aclName: ${name}\n resourceGroupId: ${default.groups[0].id}\n defaultAclEntryAttachment:\n type: alicloud:alb:AclEntryAttachment\n name: default\n properties:\n aclId: ${defaultAcl.id}\n entry: 168.10.10.0/24\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAcl entry attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/aclEntryAttachment:AclEntryAttachment example \u003cacl_id\u003e:\u003centry\u003e\n```\n\n",
+ "description": "For information about acl entry attachment and how to use it, see [Configure an acl entry](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-addentriestoacl).\n\n\u003e **NOTE:** Available since v1.166.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: name,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\nconst defaultAclEntryAttachment = new alicloud.alb.AclEntryAttachment(\"default\", {\n aclId: defaultAcl.id,\n entry: \"168.10.10.0/24\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=name,\n resource_group_id=default.groups[0].id)\ndefault_acl_entry_attachment = alicloud.alb.AclEntryAttachment(\"default\",\n acl_id=default_acl.id,\n entry=\"168.10.10.0/24\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n var defaultAclEntryAttachment = new AliCloud.Alb.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n Entry = \"168.10.10.0/24\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAcl, err := alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAclEntryAttachment(ctx, \"default\", \u0026alb.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tEntry: pulumi.String(\"168.10.10.0/24\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport com.pulumi.alicloud.alb.AclEntryAttachment;\nimport com.pulumi.alicloud.alb.AclEntryAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(name)\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .entry(\"168.10.10.0/24\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultAcl:\n type: alicloud:alb:Acl\n name: default\n properties:\n aclName: ${name}\n resourceGroupId: ${default.groups[0].id}\n defaultAclEntryAttachment:\n type: alicloud:alb:AclEntryAttachment\n name: default\n properties:\n aclId: ${defaultAcl.id}\n entry: 168.10.10.0/24\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAcl entry attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/aclEntryAttachment:AclEntryAttachment example \u003cacl_id\u003e:\u003centry\u003e\n```\n\n",
"properties": {
"aclId": {
"type": "string",
@@ -99254,7 +101081,7 @@
}
},
"alicloud:alb/healthCheckTemplate:HealthCheckTemplate": {
- "description": "Provides a Application Load Balancer (ALB) Health Check Template resource.\n\nHealth check template.\n\nFor information about Application Load Balancer (ALB) Health Check Template and how to use it, see [What is Health Check Template](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createhealthchecktemplate).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.alb.HealthCheckTemplate(\"example\", {healthCheckTemplateName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.alb.HealthCheckTemplate(\"example\", health_check_template_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Alb.HealthCheckTemplate(\"example\", new()\n {\n HealthCheckTemplateName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := alb.NewHealthCheckTemplate(ctx, \"example\", \u0026alb.HealthCheckTemplateArgs{\n\t\t\tHealthCheckTemplateName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.HealthCheckTemplate;\nimport com.pulumi.alicloud.alb.HealthCheckTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new HealthCheckTemplate(\"example\", HealthCheckTemplateArgs.builder()\n .healthCheckTemplateName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:alb:HealthCheckTemplate\n properties:\n healthCheckTemplateName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Health Check Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/healthCheckTemplate:HealthCheckTemplate example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Health Check Template resource.\n\nHealth check template.\n\nFor information about Application Load Balancer (ALB) Health Check Template and how to use it, see [What is Health Check Template](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createhealthchecktemplate).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.alb.HealthCheckTemplate(\"example\", {healthCheckTemplateName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.alb.HealthCheckTemplate(\"example\", health_check_template_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Alb.HealthCheckTemplate(\"example\", new()\n {\n HealthCheckTemplateName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := alb.NewHealthCheckTemplate(ctx, \"example\", \u0026alb.HealthCheckTemplateArgs{\n\t\t\tHealthCheckTemplateName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.HealthCheckTemplate;\nimport com.pulumi.alicloud.alb.HealthCheckTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new HealthCheckTemplate(\"example\", HealthCheckTemplateArgs.builder()\n .healthCheckTemplateName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:alb:HealthCheckTemplate\n properties:\n healthCheckTemplateName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Health Check Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/healthCheckTemplate:HealthCheckTemplate example \u003cid\u003e\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -99485,7 +101312,7 @@
}
},
"alicloud:alb/listener:Listener": {
- "description": "Provides a Application Load Balancer (ALB) Listener resource.\n\n\n\nFor information about Application Load Balancer (ALB) Listener and how to use it, see [What is Listener](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createlistener).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n description: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Basic\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch[0].id,\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckConnectPort: 46325,\n healthCheckEnabled: true,\n healthCheckHost: \"tf-example.com\",\n healthCheckCodes: [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n healthCheckHttpVersion: \"HTTP1.1\",\n healthCheckInterval: 2,\n healthCheckMethod: \"HEAD\",\n healthCheckPath: \"/tf-example\",\n healthCheckProtocol: \"HTTP\",\n healthCheckTimeout: 5,\n healthyThreshold: 3,\n unhealthyThreshold: 3,\n },\n stickySessionConfig: {\n stickySessionEnabled: true,\n cookie: \"tf-example\",\n stickySessionType: \"Server\",\n },\n servers: [{\n description: name,\n port: 80,\n serverId: defaultInstance.id,\n serverIp: defaultInstance.privateIp,\n serverType: \"Ecs\",\n weight: 10,\n }],\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 443,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n description=name,\n vpc_id=default_network.id)\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Basic\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ],\n modification_protection_config={\n \"status\": \"NonProtection\",\n })\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch[0].id)\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_connect_port\": 46325,\n \"health_check_enabled\": True,\n \"health_check_host\": \"tf-example.com\",\n \"health_check_codes\": [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n \"health_check_http_version\": \"HTTP1.1\",\n \"health_check_interval\": 2,\n \"health_check_method\": \"HEAD\",\n \"health_check_path\": \"/tf-example\",\n \"health_check_protocol\": \"HTTP\",\n \"health_check_timeout\": 5,\n \"healthy_threshold\": 3,\n \"unhealthy_threshold\": 3,\n },\n sticky_session_config={\n \"sticky_session_enabled\": True,\n \"cookie\": \"tf-example\",\n \"sticky_session_type\": \"Server\",\n },\n servers=[{\n \"description\": name,\n \"port\": 80,\n \"server_id\": default_instance.id,\n \"server_ip\": default_instance.private_ip,\n \"server_type\": \"Ecs\",\n \"weight\": 10,\n }])\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=443,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n Description = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Basic\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch[0].Id,\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckConnectPort = 46325,\n HealthCheckEnabled = true,\n HealthCheckHost = \"tf-example.com\",\n HealthCheckCodes = new[]\n {\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n },\n HealthCheckHttpVersion = \"HTTP1.1\",\n HealthCheckInterval = 2,\n HealthCheckMethod = \"HEAD\",\n HealthCheckPath = \"/tf-example\",\n HealthCheckProtocol = \"HTTP\",\n HealthCheckTimeout = 5,\n HealthyThreshold = 3,\n UnhealthyThreshold = 3,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = true,\n Cookie = \"tf-example\",\n StickySessionType = \"Server\",\n },\n Servers = new[]\n {\n new AliCloud.Alb.Inputs.ServerGroupServerArgs\n {\n Description = name,\n Port = 80,\n ServerId = defaultInstance.Id,\n ServerIp = defaultInstance.PrivateIp,\n ServerType = \"Ecs\",\n Weight = 10,\n },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 443,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckConnectPort: pulumi.Int(46325),\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(true),\n\t\t\t\tHealthCheckHost: pulumi.String(\"tf-example.com\"),\n\t\t\t\tHealthCheckCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"http_2xx\"),\n\t\t\t\t\tpulumi.String(\"http_3xx\"),\n\t\t\t\t\tpulumi.String(\"http_4xx\"),\n\t\t\t\t},\n\t\t\t\tHealthCheckHttpVersion: pulumi.String(\"HTTP1.1\"),\n\t\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\t\tHealthCheckMethod: pulumi.String(\"HEAD\"),\n\t\t\t\tHealthCheckPath: pulumi.String(\"/tf-example\"),\n\t\t\t\tHealthCheckProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tHealthCheckTimeout: pulumi.Int(5),\n\t\t\t\tHealthyThreshold: pulumi.Int(3),\n\t\t\t\tUnhealthyThreshold: pulumi.Int(3),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(true),\n\t\t\t\tCookie: pulumi.String(\"tf-example\"),\n\t\t\t\tStickySessionType: pulumi.String(\"Server\"),\n\t\t\t},\n\t\t\tServers: alb.ServerGroupServerArray{\n\t\t\t\t\u0026alb.ServerGroupServerArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tServerId: defaultInstance.ID(),\n\t\t\t\t\tServerIp: defaultInstance.PrivateIp,\n\t\t\t\t\tServerType: pulumi.String(\"Ecs\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(443),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupServerArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .description(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Basic\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch[0].id())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckConnectPort(46325)\n .healthCheckEnabled(true)\n .healthCheckHost(\"tf-example.com\")\n .healthCheckCodes( \n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\")\n .healthCheckHttpVersion(\"HTTP1.1\")\n .healthCheckInterval(2)\n .healthCheckMethod(\"HEAD\")\n .healthCheckPath(\"/tf-example\")\n .healthCheckProtocol(\"HTTP\")\n .healthCheckTimeout(5)\n .healthyThreshold(3)\n .unhealthyThreshold(3)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(true)\n .cookie(\"tf-example\")\n .stickySessionType(\"Server\")\n .build())\n .servers(ServerGroupServerArgs.builder()\n .description(name)\n .port(80)\n .serverId(defaultInstance.id())\n .serverIp(defaultInstance.privateIp())\n .serverType(\"Ecs\")\n .weight(10)\n .build())\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(443)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Listener can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listener:Listener example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Listener resource.\n\n\n\nFor information about Application Load Balancer (ALB) Listener and how to use it, see [What is Listener](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createlistener).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n description: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Basic\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch[0].id,\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckConnectPort: 46325,\n healthCheckEnabled: true,\n healthCheckHost: \"tf-example.com\",\n healthCheckCodes: [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n healthCheckHttpVersion: \"HTTP1.1\",\n healthCheckInterval: 2,\n healthCheckMethod: \"HEAD\",\n healthCheckPath: \"/tf-example\",\n healthCheckProtocol: \"HTTP\",\n healthCheckTimeout: 5,\n healthyThreshold: 3,\n unhealthyThreshold: 3,\n },\n stickySessionConfig: {\n stickySessionEnabled: true,\n cookie: \"tf-example\",\n stickySessionType: \"Server\",\n },\n servers: [{\n description: name,\n port: 80,\n serverId: defaultInstance.id,\n serverIp: defaultInstance.privateIp,\n serverType: \"Ecs\",\n weight: 10,\n }],\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 443,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n description=name,\n vpc_id=default_network.id)\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Basic\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ],\n modification_protection_config={\n \"status\": \"NonProtection\",\n })\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch[0].id)\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_connect_port\": 46325,\n \"health_check_enabled\": True,\n \"health_check_host\": \"tf-example.com\",\n \"health_check_codes\": [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n \"health_check_http_version\": \"HTTP1.1\",\n \"health_check_interval\": 2,\n \"health_check_method\": \"HEAD\",\n \"health_check_path\": \"/tf-example\",\n \"health_check_protocol\": \"HTTP\",\n \"health_check_timeout\": 5,\n \"healthy_threshold\": 3,\n \"unhealthy_threshold\": 3,\n },\n sticky_session_config={\n \"sticky_session_enabled\": True,\n \"cookie\": \"tf-example\",\n \"sticky_session_type\": \"Server\",\n },\n servers=[{\n \"description\": name,\n \"port\": 80,\n \"server_id\": default_instance.id,\n \"server_ip\": default_instance.private_ip,\n \"server_type\": \"Ecs\",\n \"weight\": 10,\n }])\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=443,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n Description = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Basic\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch[0].Id,\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckConnectPort = 46325,\n HealthCheckEnabled = true,\n HealthCheckHost = \"tf-example.com\",\n HealthCheckCodes = new[]\n {\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n },\n HealthCheckHttpVersion = \"HTTP1.1\",\n HealthCheckInterval = 2,\n HealthCheckMethod = \"HEAD\",\n HealthCheckPath = \"/tf-example\",\n HealthCheckProtocol = \"HTTP\",\n HealthCheckTimeout = 5,\n HealthyThreshold = 3,\n UnhealthyThreshold = 3,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = true,\n Cookie = \"tf-example\",\n StickySessionType = \"Server\",\n },\n Servers = new[]\n {\n new AliCloud.Alb.Inputs.ServerGroupServerArgs\n {\n Description = name,\n Port = 80,\n ServerId = defaultInstance.Id,\n ServerIp = defaultInstance.PrivateIp,\n ServerType = \"Ecs\",\n Weight = 10,\n },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 443,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckConnectPort: pulumi.Int(46325),\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(true),\n\t\t\t\tHealthCheckHost: pulumi.String(\"tf-example.com\"),\n\t\t\t\tHealthCheckCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"http_2xx\"),\n\t\t\t\t\tpulumi.String(\"http_3xx\"),\n\t\t\t\t\tpulumi.String(\"http_4xx\"),\n\t\t\t\t},\n\t\t\t\tHealthCheckHttpVersion: pulumi.String(\"HTTP1.1\"),\n\t\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\t\tHealthCheckMethod: pulumi.String(\"HEAD\"),\n\t\t\t\tHealthCheckPath: pulumi.String(\"/tf-example\"),\n\t\t\t\tHealthCheckProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tHealthCheckTimeout: pulumi.Int(5),\n\t\t\t\tHealthyThreshold: pulumi.Int(3),\n\t\t\t\tUnhealthyThreshold: pulumi.Int(3),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(true),\n\t\t\t\tCookie: pulumi.String(\"tf-example\"),\n\t\t\t\tStickySessionType: pulumi.String(\"Server\"),\n\t\t\t},\n\t\t\tServers: alb.ServerGroupServerArray{\n\t\t\t\t\u0026alb.ServerGroupServerArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tServerId: defaultInstance.ID(),\n\t\t\t\t\tServerIp: defaultInstance.PrivateIp,\n\t\t\t\t\tServerType: pulumi.String(\"Ecs\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(443),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupServerArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .description(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Basic\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch[0].id())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckConnectPort(46325)\n .healthCheckEnabled(true)\n .healthCheckHost(\"tf-example.com\")\n .healthCheckCodes( \n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\")\n .healthCheckHttpVersion(\"HTTP1.1\")\n .healthCheckInterval(2)\n .healthCheckMethod(\"HEAD\")\n .healthCheckPath(\"/tf-example\")\n .healthCheckProtocol(\"HTTP\")\n .healthCheckTimeout(5)\n .healthyThreshold(3)\n .unhealthyThreshold(3)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(true)\n .cookie(\"tf-example\")\n .stickySessionType(\"Server\")\n .build())\n .servers(ServerGroupServerArgs.builder()\n .description(name)\n .port(80)\n .serverId(defaultInstance.id())\n .serverIp(defaultInstance.privateIp())\n .serverType(\"Ecs\")\n .weight(10)\n .build())\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(443)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Listener can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listener:Listener example \u003cid\u003e\n```\n\n",
"properties": {
"accessLogRecordCustomizedHeadersEnabled": {
"type": "boolean",
@@ -99807,7 +101634,7 @@
}
},
"alicloud:alb/listenerAclAttachment:ListenerAclAttachment": {
- "description": "Provides a ALB Listener Acl Attachment resource. Associating ACL to listening.\n\nFor information about ALB Listener Acl Attachment and how to use it, see [What is Listener Acl Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-associateaclswithlistener).\n\n\u003e **NOTE:** Available since v1.163.0.\n\n\u003e **NOTE:** You can associate at most three ACLs with a listener.\n\n\u003e **NOTE:** You can only configure either a whitelist or a blacklist for listener, not at the same time.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value + 3].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: defaultSwitch[0].zoneId,\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: defaultSwitch[1].zoneId,\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 80,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n});\nconst defaultAclEntryAttachment = new alicloud.alb.AclEntryAttachment(\"default\", {\n aclId: defaultAcl.id,\n entry: \"10.0.0.0/24\",\n description: name,\n});\nconst defaultListenerAclAttachment = new alicloud.alb.ListenerAclAttachment(\"default\", {\n aclId: defaultAcl.id,\n listenerId: defaultListener.id,\n aclType: \"White\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"] + 3].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default_switch[0].zone_id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default_switch[1].zone_id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=80,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id)\ndefault_acl_entry_attachment = alicloud.alb.AclEntryAttachment(\"default\",\n acl_id=default_acl.id,\n entry=\"10.0.0.0/24\",\n description=name)\ndefault_listener_acl_attachment = alicloud.alb.ListenerAclAttachment(\"default\",\n acl_id=default_acl.id,\n listener_id=default_listener.id,\n acl_type=\"White\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value + 3].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = defaultSwitch[0].ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = defaultSwitch[1].ZoneId,\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 80,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n });\n\n var defaultAclEntryAttachment = new AliCloud.Alb.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n Entry = \"10.0.0.0/24\",\n Description = name,\n });\n\n var defaultListenerAclAttachment = new AliCloud.Alb.ListenerAclAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n ListenerId = defaultListener.Id,\n AclType = \"White\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0+3].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: defaultSwitch[0].ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: defaultSwitch[1].ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(80),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAcl, err := alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAclEntryAttachment(ctx, \"default\", \u0026alb.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tEntry: pulumi.String(\"10.0.0.0/24\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListenerAclAttachment(ctx, \"default\", \u0026alb.ListenerAclAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t\tAclType: pulumi.String(\"White\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport com.pulumi.alicloud.alb.AclEntryAttachment;\nimport com.pulumi.alicloud.alb.AclEntryAttachmentArgs;\nimport com.pulumi.alicloud.alb.ListenerAclAttachment;\nimport com.pulumi.alicloud.alb.ListenerAclAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value() + 3].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(defaultSwitch[0].zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(defaultSwitch[1].zoneId())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(80)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .entry(\"10.0.0.0/24\")\n .description(name)\n .build());\n\n var defaultListenerAclAttachment = new ListenerAclAttachment(\"defaultListenerAclAttachment\", ListenerAclAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .listenerId(defaultListener.id())\n .aclType(\"White\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nALB Listener Acl Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listenerAclAttachment:ListenerAclAttachment example \u003clistener_id\u003e:\u003cacl_id\u003e\n```\n\n",
+ "description": "Provides a ALB Listener Acl Attachment resource. Associating ACL to listening.\n\nFor information about ALB Listener Acl Attachment and how to use it, see [What is Listener Acl Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-associateaclswithlistener).\n\n\u003e **NOTE:** Available since v1.163.0.\n\n\u003e **NOTE:** You can associate at most three ACLs with a listener.\n\n\u003e **NOTE:** You can only configure either a whitelist or a blacklist for listener, not at the same time.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value + 3].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: defaultSwitch[0].zoneId,\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: defaultSwitch[1].zoneId,\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 80,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultAcl = new alicloud.alb.Acl(\"default\", {\n aclName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n});\nconst defaultAclEntryAttachment = new alicloud.alb.AclEntryAttachment(\"default\", {\n aclId: defaultAcl.id,\n entry: \"10.0.0.0/24\",\n description: name,\n});\nconst defaultListenerAclAttachment = new alicloud.alb.ListenerAclAttachment(\"default\", {\n aclId: defaultAcl.id,\n listenerId: defaultListener.id,\n aclType: \"White\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"] + 3].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default_switch[0].zone_id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default_switch[1].zone_id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=80,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_acl = alicloud.alb.Acl(\"default\",\n acl_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id)\ndefault_acl_entry_attachment = alicloud.alb.AclEntryAttachment(\"default\",\n acl_id=default_acl.id,\n entry=\"10.0.0.0/24\",\n description=name)\ndefault_listener_acl_attachment = alicloud.alb.ListenerAclAttachment(\"default\",\n acl_id=default_acl.id,\n listener_id=default_listener.id,\n acl_type=\"White\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value + 3].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = defaultSwitch[0].ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = defaultSwitch[1].ZoneId,\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 80,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultAcl = new AliCloud.Alb.Acl(\"default\", new()\n {\n AclName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n });\n\n var defaultAclEntryAttachment = new AliCloud.Alb.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n Entry = \"10.0.0.0/24\",\n Description = name,\n });\n\n var defaultListenerAclAttachment = new AliCloud.Alb.ListenerAclAttachment(\"default\", new()\n {\n AclId = defaultAcl.Id,\n ListenerId = defaultListener.Id,\n AclType = \"White\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0+3].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: defaultSwitch[0].ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: defaultSwitch[1].ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(80),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAcl, err := alb.NewAcl(ctx, \"default\", \u0026alb.AclArgs{\n\t\t\tAclName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewAclEntryAttachment(ctx, \"default\", \u0026alb.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tEntry: pulumi.String(\"10.0.0.0/24\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListenerAclAttachment(ctx, \"default\", \u0026alb.ListenerAclAttachmentArgs{\n\t\t\tAclId: defaultAcl.ID(),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t\tAclType: pulumi.String(\"White\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.Acl;\nimport com.pulumi.alicloud.alb.AclArgs;\nimport com.pulumi.alicloud.alb.AclEntryAttachment;\nimport com.pulumi.alicloud.alb.AclEntryAttachmentArgs;\nimport com.pulumi.alicloud.alb.ListenerAclAttachment;\nimport com.pulumi.alicloud.alb.ListenerAclAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value() + 3].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(defaultSwitch[0].zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(defaultSwitch[1].zoneId())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(80)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultAcl = new Acl(\"defaultAcl\", AclArgs.builder()\n .aclName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .entry(\"10.0.0.0/24\")\n .description(name)\n .build());\n\n var defaultListenerAclAttachment = new ListenerAclAttachment(\"defaultListenerAclAttachment\", ListenerAclAttachmentArgs.builder()\n .aclId(defaultAcl.id())\n .listenerId(defaultListener.id())\n .aclType(\"White\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nALB Listener Acl Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listenerAclAttachment:ListenerAclAttachment example \u003clistener_id\u003e:\u003cacl_id\u003e\n```\n\n",
"properties": {
"aclId": {
"type": "string",
@@ -99881,7 +101708,7 @@
}
},
"alicloud:alb/listenerAdditionalCertificateAttachment:ListenerAdditionalCertificateAttachment": {
- "description": "Provides a Application Load Balancer (ALB) Listener Additional Certificate Attachment resource.\n\nFor information about Application Load Balancer (ALB) Listener Additional Certificate Attachment and how to use it, see [What is Listener Additional Certificate Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-associateadditionalcertificateswithlistener).\n\n\u003e **NOTE:** Available since v1.161.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultServiceCertificate: alicloud.cas.ServiceCertificate[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultServiceCertificate.push(new alicloud.cas.ServiceCertificate(`default-${range.value}`, {\n certificateName: std.join({\n separator: \"-\",\n input: [\n name,\n defaultInteger.result,\n range.value,\n ],\n }).then(invoke =\u003e invoke.result),\n cert: `-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`,\n }));\n}\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTPS\",\n listenerPort: 8081,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n certificates: {\n certificateId: std.joinOutput({\n separator: \"\",\n input: [\n defaultServiceCertificate[0].id,\n \"-cn-hangzhou\",\n ],\n }).apply(invoke =\u003e invoke.result),\n },\n});\nconst defaultListenerAdditionalCertificateAttachment = new alicloud.alb.ListenerAdditionalCertificateAttachment(\"default\", {\n certificateId: std.joinOutput({\n separator: \"\",\n input: [\n defaultServiceCertificate[1].id,\n \"-cn-hangzhou\",\n ],\n }).apply(invoke =\u003e invoke.result),\n listenerId: defaultListener.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_service_certificate = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_service_certificate.append(alicloud.cas.ServiceCertificate(f\"default-{range['value']}\",\n certificate_name=std.join(separator=\"-\",\n input=[\n name,\n default_integer[\"result\"],\n range[\"value\"],\n ]).result,\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\"\"\"))\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTPS\",\n listener_port=8081,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }],\n certificates={\n \"certificate_id\": std.join_output(separator=\"\",\n input=[\n default_service_certificate[0].id,\n \"-cn-hangzhou\",\n ]).apply(lambda invoke: invoke.result),\n })\ndefault_listener_additional_certificate_attachment = alicloud.alb.ListenerAdditionalCertificateAttachment(\"default\",\n certificate_id=std.join_output(separator=\"\",\n input=[\n default_service_certificate[1].id,\n \"-cn-hangzhou\",\n ]).apply(lambda invoke: invoke.result),\n listener_id=default_listener.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultServiceCertificate = new List\u003cAliCloud.Cas.ServiceCertificate\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultServiceCertificate.Add(new AliCloud.Cas.ServiceCertificate($\"default-{range.Value}\", new()\n {\n CertificateName = Std.Join.Invoke(new()\n {\n Separator = \"-\",\n Input = new[]\n {\n name,\n defaultInteger.Result,\n range.Value,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\",\n }));\n }\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTPS\",\n ListenerPort = 8081,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n Certificates = new AliCloud.Alb.Inputs.ListenerCertificatesArgs\n {\n CertificateId = Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = new[]\n {\n defaultServiceCertificate[0].Id,\n \"-cn-hangzhou\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n },\n });\n\n var defaultListenerAdditionalCertificateAttachment = new AliCloud.Alb.ListenerAdditionalCertificateAttachment(\"default\", new()\n {\n CertificateId = Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = new[]\n {\n defaultServiceCertificate[1].Id,\n \"-cn-hangzhou\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n ListenerId = defaultListener.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeJoin2, err := std.Join(ctx, \u0026std.JoinArgs{\n\t\t\tSeparator: \"-\",\n\t\t\tInput: []interface{}{\n\t\t\t\tname,\n\t\t\t\tdefaultInteger.Result,\n\t\t\t\tval0,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultServiceCertificate []*cas.ServiceCertificate\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := cas.NewServiceCertificate(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cas.ServiceCertificateArgs{\n\t\t\t\tCertificateName: pulumi.String(invokeJoin2.Result),\n\t\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`),\n\t\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultServiceCertificate = append(defaultServiceCertificate, __res)\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTPS\"),\n\t\t\tListenerPort: pulumi.Int(8081),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCertificates: \u0026alb.ListenerCertificatesArgs{\n\t\t\t\tCertificateId: std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\t\tSeparator: pulumi.String(\"\"),\n\t\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\t\tdefaultServiceCertificate[0].ID(),\n\t\t\t\t\t\tpulumi.String(\"-cn-hangzhou\"),\n\t\t\t\t\t},\n\t\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\t\treturn invoke.Result, nil\n\t\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListenerAdditionalCertificateAttachment(ctx, \"default\", \u0026alb.ListenerAdditionalCertificateAttachmentArgs{\n\t\t\tCertificateId: pulumi.String(std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\tSeparator: pulumi.String(\"\"),\n\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\tdefaultServiceCertificate[1].ID(),\n\t\t\t\t\tpulumi.String(\"-cn-hangzhou\"),\n\t\t\t\t},\n\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\treturn invoke.Result, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.ServiceCertificate;\nimport com.pulumi.alicloud.cas.ServiceCertificateArgs;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerCertificatesArgs;\nimport com.pulumi.alicloud.alb.ListenerAdditionalCertificateAttachment;\nimport com.pulumi.alicloud.alb.ListenerAdditionalCertificateAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new ServiceCertificate(\"defaultServiceCertificate-\" + i, ServiceCertificateArgs.builder()\n .certificateName(StdFunctions.join(JoinArgs.builder()\n .separator(\"-\")\n .input( \n name,\n defaultInteger.result(),\n range.value())\n .build()).result())\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n \n}\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTPS\")\n .listenerPort(8081)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .certificates(ListenerCertificatesArgs.builder()\n .certificateId(StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input( \n defaultServiceCertificate[0].id(),\n \"-cn-hangzhou\")\n .build()).applyValue(_invoke -\u003e _invoke.result()))\n .build())\n .build());\n\n var defaultListenerAdditionalCertificateAttachment = new ListenerAdditionalCertificateAttachment(\"defaultListenerAdditionalCertificateAttachment\", ListenerAdditionalCertificateAttachmentArgs.builder()\n .certificateId(StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input( \n defaultServiceCertificate[1].id(),\n \"-cn-hangzhou\")\n .build()).applyValue(_invoke -\u003e _invoke.result()))\n .listenerId(defaultListener.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Listener Additional Certificate Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listenerAdditionalCertificateAttachment:ListenerAdditionalCertificateAttachment example \u003clistener_id\u003e:\u003ccertificate_id\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Listener Additional Certificate Attachment resource.\n\nFor information about Application Load Balancer (ALB) Listener Additional Certificate Attachment and how to use it, see [What is Listener Additional Certificate Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-associateadditionalcertificateswithlistener).\n\n\u003e **NOTE:** Available since v1.161.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultServiceCertificate: alicloud.cas.ServiceCertificate[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultServiceCertificate.push(new alicloud.cas.ServiceCertificate(`default-${range.value}`, {\n certificateName: std.join({\n separator: \"-\",\n input: [\n name,\n defaultInteger.result,\n range.value,\n ],\n }).then(invoke =\u003e invoke.result),\n cert: `-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`,\n }));\n}\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTPS\",\n listenerPort: 8081,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n certificates: {\n certificateId: std.joinOutput({\n separator: \"\",\n input: [\n defaultServiceCertificate[0].id,\n \"-cn-hangzhou\",\n ],\n }).apply(invoke =\u003e invoke.result),\n },\n});\nconst defaultListenerAdditionalCertificateAttachment = new alicloud.alb.ListenerAdditionalCertificateAttachment(\"default\", {\n certificateId: std.joinOutput({\n separator: \"\",\n input: [\n defaultServiceCertificate[1].id,\n \"-cn-hangzhou\",\n ],\n }).apply(invoke =\u003e invoke.result),\n listenerId: defaultListener.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_service_certificate = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_service_certificate.append(alicloud.cas.ServiceCertificate(f\"default-{range['value']}\",\n certificate_name=std.join(separator=\"-\",\n input=[\n name,\n default_integer[\"result\"],\n range[\"value\"],\n ]).result,\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\"\"\"))\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTPS\",\n listener_port=8081,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }],\n certificates={\n \"certificate_id\": std.join_output(separator=\"\",\n input=[\n default_service_certificate[0].id,\n \"-cn-hangzhou\",\n ]).apply(lambda invoke: invoke.result),\n })\ndefault_listener_additional_certificate_attachment = alicloud.alb.ListenerAdditionalCertificateAttachment(\"default\",\n certificate_id=std.join_output(separator=\"\",\n input=[\n default_service_certificate[1].id,\n \"-cn-hangzhou\",\n ]).apply(lambda invoke: invoke.result),\n listener_id=default_listener.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultServiceCertificate = new List\u003cAliCloud.Cas.ServiceCertificate\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultServiceCertificate.Add(new AliCloud.Cas.ServiceCertificate($\"default-{range.Value}\", new()\n {\n CertificateName = Std.Join.Invoke(new()\n {\n Separator = \"-\",\n Input = new[]\n {\n name,\n defaultInteger.Result,\n range.Value,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\",\n }));\n }\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTPS\",\n ListenerPort = 8081,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n Certificates = new AliCloud.Alb.Inputs.ListenerCertificatesArgs\n {\n CertificateId = Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = new[]\n {\n defaultServiceCertificate[0].Id,\n \"-cn-hangzhou\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n },\n });\n\n var defaultListenerAdditionalCertificateAttachment = new AliCloud.Alb.ListenerAdditionalCertificateAttachment(\"default\", new()\n {\n CertificateId = Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = new[]\n {\n defaultServiceCertificate[1].Id,\n \"-cn-hangzhou\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n ListenerId = defaultListener.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeJoin2, err := std.Join(ctx, \u0026std.JoinArgs{\n\t\t\tSeparator: \"-\",\n\t\t\tInput: []interface{}{\n\t\t\t\tname,\n\t\t\t\tdefaultInteger.Result,\n\t\t\t\tval0,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultServiceCertificate []*cas.ServiceCertificate\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := cas.NewServiceCertificate(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cas.ServiceCertificateArgs{\n\t\t\t\tCertificateName: pulumi.String(invokeJoin2.Result),\n\t\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`),\n\t\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultServiceCertificate = append(defaultServiceCertificate, __res)\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTPS\"),\n\t\t\tListenerPort: pulumi.Int(8081),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCertificates: \u0026alb.ListenerCertificatesArgs{\n\t\t\t\tCertificateId: std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\t\tSeparator: pulumi.String(\"\"),\n\t\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\t\tdefaultServiceCertificate[0].ID(),\n\t\t\t\t\t\tpulumi.String(\"-cn-hangzhou\"),\n\t\t\t\t\t},\n\t\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\t\treturn invoke.Result, nil\n\t\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewListenerAdditionalCertificateAttachment(ctx, \"default\", \u0026alb.ListenerAdditionalCertificateAttachmentArgs{\n\t\t\tCertificateId: pulumi.String(std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\tSeparator: pulumi.String(\"\"),\n\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\tdefaultServiceCertificate[1].ID(),\n\t\t\t\t\tpulumi.String(\"-cn-hangzhou\"),\n\t\t\t\t},\n\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\treturn invoke.Result, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.ServiceCertificate;\nimport com.pulumi.alicloud.cas.ServiceCertificateArgs;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerCertificatesArgs;\nimport com.pulumi.alicloud.alb.ListenerAdditionalCertificateAttachment;\nimport com.pulumi.alicloud.alb.ListenerAdditionalCertificateAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new ServiceCertificate(\"defaultServiceCertificate-\" + i, ServiceCertificateArgs.builder()\n .certificateName(StdFunctions.join(JoinArgs.builder()\n .separator(\"-\")\n .input( \n name,\n defaultInteger.result(),\n range.value())\n .build()).result())\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n \n}\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTPS\")\n .listenerPort(8081)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .certificates(ListenerCertificatesArgs.builder()\n .certificateId(StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input( \n defaultServiceCertificate[0].id(),\n \"-cn-hangzhou\")\n .build()).applyValue(_invoke -\u003e _invoke.result()))\n .build())\n .build());\n\n var defaultListenerAdditionalCertificateAttachment = new ListenerAdditionalCertificateAttachment(\"defaultListenerAdditionalCertificateAttachment\", ListenerAdditionalCertificateAttachmentArgs.builder()\n .certificateId(StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input( \n defaultServiceCertificate[1].id(),\n \"-cn-hangzhou\")\n .build()).applyValue(_invoke -\u003e _invoke.result()))\n .listenerId(defaultListener.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Listener Additional Certificate Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/listenerAdditionalCertificateAttachment:ListenerAdditionalCertificateAttachment example \u003clistener_id\u003e:\u003ccertificate_id\u003e\n```\n\n",
"properties": {
"certificateId": {
"type": "string",
@@ -99948,7 +101775,7 @@
}
},
"alicloud:alb/loadBalancer:LoadBalancer": {
- "description": "Provides a Application Load Balancer (ALB) Load Balancer resource.\n\nLoad Balancer Instance.\n\nFor information about Application Load Balancer (ALB) Load Balancer and how to use it, see [What is Load Balancer](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createloadbalancer).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetZones = alicloud.alb.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst default1 = new alicloud.vpc.Switch(\"default1\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.1.0/24\",\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n vswitchName: `${name}_1`,\n});\nconst default2 = new alicloud.vpc.Switch(\"default2\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.2.0/24\",\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n vswitchName: `${name}_2`,\n});\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n loadBalancerEdition: \"Basic\",\n addressType: \"Internet\",\n vpcId: defaultNetwork.id,\n addressAllocatedMode: \"Fixed\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n loadBalancerName: name,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n zoneMappings: [\n {\n vswitchId: default1.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n },\n {\n vswitchId: default2.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n },\n ],\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_zones = alicloud.alb.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault1 = alicloud.vpc.Switch(\"default1\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.1.0/24\",\n zone_id=default_get_zones.zones[0].id,\n vswitch_name=f\"{name}_1\")\ndefault2 = alicloud.vpc.Switch(\"default2\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.2.0/24\",\n zone_id=default_get_zones.zones[1].id,\n vswitch_name=f\"{name}_2\")\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n load_balancer_edition=\"Basic\",\n address_type=\"Internet\",\n vpc_id=default_network.id,\n address_allocated_mode=\"Fixed\",\n resource_group_id=default.groups[0].id,\n load_balancer_name=name,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n modification_protection_config={\n \"status\": \"NonProtection\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default1.id,\n \"zone_id\": default_get_zones.zones[0].id,\n },\n {\n \"vswitch_id\": default2.id,\n \"zone_id\": default_get_zones.zones[1].id,\n },\n ],\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetZones = AliCloud.Alb.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var default1 = new AliCloud.Vpc.Switch(\"default1\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.1.0/24\",\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = $\"{name}_1\",\n });\n\n var default2 = new AliCloud.Vpc.Switch(\"default2\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.2.0/24\",\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n VswitchName = $\"{name}_2\",\n });\n\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n LoadBalancerEdition = \"Basic\",\n AddressType = \"Internet\",\n VpcId = defaultNetwork.Id,\n AddressAllocatedMode = \"Fixed\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n LoadBalancerName = name,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = default1.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = default2.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault1, err := vpc.NewSwitch(ctx, \"default1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.1.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_1\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault2, err := vpc.NewSwitch(ctx, \"default2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.2.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_2\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: default1.ID(),\n\t\t\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: default2.ID(),\n\t\t\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetZones = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var default1 = new Switch(\"default1\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.1.0/24\")\n .zoneId(defaultGetZones.zones()[0].id())\n .vswitchName(String.format(\"%s_1\", name))\n .build());\n\n var default2 = new Switch(\"default2\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.2.0/24\")\n .zoneId(defaultGetZones.zones()[1].id())\n .vswitchName(String.format(\"%s_2\", name))\n .build());\n\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .loadBalancerEdition(\"Basic\")\n .addressType(\"Internet\")\n .vpcId(defaultNetwork.id())\n .addressAllocatedMode(\"Fixed\")\n .resourceGroupId(default_.groups()[0].id())\n .loadBalancerName(name)\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(default1.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(default2.id())\n .zoneId(defaultGetZones.zones()[1].id())\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n default1:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.1.0/24\n zoneId: ${defaultGetZones.zones[0].id}\n vswitchName: ${name}_1\n default2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.2.0/24\n zoneId: ${defaultGetZones.zones[1].id}\n vswitchName: ${name}_2\n defaultLoadBalancer:\n type: alicloud:alb:LoadBalancer\n name: default\n properties:\n loadBalancerEdition: Basic\n addressType: Internet\n vpcId: ${defaultNetwork.id}\n addressAllocatedMode: Fixed\n resourceGroupId: ${default.groups[0].id}\n loadBalancerName: ${name}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n modificationProtectionConfig:\n status: NonProtection\n zoneMappings:\n - vswitchId: ${default1.id}\n zoneId: ${defaultGetZones.zones[0].id}\n - vswitchId: ${default2.id}\n zoneId: ${defaultGetZones.zones[1].id}\n tags:\n Created: TF\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetZones:\n fn::invoke:\n function: alicloud:alb:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancer:LoadBalancer example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Load Balancer resource.\n\nLoad Balancer Instance.\n\nFor information about Application Load Balancer (ALB) Load Balancer and how to use it, see [What is Load Balancer](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createloadbalancer).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetZones = alicloud.alb.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst default1 = new alicloud.vpc.Switch(\"default1\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.1.0/24\",\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n vswitchName: `${name}_1`,\n});\nconst default2 = new alicloud.vpc.Switch(\"default2\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.2.0/24\",\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n vswitchName: `${name}_2`,\n});\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n loadBalancerEdition: \"Basic\",\n addressType: \"Internet\",\n vpcId: defaultNetwork.id,\n addressAllocatedMode: \"Fixed\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n loadBalancerName: name,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n zoneMappings: [\n {\n vswitchId: default1.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n },\n {\n vswitchId: default2.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n },\n ],\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_zones = alicloud.alb.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault1 = alicloud.vpc.Switch(\"default1\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.1.0/24\",\n zone_id=default_get_zones.zones[0].id,\n vswitch_name=f\"{name}_1\")\ndefault2 = alicloud.vpc.Switch(\"default2\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.2.0/24\",\n zone_id=default_get_zones.zones[1].id,\n vswitch_name=f\"{name}_2\")\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n load_balancer_edition=\"Basic\",\n address_type=\"Internet\",\n vpc_id=default_network.id,\n address_allocated_mode=\"Fixed\",\n resource_group_id=default.groups[0].id,\n load_balancer_name=name,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n modification_protection_config={\n \"status\": \"NonProtection\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default1.id,\n \"zone_id\": default_get_zones.zones[0].id,\n },\n {\n \"vswitch_id\": default2.id,\n \"zone_id\": default_get_zones.zones[1].id,\n },\n ],\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetZones = AliCloud.Alb.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var default1 = new AliCloud.Vpc.Switch(\"default1\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.1.0/24\",\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = $\"{name}_1\",\n });\n\n var default2 = new AliCloud.Vpc.Switch(\"default2\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.2.0/24\",\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n VswitchName = $\"{name}_2\",\n });\n\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n LoadBalancerEdition = \"Basic\",\n AddressType = \"Internet\",\n VpcId = defaultNetwork.Id,\n AddressAllocatedMode = \"Fixed\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n LoadBalancerName = name,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = default1.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = default2.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault1, err := vpc.NewSwitch(ctx, \"default1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.1.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_1\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault2, err := vpc.NewSwitch(ctx, \"default2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.2.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_2\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: default1.ID(),\n\t\t\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: default2.ID(),\n\t\t\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetZones = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var default1 = new Switch(\"default1\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.1.0/24\")\n .zoneId(defaultGetZones.zones()[0].id())\n .vswitchName(String.format(\"%s_1\", name))\n .build());\n\n var default2 = new Switch(\"default2\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.2.0/24\")\n .zoneId(defaultGetZones.zones()[1].id())\n .vswitchName(String.format(\"%s_2\", name))\n .build());\n\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .loadBalancerEdition(\"Basic\")\n .addressType(\"Internet\")\n .vpcId(defaultNetwork.id())\n .addressAllocatedMode(\"Fixed\")\n .resourceGroupId(default_.groups()[0].id())\n .loadBalancerName(name)\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(default1.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(default2.id())\n .zoneId(defaultGetZones.zones()[1].id())\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n default1:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.1.0/24\n zoneId: ${defaultGetZones.zones[0].id}\n vswitchName: ${name}_1\n default2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.2.0/24\n zoneId: ${defaultGetZones.zones[1].id}\n vswitchName: ${name}_2\n defaultLoadBalancer:\n type: alicloud:alb:LoadBalancer\n name: default\n properties:\n loadBalancerEdition: Basic\n addressType: Internet\n vpcId: ${defaultNetwork.id}\n addressAllocatedMode: Fixed\n resourceGroupId: ${default.groups[0].id}\n loadBalancerName: ${name}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n modificationProtectionConfig:\n status: NonProtection\n zoneMappings:\n - vswitchId: ${default1.id}\n zoneId: ${defaultGetZones.zones[0].id}\n - vswitchId: ${default2.id}\n zoneId: ${defaultGetZones.zones[1].id}\n tags:\n Created: TF\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetZones:\n fn::invoke:\n function: alicloud:alb:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancer:LoadBalancer example \u003cid\u003e\n```\n\n",
"properties": {
"accessLogConfig": {
"$ref": "#/types/alicloud:alb/LoadBalancerAccessLogConfig:LoadBalancerAccessLogConfig",
@@ -100249,7 +102076,7 @@
}
},
"alicloud:alb/loadBalancerAccessLogConfigAttachment:LoadBalancerAccessLogConfigAttachment": {
- "description": "Provides a Application Load Balancer (ALB) Load Balancer Access Log Config Attachment resource.\n\nAttachment between ALB and AccessLog.\n\nFor information about Application Load Balancer (ALB) Load Balancer Access Log Config Attachment and how to use it, see [What is Load Balancer Access Log Config Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-enableloadbalanceraccesslog).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst albExampleTfVpc = new alicloud.vpc.Network(\"alb_example_tf_vpc\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst albExampleTfJ = new alicloud.vpc.Switch(\"alb_example_tf_j\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-j\",\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst albExampleTfK = new alicloud.vpc.Switch(\"alb_example_tf_k\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-k\",\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDSY0JJ = new alicloud.vpc.Switch(\"defaultDSY0JJ\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-f\",\n cidrBlock: \"192.168.3.0/24\",\n vswitchName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDYswYo = new alicloud.alb.LoadBalancer(\"defaultDYswYo\", {\n loadBalancerName: std.format({\n input: \"%s4\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n loadBalancerEdition: \"Standard\",\n vpcId: albExampleTfVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: defaultDSY0JJ.id,\n zoneId: defaultDSY0JJ.zoneId,\n },\n {\n vswitchId: albExampleTfJ.id,\n zoneId: albExampleTfJ.zoneId,\n },\n {\n vswitchId: albExampleTfK.id,\n zoneId: albExampleTfK.zoneId,\n },\n ],\n});\nconst defaultLoadBalancerAccessLogConfigAttachment = new alicloud.alb.LoadBalancerAccessLogConfigAttachment(\"default\", {\n logStore: `${name}-${_default.result}`,\n loadBalancerId: defaultDYswYo.id,\n logProject: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\nalb_example_tf_vpc = alicloud.vpc.Network(\"alb_example_tf_vpc\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nalb_example_tf_j = alicloud.vpc.Switch(\"alb_example_tf_j\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-j\",\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result)\nalb_example_tf_k = alicloud.vpc.Switch(\"alb_example_tf_k\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-k\",\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result)\ndefault_dsy0_jj = alicloud.vpc.Switch(\"defaultDSY0JJ\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-f\",\n cidr_block=\"192.168.3.0/24\",\n vswitch_name=std.format(input=\"%s3\",\n args=[name]).result)\ndefault_dysw_yo = alicloud.alb.LoadBalancer(\"defaultDYswYo\",\n load_balancer_name=std.format(input=\"%s4\",\n args=[name]).result,\n load_balancer_edition=\"Standard\",\n vpc_id=alb_example_tf_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": default_dsy0_jj.id,\n \"zone_id\": default_dsy0_jj.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_j.id,\n \"zone_id\": alb_example_tf_j.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_k.id,\n \"zone_id\": alb_example_tf_k.zone_id,\n },\n ])\ndefault_load_balancer_access_log_config_attachment = alicloud.alb.LoadBalancerAccessLogConfigAttachment(\"default\",\n log_store=f\"{name}-{default['result']}\",\n load_balancer_id=default_dysw_yo.id,\n log_project=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var albExampleTfVpc = new AliCloud.Vpc.Network(\"alb_example_tf_vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var albExampleTfJ = new AliCloud.Vpc.Switch(\"alb_example_tf_j\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-j\",\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var albExampleTfK = new AliCloud.Vpc.Switch(\"alb_example_tf_k\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-k\",\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDSY0JJ = new AliCloud.Vpc.Switch(\"defaultDSY0JJ\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-f\",\n CidrBlock = \"192.168.3.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDYswYo = new AliCloud.Alb.LoadBalancer(\"defaultDYswYo\", new()\n {\n LoadBalancerName = Std.Format.Invoke(new()\n {\n Input = \"%s4\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n LoadBalancerEdition = \"Standard\",\n VpcId = albExampleTfVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultDSY0JJ.Id,\n ZoneId = defaultDSY0JJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfJ.Id,\n ZoneId = albExampleTfJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfK.Id,\n ZoneId = albExampleTfK.ZoneId,\n },\n },\n });\n\n var defaultLoadBalancerAccessLogConfigAttachment = new AliCloud.Alb.LoadBalancerAccessLogConfigAttachment(\"default\", new()\n {\n LogStore = $\"{name}-{@default.Result}\",\n LoadBalancerId = defaultDYswYo.Id,\n LogProject = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfVpc, err := vpc.NewNetwork(ctx, \"alb_example_tf_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfJ, err := vpc.NewSwitch(ctx, \"alb_example_tf_j\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-j\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfK, err := vpc.NewSwitch(ctx, \"alb_example_tf_k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-k\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDSY0JJ, err := vpc.NewSwitch(ctx, \"defaultDSY0JJ\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-f\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.3.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s4\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDYswYo, err := alb.NewLoadBalancer(ctx, \"defaultDYswYo\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(invokeFormat3.Result),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfJ.ID(),\n\t\t\t\t\tZoneId: albExampleTfJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfK.ID(),\n\t\t\t\t\tZoneId: albExampleTfK.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerAccessLogConfigAttachment(ctx, \"default\", \u0026alb.LoadBalancerAccessLogConfigAttachmentArgs{\n\t\t\tLogStore: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tLoadBalancerId: defaultDYswYo.ID(),\n\t\t\tLogProject: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerAccessLogConfigAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerAccessLogConfigAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var albExampleTfVpc = new Network(\"albExampleTfVpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var albExampleTfJ = new Switch(\"albExampleTfJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-j\")\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .build());\n\n var albExampleTfK = new Switch(\"albExampleTfK\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-k\")\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDSY0JJ = new Switch(\"defaultDSY0JJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-f\")\n .cidrBlock(\"192.168.3.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDYswYo = new LoadBalancer(\"defaultDYswYo\", LoadBalancerArgs.builder()\n .loadBalancerName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s4\")\n .args(name)\n .build()).result())\n .loadBalancerEdition(\"Standard\")\n .vpcId(albExampleTfVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultDSY0JJ.id())\n .zoneId(defaultDSY0JJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfJ.id())\n .zoneId(albExampleTfJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfK.id())\n .zoneId(albExampleTfK.zoneId())\n .build())\n .build());\n\n var defaultLoadBalancerAccessLogConfigAttachment = new LoadBalancerAccessLogConfigAttachment(\"defaultLoadBalancerAccessLogConfigAttachment\", LoadBalancerAccessLogConfigAttachmentArgs.builder()\n .logStore(String.format(\"%s-%s\", name,default_.result()))\n .loadBalancerId(defaultDYswYo.id())\n .logProject(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n albExampleTfVpc:\n type: alicloud:vpc:Network\n name: alb_example_tf_vpc\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n albExampleTfJ:\n type: alicloud:vpc:Switch\n name: alb_example_tf_j\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-j\n cidrBlock: 192.168.1.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n albExampleTfK:\n type: alicloud:vpc:Switch\n name: alb_example_tf_k\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-k\n cidrBlock: 192.168.2.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n defaultDSY0JJ:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-f\n cidrBlock: 192.168.3.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n defaultDYswYo:\n type: alicloud:alb:LoadBalancer\n properties:\n loadBalancerName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s4'\n args:\n - ${name}\n return: result\n loadBalancerEdition: Standard\n vpcId: ${albExampleTfVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${defaultDSY0JJ.id}\n zoneId: ${defaultDSY0JJ.zoneId}\n - vswitchId: ${albExampleTfJ.id}\n zoneId: ${albExampleTfJ.zoneId}\n - vswitchId: ${albExampleTfK.id}\n zoneId: ${albExampleTfK.zoneId}\n defaultLoadBalancerAccessLogConfigAttachment:\n type: alicloud:alb:LoadBalancerAccessLogConfigAttachment\n name: default\n properties:\n logStore: ${name}-${default.result}\n loadBalancerId: ${defaultDYswYo.id}\n logProject: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Access Log Config Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerAccessLogConfigAttachment:LoadBalancerAccessLogConfigAttachment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Load Balancer Access Log Config Attachment resource.\n\nAttachment between ALB and AccessLog.\n\nFor information about Application Load Balancer (ALB) Load Balancer Access Log Config Attachment and how to use it, see [What is Load Balancer Access Log Config Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-enableloadbalanceraccesslog).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst albExampleTfVpc = new alicloud.vpc.Network(\"alb_example_tf_vpc\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst albExampleTfJ = new alicloud.vpc.Switch(\"alb_example_tf_j\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-j\",\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst albExampleTfK = new alicloud.vpc.Switch(\"alb_example_tf_k\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-k\",\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDSY0JJ = new alicloud.vpc.Switch(\"defaultDSY0JJ\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-f\",\n cidrBlock: \"192.168.3.0/24\",\n vswitchName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDYswYo = new alicloud.alb.LoadBalancer(\"defaultDYswYo\", {\n loadBalancerName: std.format({\n input: \"%s4\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n loadBalancerEdition: \"Standard\",\n vpcId: albExampleTfVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: defaultDSY0JJ.id,\n zoneId: defaultDSY0JJ.zoneId,\n },\n {\n vswitchId: albExampleTfJ.id,\n zoneId: albExampleTfJ.zoneId,\n },\n {\n vswitchId: albExampleTfK.id,\n zoneId: albExampleTfK.zoneId,\n },\n ],\n});\nconst defaultLoadBalancerAccessLogConfigAttachment = new alicloud.alb.LoadBalancerAccessLogConfigAttachment(\"default\", {\n logStore: `${name}-${_default.result}`,\n loadBalancerId: defaultDYswYo.id,\n logProject: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\nalb_example_tf_vpc = alicloud.vpc.Network(\"alb_example_tf_vpc\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nalb_example_tf_j = alicloud.vpc.Switch(\"alb_example_tf_j\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-j\",\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result)\nalb_example_tf_k = alicloud.vpc.Switch(\"alb_example_tf_k\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-k\",\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result)\ndefault_dsy0_jj = alicloud.vpc.Switch(\"defaultDSY0JJ\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-f\",\n cidr_block=\"192.168.3.0/24\",\n vswitch_name=std.format(input=\"%s3\",\n args=[name]).result)\ndefault_dysw_yo = alicloud.alb.LoadBalancer(\"defaultDYswYo\",\n load_balancer_name=std.format(input=\"%s4\",\n args=[name]).result,\n load_balancer_edition=\"Standard\",\n vpc_id=alb_example_tf_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": default_dsy0_jj.id,\n \"zone_id\": default_dsy0_jj.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_j.id,\n \"zone_id\": alb_example_tf_j.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_k.id,\n \"zone_id\": alb_example_tf_k.zone_id,\n },\n ])\ndefault_load_balancer_access_log_config_attachment = alicloud.alb.LoadBalancerAccessLogConfigAttachment(\"default\",\n log_store=f\"{name}-{default['result']}\",\n load_balancer_id=default_dysw_yo.id,\n log_project=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var albExampleTfVpc = new AliCloud.Vpc.Network(\"alb_example_tf_vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var albExampleTfJ = new AliCloud.Vpc.Switch(\"alb_example_tf_j\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-j\",\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var albExampleTfK = new AliCloud.Vpc.Switch(\"alb_example_tf_k\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-k\",\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDSY0JJ = new AliCloud.Vpc.Switch(\"defaultDSY0JJ\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-f\",\n CidrBlock = \"192.168.3.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDYswYo = new AliCloud.Alb.LoadBalancer(\"defaultDYswYo\", new()\n {\n LoadBalancerName = Std.Format.Invoke(new()\n {\n Input = \"%s4\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n LoadBalancerEdition = \"Standard\",\n VpcId = albExampleTfVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultDSY0JJ.Id,\n ZoneId = defaultDSY0JJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfJ.Id,\n ZoneId = albExampleTfJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfK.Id,\n ZoneId = albExampleTfK.ZoneId,\n },\n },\n });\n\n var defaultLoadBalancerAccessLogConfigAttachment = new AliCloud.Alb.LoadBalancerAccessLogConfigAttachment(\"default\", new()\n {\n LogStore = $\"{name}-{@default.Result}\",\n LoadBalancerId = defaultDYswYo.Id,\n LogProject = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfVpc, err := vpc.NewNetwork(ctx, \"alb_example_tf_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfJ, err := vpc.NewSwitch(ctx, \"alb_example_tf_j\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-j\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfK, err := vpc.NewSwitch(ctx, \"alb_example_tf_k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-k\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDSY0JJ, err := vpc.NewSwitch(ctx, \"defaultDSY0JJ\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-f\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.3.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s4\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDYswYo, err := alb.NewLoadBalancer(ctx, \"defaultDYswYo\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(invokeFormat3.Result),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfJ.ID(),\n\t\t\t\t\tZoneId: albExampleTfJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfK.ID(),\n\t\t\t\t\tZoneId: albExampleTfK.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerAccessLogConfigAttachment(ctx, \"default\", \u0026alb.LoadBalancerAccessLogConfigAttachmentArgs{\n\t\t\tLogStore: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tLoadBalancerId: defaultDYswYo.ID(),\n\t\t\tLogProject: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerAccessLogConfigAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerAccessLogConfigAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var albExampleTfVpc = new Network(\"albExampleTfVpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var albExampleTfJ = new Switch(\"albExampleTfJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-j\")\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .build());\n\n var albExampleTfK = new Switch(\"albExampleTfK\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-k\")\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDSY0JJ = new Switch(\"defaultDSY0JJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-f\")\n .cidrBlock(\"192.168.3.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDYswYo = new LoadBalancer(\"defaultDYswYo\", LoadBalancerArgs.builder()\n .loadBalancerName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s4\")\n .args(name)\n .build()).result())\n .loadBalancerEdition(\"Standard\")\n .vpcId(albExampleTfVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultDSY0JJ.id())\n .zoneId(defaultDSY0JJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfJ.id())\n .zoneId(albExampleTfJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfK.id())\n .zoneId(albExampleTfK.zoneId())\n .build())\n .build());\n\n var defaultLoadBalancerAccessLogConfigAttachment = new LoadBalancerAccessLogConfigAttachment(\"defaultLoadBalancerAccessLogConfigAttachment\", LoadBalancerAccessLogConfigAttachmentArgs.builder()\n .logStore(String.format(\"%s-%s\", name,default_.result()))\n .loadBalancerId(defaultDYswYo.id())\n .logProject(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n albExampleTfVpc:\n type: alicloud:vpc:Network\n name: alb_example_tf_vpc\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n albExampleTfJ:\n type: alicloud:vpc:Switch\n name: alb_example_tf_j\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-j\n cidrBlock: 192.168.1.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n albExampleTfK:\n type: alicloud:vpc:Switch\n name: alb_example_tf_k\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-k\n cidrBlock: 192.168.2.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n defaultDSY0JJ:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-f\n cidrBlock: 192.168.3.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n defaultDYswYo:\n type: alicloud:alb:LoadBalancer\n properties:\n loadBalancerName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s4'\n args:\n - ${name}\n return: result\n loadBalancerEdition: Standard\n vpcId: ${albExampleTfVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${defaultDSY0JJ.id}\n zoneId: ${defaultDSY0JJ.zoneId}\n - vswitchId: ${albExampleTfJ.id}\n zoneId: ${albExampleTfJ.zoneId}\n - vswitchId: ${albExampleTfK.id}\n zoneId: ${albExampleTfK.zoneId}\n defaultLoadBalancerAccessLogConfigAttachment:\n type: alicloud:alb:LoadBalancerAccessLogConfigAttachment\n name: default\n properties:\n logStore: ${name}-${default.result}\n loadBalancerId: ${defaultDYswYo.id}\n logProject: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Access Log Config Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerAccessLogConfigAttachment:LoadBalancerAccessLogConfigAttachment example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -100323,7 +102150,7 @@
}
},
"alicloud:alb/loadBalancerCommonBandwidthPackageAttachment:LoadBalancerCommonBandwidthPackageAttachment": {
- "description": "Provides a Alb Load Balancer Common Bandwidth Package Attachment resource.\n\nFor information about Alb Load Balancer Common Bandwidth Package Attachment and how to use it, see [What is Load Balancer Common Bandwidth Package Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-attachcommonbandwidthpackagetoloadbalancer).\n\n\u003e **NOTE:** Available since v1.200.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Basic\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n});\nconst defaultCommonBandwithPackage = new alicloud.vpc.CommonBandwithPackage(\"default\", {\n bandwidth: \"3\",\n internetChargeType: \"PayByBandwidth\",\n});\nconst defaultLoadBalancerCommonBandwidthPackageAttachment = new alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\", {\n bandwidthPackageId: defaultCommonBandwithPackage.id,\n loadBalancerId: defaultLoadBalancer.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Basic\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ],\n modification_protection_config={\n \"status\": \"NonProtection\",\n })\ndefault_common_bandwith_package = alicloud.vpc.CommonBandwithPackage(\"default\",\n bandwidth=\"3\",\n internet_charge_type=\"PayByBandwidth\")\ndefault_load_balancer_common_bandwidth_package_attachment = alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\",\n bandwidth_package_id=default_common_bandwith_package.id,\n load_balancer_id=default_load_balancer.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Basic\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n });\n\n var defaultCommonBandwithPackage = new AliCloud.Vpc.CommonBandwithPackage(\"default\", new()\n {\n Bandwidth = \"3\",\n InternetChargeType = \"PayByBandwidth\",\n });\n\n var defaultLoadBalancerCommonBandwidthPackageAttachment = new AliCloud.Alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\", new()\n {\n BandwidthPackageId = defaultCommonBandwithPackage.Id,\n LoadBalancerId = defaultLoadBalancer.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCommonBandwithPackage, err := vpc.NewCommonBandwithPackage(ctx, \"default\", \u0026vpc.CommonBandwithPackageArgs{\n\t\t\tBandwidth: pulumi.String(\"3\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerCommonBandwidthPackageAttachment(ctx, \"default\", \u0026alb.LoadBalancerCommonBandwidthPackageAttachmentArgs{\n\t\t\tBandwidthPackageId: defaultCommonBandwithPackage.ID(),\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.vpc.CommonBandwithPackage;\nimport com.pulumi.alicloud.vpc.CommonBandwithPackageArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerCommonBandwidthPackageAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Basic\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .build());\n\n var defaultCommonBandwithPackage = new CommonBandwithPackage(\"defaultCommonBandwithPackage\", CommonBandwithPackageArgs.builder()\n .bandwidth(\"3\")\n .internetChargeType(\"PayByBandwidth\")\n .build());\n\n var defaultLoadBalancerCommonBandwidthPackageAttachment = new LoadBalancerCommonBandwidthPackageAttachment(\"defaultLoadBalancerCommonBandwidthPackageAttachment\", LoadBalancerCommonBandwidthPackageAttachmentArgs.builder()\n .bandwidthPackageId(defaultCommonBandwithPackage.id())\n .loadBalancerId(defaultLoadBalancer.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlb Load Balancer Common Bandwidth Package Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerCommonBandwidthPackageAttachment:LoadBalancerCommonBandwidthPackageAttachment example \u003cload_balancer_id\u003e:\u003cbandwidth_package_id\u003e\n```\n\n",
+ "description": "Provides a Alb Load Balancer Common Bandwidth Package Attachment resource.\n\nFor information about Alb Load Balancer Common Bandwidth Package Attachment and how to use it, see [What is Load Balancer Common Bandwidth Package Attachment](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-attachcommonbandwidthpackagetoloadbalancer).\n\n\u003e **NOTE:** Available since v1.200.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Basic\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n modificationProtectionConfig: {\n status: \"NonProtection\",\n },\n});\nconst defaultCommonBandwithPackage = new alicloud.vpc.CommonBandwithPackage(\"default\", {\n bandwidth: \"3\",\n internetChargeType: \"PayByBandwidth\",\n});\nconst defaultLoadBalancerCommonBandwidthPackageAttachment = new alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\", {\n bandwidthPackageId: defaultCommonBandwithPackage.id,\n loadBalancerId: defaultLoadBalancer.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Basic\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ],\n modification_protection_config={\n \"status\": \"NonProtection\",\n })\ndefault_common_bandwith_package = alicloud.vpc.CommonBandwithPackage(\"default\",\n bandwidth=\"3\",\n internet_charge_type=\"PayByBandwidth\")\ndefault_load_balancer_common_bandwidth_package_attachment = alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\",\n bandwidth_package_id=default_common_bandwith_package.id,\n load_balancer_id=default_load_balancer.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Basic\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n ModificationProtectionConfig = new AliCloud.Alb.Inputs.LoadBalancerModificationProtectionConfigArgs\n {\n Status = \"NonProtection\",\n },\n });\n\n var defaultCommonBandwithPackage = new AliCloud.Vpc.CommonBandwithPackage(\"default\", new()\n {\n Bandwidth = \"3\",\n InternetChargeType = \"PayByBandwidth\",\n });\n\n var defaultLoadBalancerCommonBandwidthPackageAttachment = new AliCloud.Alb.LoadBalancerCommonBandwidthPackageAttachment(\"default\", new()\n {\n BandwidthPackageId = defaultCommonBandwithPackage.Id,\n LoadBalancerId = defaultLoadBalancer.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Basic\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tModificationProtectionConfig: \u0026alb.LoadBalancerModificationProtectionConfigArgs{\n\t\t\t\tStatus: pulumi.String(\"NonProtection\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCommonBandwithPackage, err := vpc.NewCommonBandwithPackage(ctx, \"default\", \u0026vpc.CommonBandwithPackageArgs{\n\t\t\tBandwidth: pulumi.String(\"3\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerCommonBandwidthPackageAttachment(ctx, \"default\", \u0026alb.LoadBalancerCommonBandwidthPackageAttachmentArgs{\n\t\t\tBandwidthPackageId: defaultCommonBandwithPackage.ID(),\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerModificationProtectionConfigArgs;\nimport com.pulumi.alicloud.vpc.CommonBandwithPackage;\nimport com.pulumi.alicloud.vpc.CommonBandwithPackageArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerCommonBandwidthPackageAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerCommonBandwidthPackageAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Basic\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .modificationProtectionConfig(LoadBalancerModificationProtectionConfigArgs.builder()\n .status(\"NonProtection\")\n .build())\n .build());\n\n var defaultCommonBandwithPackage = new CommonBandwithPackage(\"defaultCommonBandwithPackage\", CommonBandwithPackageArgs.builder()\n .bandwidth(\"3\")\n .internetChargeType(\"PayByBandwidth\")\n .build());\n\n var defaultLoadBalancerCommonBandwidthPackageAttachment = new LoadBalancerCommonBandwidthPackageAttachment(\"defaultLoadBalancerCommonBandwidthPackageAttachment\", LoadBalancerCommonBandwidthPackageAttachmentArgs.builder()\n .bandwidthPackageId(defaultCommonBandwithPackage.id())\n .loadBalancerId(defaultLoadBalancer.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlb Load Balancer Common Bandwidth Package Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerCommonBandwidthPackageAttachment:LoadBalancerCommonBandwidthPackageAttachment example \u003cload_balancer_id\u003e:\u003cbandwidth_package_id\u003e\n```\n\n",
"properties": {
"bandwidthPackageId": {
"type": "string",
@@ -100393,7 +102220,7 @@
}
},
"alicloud:alb/loadBalancerSecurityGroupAttachment:LoadBalancerSecurityGroupAttachment": {
- "description": "Provides a Application Load Balancer (ALB) Load Balancer Security Group Attachment resource.\n\nAttachment between Application Load Balancer and Security Group.\n\nFor information about Application Load Balancer (ALB) Load Balancer Security Group Attachment and how to use it, see [What is Load Balancer Security Group Attachment](https://next.api.alibabacloud.com/document/Alb/2020-06-16/LoadBalancerJoinSecurityGroup).\n\n\u003e **NOTE:** Available since v1.226.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst createVpc = new alicloud.vpc.Network(\"create_vpc\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst createVsw1 = new alicloud.vpc.Switch(\"create_vsw_1\", {\n vpcId: createVpc.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: name,\n});\nconst createVsw2 = new alicloud.vpc.Switch(\"create_vsw_2\", {\n vpcId: createVpc.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: name,\n});\nconst createSecurityGroup = new alicloud.ecs.SecurityGroup(\"create_security_group\", {\n name: name,\n vpcId: createVpc.id,\n});\nconst createAlb = new alicloud.alb.LoadBalancer(\"create_alb\", {\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n vpcId: createVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: createVsw2.id,\n zoneId: createVsw2.zoneId,\n },\n {\n vswitchId: createVsw1.id,\n zoneId: createVsw1.zoneId,\n },\n ],\n});\nconst defaultLoadBalancerSecurityGroupAttachment = new alicloud.alb.LoadBalancerSecurityGroupAttachment(\"default\", {\n securityGroupId: createSecurityGroup.id,\n loadBalancerId: createAlb.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ncreate_vpc = alicloud.vpc.Network(\"create_vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\ncreate_vsw1 = alicloud.vpc.Switch(\"create_vsw_1\",\n vpc_id=create_vpc.id,\n zone_id=default.zones[0].id,\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=name)\ncreate_vsw2 = alicloud.vpc.Switch(\"create_vsw_2\",\n vpc_id=create_vpc.id,\n zone_id=default.zones[1].id,\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=name)\ncreate_security_group = alicloud.ecs.SecurityGroup(\"create_security_group\",\n name=name,\n vpc_id=create_vpc.id)\ncreate_alb = alicloud.alb.LoadBalancer(\"create_alb\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n vpc_id=create_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": create_vsw2.id,\n \"zone_id\": create_vsw2.zone_id,\n },\n {\n \"vswitch_id\": create_vsw1.id,\n \"zone_id\": create_vsw1.zone_id,\n },\n ])\ndefault_load_balancer_security_group_attachment = alicloud.alb.LoadBalancerSecurityGroupAttachment(\"default\",\n security_group_id=create_security_group.id,\n load_balancer_id=create_alb.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var createVpc = new AliCloud.Vpc.Network(\"create_vpc\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var createVsw1 = new AliCloud.Vpc.Switch(\"create_vsw_1\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = name,\n });\n\n var createVsw2 = new AliCloud.Vpc.Switch(\"create_vsw_2\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = name,\n });\n\n var createSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"create_security_group\", new()\n {\n Name = name,\n VpcId = createVpc.Id,\n });\n\n var createAlb = new AliCloud.Alb.LoadBalancer(\"create_alb\", new()\n {\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n VpcId = createVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = createVsw2.Id,\n ZoneId = createVsw2.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = createVsw1.Id,\n ZoneId = createVsw1.ZoneId,\n },\n },\n });\n\n var defaultLoadBalancerSecurityGroupAttachment = new AliCloud.Alb.LoadBalancerSecurityGroupAttachment(\"default\", new()\n {\n SecurityGroupId = createSecurityGroup.Id,\n LoadBalancerId = createAlb.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVpc, err := vpc.NewNetwork(ctx, \"create_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVsw1, err := vpc.NewSwitch(ctx, \"create_vsw_1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVsw2, err := vpc.NewSwitch(ctx, \"create_vsw_2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"create_security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: createVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateAlb, err := alb.NewLoadBalancer(ctx, \"create_alb\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: createVsw2.ID(),\n\t\t\t\t\tZoneId: createVsw2.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: createVsw1.ID(),\n\t\t\t\t\tZoneId: createVsw1.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerSecurityGroupAttachment(ctx, \"default\", \u0026alb.LoadBalancerSecurityGroupAttachmentArgs{\n\t\t\tSecurityGroupId: createSecurityGroup.ID(),\n\t\t\tLoadBalancerId: createAlb.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerSecurityGroupAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerSecurityGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var createVpc = new Network(\"createVpc\", NetworkArgs.builder()\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var createVsw1 = new Switch(\"createVsw1\", SwitchArgs.builder()\n .vpcId(createVpc.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(name)\n .build());\n\n var createVsw2 = new Switch(\"createVsw2\", SwitchArgs.builder()\n .vpcId(createVpc.id())\n .zoneId(default_.zones()[1].id())\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(name)\n .build());\n\n var createSecurityGroup = new SecurityGroup(\"createSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(createVpc.id())\n .build());\n\n var createAlb = new LoadBalancer(\"createAlb\", LoadBalancerArgs.builder()\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .vpcId(createVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(createVsw2.id())\n .zoneId(createVsw2.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(createVsw1.id())\n .zoneId(createVsw1.zoneId())\n .build())\n .build());\n\n var defaultLoadBalancerSecurityGroupAttachment = new LoadBalancerSecurityGroupAttachment(\"defaultLoadBalancerSecurityGroupAttachment\", LoadBalancerSecurityGroupAttachmentArgs.builder()\n .securityGroupId(createSecurityGroup.id())\n .loadBalancerId(createAlb.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n createVpc:\n type: alicloud:vpc:Network\n name: create_vpc\n properties:\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n createVsw1:\n type: alicloud:vpc:Switch\n name: create_vsw_1\n properties:\n vpcId: ${createVpc.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 192.168.1.0/24\n vswitchName: ${name}\n createVsw2:\n type: alicloud:vpc:Switch\n name: create_vsw_2\n properties:\n vpcId: ${createVpc.id}\n zoneId: ${default.zones[1].id}\n cidrBlock: 192.168.2.0/24\n vswitchName: ${name}\n createSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: create_security_group\n properties:\n name: ${name}\n vpcId: ${createVpc.id}\n createAlb:\n type: alicloud:alb:LoadBalancer\n name: create_alb\n properties:\n loadBalancerName: ${name}\n loadBalancerEdition: Standard\n vpcId: ${createVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${createVsw2.id}\n zoneId: ${createVsw2.zoneId}\n - vswitchId: ${createVsw1.id}\n zoneId: ${createVsw1.zoneId}\n defaultLoadBalancerSecurityGroupAttachment:\n type: alicloud:alb:LoadBalancerSecurityGroupAttachment\n name: default\n properties:\n securityGroupId: ${createSecurityGroup.id}\n loadBalancerId: ${createAlb.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Security Group Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerSecurityGroupAttachment:LoadBalancerSecurityGroupAttachment example \u003cload_balancer_id\u003e:\u003csecurity_group_id\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Load Balancer Security Group Attachment resource.\n\nAttachment between Application Load Balancer and Security Group.\n\nFor information about Application Load Balancer (ALB) Load Balancer Security Group Attachment and how to use it, see [What is Load Balancer Security Group Attachment](https://next.api.alibabacloud.com/document/Alb/2020-06-16/LoadBalancerJoinSecurityGroup).\n\n\u003e **NOTE:** Available since v1.226.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst createVpc = new alicloud.vpc.Network(\"create_vpc\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst createVsw1 = new alicloud.vpc.Switch(\"create_vsw_1\", {\n vpcId: createVpc.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: name,\n});\nconst createVsw2 = new alicloud.vpc.Switch(\"create_vsw_2\", {\n vpcId: createVpc.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: name,\n});\nconst createSecurityGroup = new alicloud.ecs.SecurityGroup(\"create_security_group\", {\n name: name,\n vpcId: createVpc.id,\n});\nconst createAlb = new alicloud.alb.LoadBalancer(\"create_alb\", {\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n vpcId: createVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: createVsw2.id,\n zoneId: createVsw2.zoneId,\n },\n {\n vswitchId: createVsw1.id,\n zoneId: createVsw1.zoneId,\n },\n ],\n});\nconst defaultLoadBalancerSecurityGroupAttachment = new alicloud.alb.LoadBalancerSecurityGroupAttachment(\"default\", {\n securityGroupId: createSecurityGroup.id,\n loadBalancerId: createAlb.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ncreate_vpc = alicloud.vpc.Network(\"create_vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\ncreate_vsw1 = alicloud.vpc.Switch(\"create_vsw_1\",\n vpc_id=create_vpc.id,\n zone_id=default.zones[0].id,\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=name)\ncreate_vsw2 = alicloud.vpc.Switch(\"create_vsw_2\",\n vpc_id=create_vpc.id,\n zone_id=default.zones[1].id,\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=name)\ncreate_security_group = alicloud.ecs.SecurityGroup(\"create_security_group\",\n name=name,\n vpc_id=create_vpc.id)\ncreate_alb = alicloud.alb.LoadBalancer(\"create_alb\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n vpc_id=create_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": create_vsw2.id,\n \"zone_id\": create_vsw2.zone_id,\n },\n {\n \"vswitch_id\": create_vsw1.id,\n \"zone_id\": create_vsw1.zone_id,\n },\n ])\ndefault_load_balancer_security_group_attachment = alicloud.alb.LoadBalancerSecurityGroupAttachment(\"default\",\n security_group_id=create_security_group.id,\n load_balancer_id=create_alb.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var createVpc = new AliCloud.Vpc.Network(\"create_vpc\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var createVsw1 = new AliCloud.Vpc.Switch(\"create_vsw_1\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = name,\n });\n\n var createVsw2 = new AliCloud.Vpc.Switch(\"create_vsw_2\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = name,\n });\n\n var createSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"create_security_group\", new()\n {\n Name = name,\n VpcId = createVpc.Id,\n });\n\n var createAlb = new AliCloud.Alb.LoadBalancer(\"create_alb\", new()\n {\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n VpcId = createVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = createVsw2.Id,\n ZoneId = createVsw2.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = createVsw1.Id,\n ZoneId = createVsw1.ZoneId,\n },\n },\n });\n\n var defaultLoadBalancerSecurityGroupAttachment = new AliCloud.Alb.LoadBalancerSecurityGroupAttachment(\"default\", new()\n {\n SecurityGroupId = createSecurityGroup.Id,\n LoadBalancerId = createAlb.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVpc, err := vpc.NewNetwork(ctx, \"create_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVsw1, err := vpc.NewSwitch(ctx, \"create_vsw_1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVsw2, err := vpc.NewSwitch(ctx, \"create_vsw_2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"create_security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: createVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateAlb, err := alb.NewLoadBalancer(ctx, \"create_alb\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: createVsw2.ID(),\n\t\t\t\t\tZoneId: createVsw2.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: createVsw1.ID(),\n\t\t\t\t\tZoneId: createVsw1.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerSecurityGroupAttachment(ctx, \"default\", \u0026alb.LoadBalancerSecurityGroupAttachmentArgs{\n\t\t\tSecurityGroupId: createSecurityGroup.ID(),\n\t\t\tLoadBalancerId: createAlb.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerSecurityGroupAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerSecurityGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var createVpc = new Network(\"createVpc\", NetworkArgs.builder()\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var createVsw1 = new Switch(\"createVsw1\", SwitchArgs.builder()\n .vpcId(createVpc.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(name)\n .build());\n\n var createVsw2 = new Switch(\"createVsw2\", SwitchArgs.builder()\n .vpcId(createVpc.id())\n .zoneId(default_.zones()[1].id())\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(name)\n .build());\n\n var createSecurityGroup = new SecurityGroup(\"createSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(createVpc.id())\n .build());\n\n var createAlb = new LoadBalancer(\"createAlb\", LoadBalancerArgs.builder()\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .vpcId(createVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(createVsw2.id())\n .zoneId(createVsw2.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(createVsw1.id())\n .zoneId(createVsw1.zoneId())\n .build())\n .build());\n\n var defaultLoadBalancerSecurityGroupAttachment = new LoadBalancerSecurityGroupAttachment(\"defaultLoadBalancerSecurityGroupAttachment\", LoadBalancerSecurityGroupAttachmentArgs.builder()\n .securityGroupId(createSecurityGroup.id())\n .loadBalancerId(createAlb.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n createVpc:\n type: alicloud:vpc:Network\n name: create_vpc\n properties:\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n createVsw1:\n type: alicloud:vpc:Switch\n name: create_vsw_1\n properties:\n vpcId: ${createVpc.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 192.168.1.0/24\n vswitchName: ${name}\n createVsw2:\n type: alicloud:vpc:Switch\n name: create_vsw_2\n properties:\n vpcId: ${createVpc.id}\n zoneId: ${default.zones[1].id}\n cidrBlock: 192.168.2.0/24\n vswitchName: ${name}\n createSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: create_security_group\n properties:\n name: ${name}\n vpcId: ${createVpc.id}\n createAlb:\n type: alicloud:alb:LoadBalancer\n name: create_alb\n properties:\n loadBalancerName: ${name}\n loadBalancerEdition: Standard\n vpcId: ${createVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${createVsw2.id}\n zoneId: ${createVsw2.zoneId}\n - vswitchId: ${createVsw1.id}\n zoneId: ${createVsw1.zoneId}\n defaultLoadBalancerSecurityGroupAttachment:\n type: alicloud:alb:LoadBalancerSecurityGroupAttachment\n name: default\n properties:\n securityGroupId: ${createSecurityGroup.id}\n loadBalancerId: ${createAlb.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Security Group Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerSecurityGroupAttachment:LoadBalancerSecurityGroupAttachment example \u003cload_balancer_id\u003e:\u003csecurity_group_id\u003e\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -100453,7 +102280,7 @@
}
},
"alicloud:alb/loadBalancerZoneShiftedAttachment:LoadBalancerZoneShiftedAttachment": {
- "description": "Provides a Application Load Balancer (ALB) Load Balancer Zone Shifted Attachment resource.\n\nApplication load balancer start-stop zone.\n\nFor information about Application Load Balancer (ALB) Load Balancer Zone Shifted Attachment and how to use it, see [What is Load Balancer Zone Shifted Attachment](https://www.alibabacloud.com/help/en/).\n\n\u003e **NOTE:** Available since v1.242.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst albExampleTfVpc = new alicloud.vpc.Network(\"alb_example_tf_vpc\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst albExampleTfJ = new alicloud.vpc.Switch(\"alb_example_tf_j\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-j\",\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst albExampleTfK = new alicloud.vpc.Switch(\"alb_example_tf_k\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-k\",\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDSY0JJ = new alicloud.vpc.Switch(\"defaultDSY0JJ\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-f\",\n cidrBlock: \"192.168.3.0/24\",\n vswitchName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst default78TIYG = new alicloud.alb.LoadBalancer(\"default78TIYG\", {\n loadBalancerEdition: \"Standard\",\n vpcId: albExampleTfVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: albExampleTfJ.id,\n zoneId: albExampleTfJ.zoneId,\n },\n {\n vswitchId: albExampleTfK.id,\n zoneId: albExampleTfK.zoneId,\n },\n {\n vswitchId: defaultDSY0JJ.id,\n zoneId: defaultDSY0JJ.zoneId,\n },\n ],\n});\nconst _default = new alicloud.alb.LoadBalancerZoneShiftedAttachment(\"default\", {\n zoneId: defaultDSY0JJ.zoneId,\n vswitchId: defaultDSY0JJ.id,\n loadBalancerId: default78TIYG.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nalb_example_tf_vpc = alicloud.vpc.Network(\"alb_example_tf_vpc\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nalb_example_tf_j = alicloud.vpc.Switch(\"alb_example_tf_j\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-j\",\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result)\nalb_example_tf_k = alicloud.vpc.Switch(\"alb_example_tf_k\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-k\",\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result)\ndefault_dsy0_jj = alicloud.vpc.Switch(\"defaultDSY0JJ\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-f\",\n cidr_block=\"192.168.3.0/24\",\n vswitch_name=std.format(input=\"%s3\",\n args=[name]).result)\ndefault78_tiyg = alicloud.alb.LoadBalancer(\"default78TIYG\",\n load_balancer_edition=\"Standard\",\n vpc_id=alb_example_tf_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": alb_example_tf_j.id,\n \"zone_id\": alb_example_tf_j.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_k.id,\n \"zone_id\": alb_example_tf_k.zone_id,\n },\n {\n \"vswitch_id\": default_dsy0_jj.id,\n \"zone_id\": default_dsy0_jj.zone_id,\n },\n ])\ndefault = alicloud.alb.LoadBalancerZoneShiftedAttachment(\"default\",\n zone_id=default_dsy0_jj.zone_id,\n vswitch_id=default_dsy0_jj.id,\n load_balancer_id=default78_tiyg.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var albExampleTfVpc = new AliCloud.Vpc.Network(\"alb_example_tf_vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var albExampleTfJ = new AliCloud.Vpc.Switch(\"alb_example_tf_j\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-j\",\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var albExampleTfK = new AliCloud.Vpc.Switch(\"alb_example_tf_k\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-k\",\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDSY0JJ = new AliCloud.Vpc.Switch(\"defaultDSY0JJ\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-f\",\n CidrBlock = \"192.168.3.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var default78TIYG = new AliCloud.Alb.LoadBalancer(\"default78TIYG\", new()\n {\n LoadBalancerEdition = \"Standard\",\n VpcId = albExampleTfVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfJ.Id,\n ZoneId = albExampleTfJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfK.Id,\n ZoneId = albExampleTfK.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultDSY0JJ.Id,\n ZoneId = defaultDSY0JJ.ZoneId,\n },\n },\n });\n\n var @default = new AliCloud.Alb.LoadBalancerZoneShiftedAttachment(\"default\", new()\n {\n ZoneId = defaultDSY0JJ.ZoneId,\n VswitchId = defaultDSY0JJ.Id,\n LoadBalancerId = default78TIYG.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\talbExampleTfVpc, err := vpc.NewNetwork(ctx, \"alb_example_tf_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfJ, err := vpc.NewSwitch(ctx, \"alb_example_tf_j\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-j\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfK, err := vpc.NewSwitch(ctx, \"alb_example_tf_k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-k\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDSY0JJ, err := vpc.NewSwitch(ctx, \"defaultDSY0JJ\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-f\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.3.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault78TIYG, err := alb.NewLoadBalancer(ctx, \"default78TIYG\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfJ.ID(),\n\t\t\t\t\tZoneId: albExampleTfJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfK.ID(),\n\t\t\t\t\tZoneId: albExampleTfK.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerZoneShiftedAttachment(ctx, \"default\", \u0026alb.LoadBalancerZoneShiftedAttachmentArgs{\n\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\tLoadBalancerId: default78TIYG.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerZoneShiftedAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerZoneShiftedAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var albExampleTfVpc = new Network(\"albExampleTfVpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var albExampleTfJ = new Switch(\"albExampleTfJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-j\")\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .build());\n\n var albExampleTfK = new Switch(\"albExampleTfK\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-k\")\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDSY0JJ = new Switch(\"defaultDSY0JJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-f\")\n .cidrBlock(\"192.168.3.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .build());\n\n var default78TIYG = new LoadBalancer(\"default78TIYG\", LoadBalancerArgs.builder()\n .loadBalancerEdition(\"Standard\")\n .vpcId(albExampleTfVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfJ.id())\n .zoneId(albExampleTfJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfK.id())\n .zoneId(albExampleTfK.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultDSY0JJ.id())\n .zoneId(defaultDSY0JJ.zoneId())\n .build())\n .build());\n\n var default_ = new LoadBalancerZoneShiftedAttachment(\"default\", LoadBalancerZoneShiftedAttachmentArgs.builder()\n .zoneId(defaultDSY0JJ.zoneId())\n .vswitchId(defaultDSY0JJ.id())\n .loadBalancerId(default78TIYG.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n albExampleTfVpc:\n type: alicloud:vpc:Network\n name: alb_example_tf_vpc\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n albExampleTfJ:\n type: alicloud:vpc:Switch\n name: alb_example_tf_j\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-j\n cidrBlock: 192.168.1.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n albExampleTfK:\n type: alicloud:vpc:Switch\n name: alb_example_tf_k\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-k\n cidrBlock: 192.168.2.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n defaultDSY0JJ:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-f\n cidrBlock: 192.168.3.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n default78TIYG:\n type: alicloud:alb:LoadBalancer\n properties:\n loadBalancerEdition: Standard\n vpcId: ${albExampleTfVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${albExampleTfJ.id}\n zoneId: ${albExampleTfJ.zoneId}\n - vswitchId: ${albExampleTfK.id}\n zoneId: ${albExampleTfK.zoneId}\n - vswitchId: ${defaultDSY0JJ.id}\n zoneId: ${defaultDSY0JJ.zoneId}\n default:\n type: alicloud:alb:LoadBalancerZoneShiftedAttachment\n properties:\n zoneId: ${defaultDSY0JJ.zoneId}\n vswitchId: ${defaultDSY0JJ.id}\n loadBalancerId: ${default78TIYG.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Zone Shifted Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerZoneShiftedAttachment:LoadBalancerZoneShiftedAttachment example \u003cload_balancer_id\u003e:\u003cvswitch_id\u003e:\u003czone_id\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Load Balancer Zone Shifted Attachment resource.\n\nApplication load balancer start-stop zone.\n\nFor information about Application Load Balancer (ALB) Load Balancer Zone Shifted Attachment and how to use it, see [What is Load Balancer Zone Shifted Attachment](https://www.alibabacloud.com/help/en/).\n\n\u003e **NOTE:** Available since v1.242.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst albExampleTfVpc = new alicloud.vpc.Network(\"alb_example_tf_vpc\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst albExampleTfJ = new alicloud.vpc.Switch(\"alb_example_tf_j\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-j\",\n cidrBlock: \"192.168.1.0/24\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst albExampleTfK = new alicloud.vpc.Switch(\"alb_example_tf_k\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-k\",\n cidrBlock: \"192.168.2.0/24\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst defaultDSY0JJ = new alicloud.vpc.Switch(\"defaultDSY0JJ\", {\n vpcId: albExampleTfVpc.id,\n zoneId: \"cn-beijing-f\",\n cidrBlock: \"192.168.3.0/24\",\n vswitchName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n});\nconst default78TIYG = new alicloud.alb.LoadBalancer(\"default78TIYG\", {\n loadBalancerEdition: \"Standard\",\n vpcId: albExampleTfVpc.id,\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n addressType: \"Intranet\",\n addressAllocatedMode: \"Fixed\",\n zoneMappings: [\n {\n vswitchId: albExampleTfJ.id,\n zoneId: albExampleTfJ.zoneId,\n },\n {\n vswitchId: albExampleTfK.id,\n zoneId: albExampleTfK.zoneId,\n },\n {\n vswitchId: defaultDSY0JJ.id,\n zoneId: defaultDSY0JJ.zoneId,\n },\n ],\n});\nconst _default = new alicloud.alb.LoadBalancerZoneShiftedAttachment(\"default\", {\n zoneId: defaultDSY0JJ.zoneId,\n vswitchId: defaultDSY0JJ.id,\n loadBalancerId: default78TIYG.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nalb_example_tf_vpc = alicloud.vpc.Network(\"alb_example_tf_vpc\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nalb_example_tf_j = alicloud.vpc.Switch(\"alb_example_tf_j\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-j\",\n cidr_block=\"192.168.1.0/24\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result)\nalb_example_tf_k = alicloud.vpc.Switch(\"alb_example_tf_k\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-k\",\n cidr_block=\"192.168.2.0/24\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result)\ndefault_dsy0_jj = alicloud.vpc.Switch(\"defaultDSY0JJ\",\n vpc_id=alb_example_tf_vpc.id,\n zone_id=\"cn-beijing-f\",\n cidr_block=\"192.168.3.0/24\",\n vswitch_name=std.format(input=\"%s3\",\n args=[name]).result)\ndefault78_tiyg = alicloud.alb.LoadBalancer(\"default78TIYG\",\n load_balancer_edition=\"Standard\",\n vpc_id=alb_example_tf_vpc.id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n address_type=\"Intranet\",\n address_allocated_mode=\"Fixed\",\n zone_mappings=[\n {\n \"vswitch_id\": alb_example_tf_j.id,\n \"zone_id\": alb_example_tf_j.zone_id,\n },\n {\n \"vswitch_id\": alb_example_tf_k.id,\n \"zone_id\": alb_example_tf_k.zone_id,\n },\n {\n \"vswitch_id\": default_dsy0_jj.id,\n \"zone_id\": default_dsy0_jj.zone_id,\n },\n ])\ndefault = alicloud.alb.LoadBalancerZoneShiftedAttachment(\"default\",\n zone_id=default_dsy0_jj.zone_id,\n vswitch_id=default_dsy0_jj.id,\n load_balancer_id=default78_tiyg.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var albExampleTfVpc = new AliCloud.Vpc.Network(\"alb_example_tf_vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var albExampleTfJ = new AliCloud.Vpc.Switch(\"alb_example_tf_j\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-j\",\n CidrBlock = \"192.168.1.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var albExampleTfK = new AliCloud.Vpc.Switch(\"alb_example_tf_k\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-k\",\n CidrBlock = \"192.168.2.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultDSY0JJ = new AliCloud.Vpc.Switch(\"defaultDSY0JJ\", new()\n {\n VpcId = albExampleTfVpc.Id,\n ZoneId = \"cn-beijing-f\",\n CidrBlock = \"192.168.3.0/24\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n var default78TIYG = new AliCloud.Alb.LoadBalancer(\"default78TIYG\", new()\n {\n LoadBalancerEdition = \"Standard\",\n VpcId = albExampleTfVpc.Id,\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n AddressType = \"Intranet\",\n AddressAllocatedMode = \"Fixed\",\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfJ.Id,\n ZoneId = albExampleTfJ.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = albExampleTfK.Id,\n ZoneId = albExampleTfK.ZoneId,\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultDSY0JJ.Id,\n ZoneId = defaultDSY0JJ.ZoneId,\n },\n },\n });\n\n var @default = new AliCloud.Alb.LoadBalancerZoneShiftedAttachment(\"default\", new()\n {\n ZoneId = defaultDSY0JJ.ZoneId,\n VswitchId = defaultDSY0JJ.Id,\n LoadBalancerId = default78TIYG.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\talbExampleTfVpc, err := vpc.NewNetwork(ctx, \"alb_example_tf_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfJ, err := vpc.NewSwitch(ctx, \"alb_example_tf_j\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-j\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\talbExampleTfK, err := vpc.NewSwitch(ctx, \"alb_example_tf_k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-k\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDSY0JJ, err := vpc.NewSwitch(ctx, \"defaultDSY0JJ\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-f\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.3.0/24\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault78TIYG, err := alb.NewLoadBalancer(ctx, \"default78TIYG\", \u0026alb.LoadBalancerArgs{\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tVpcId: albExampleTfVpc.ID(),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tAddressType: pulumi.String(\"Intranet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfJ.ID(),\n\t\t\t\t\tZoneId: albExampleTfJ.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: albExampleTfK.ID(),\n\t\t\t\t\tZoneId: albExampleTfK.ZoneId,\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewLoadBalancerZoneShiftedAttachment(ctx, \"default\", \u0026alb.LoadBalancerZoneShiftedAttachmentArgs{\n\t\t\tZoneId: defaultDSY0JJ.ZoneId,\n\t\t\tVswitchId: defaultDSY0JJ.ID(),\n\t\t\tLoadBalancerId: default78TIYG.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.LoadBalancerZoneShiftedAttachment;\nimport com.pulumi.alicloud.alb.LoadBalancerZoneShiftedAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var albExampleTfVpc = new Network(\"albExampleTfVpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var albExampleTfJ = new Switch(\"albExampleTfJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-j\")\n .cidrBlock(\"192.168.1.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .build());\n\n var albExampleTfK = new Switch(\"albExampleTfK\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-k\")\n .cidrBlock(\"192.168.2.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .build());\n\n var defaultDSY0JJ = new Switch(\"defaultDSY0JJ\", SwitchArgs.builder()\n .vpcId(albExampleTfVpc.id())\n .zoneId(\"cn-beijing-f\")\n .cidrBlock(\"192.168.3.0/24\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .build());\n\n var default78TIYG = new LoadBalancer(\"default78TIYG\", LoadBalancerArgs.builder()\n .loadBalancerEdition(\"Standard\")\n .vpcId(albExampleTfVpc.id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .addressType(\"Intranet\")\n .addressAllocatedMode(\"Fixed\")\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfJ.id())\n .zoneId(albExampleTfJ.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(albExampleTfK.id())\n .zoneId(albExampleTfK.zoneId())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultDSY0JJ.id())\n .zoneId(defaultDSY0JJ.zoneId())\n .build())\n .build());\n\n var default_ = new LoadBalancerZoneShiftedAttachment(\"default\", LoadBalancerZoneShiftedAttachmentArgs.builder()\n .zoneId(defaultDSY0JJ.zoneId())\n .vswitchId(defaultDSY0JJ.id())\n .loadBalancerId(default78TIYG.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n albExampleTfVpc:\n type: alicloud:vpc:Network\n name: alb_example_tf_vpc\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n albExampleTfJ:\n type: alicloud:vpc:Switch\n name: alb_example_tf_j\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-j\n cidrBlock: 192.168.1.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n albExampleTfK:\n type: alicloud:vpc:Switch\n name: alb_example_tf_k\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-k\n cidrBlock: 192.168.2.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n defaultDSY0JJ:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${albExampleTfVpc.id}\n zoneId: cn-beijing-f\n cidrBlock: 192.168.3.0/24\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n default78TIYG:\n type: alicloud:alb:LoadBalancer\n properties:\n loadBalancerEdition: Standard\n vpcId: ${albExampleTfVpc.id}\n loadBalancerBillingConfig:\n payType: PayAsYouGo\n addressType: Intranet\n addressAllocatedMode: Fixed\n zoneMappings:\n - vswitchId: ${albExampleTfJ.id}\n zoneId: ${albExampleTfJ.zoneId}\n - vswitchId: ${albExampleTfK.id}\n zoneId: ${albExampleTfK.zoneId}\n - vswitchId: ${defaultDSY0JJ.id}\n zoneId: ${defaultDSY0JJ.zoneId}\n default:\n type: alicloud:alb:LoadBalancerZoneShiftedAttachment\n properties:\n zoneId: ${defaultDSY0JJ.zoneId}\n vswitchId: ${defaultDSY0JJ.id}\n loadBalancerId: ${default78TIYG.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Load Balancer Zone Shifted Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/loadBalancerZoneShiftedAttachment:LoadBalancerZoneShiftedAttachment example \u003cload_balancer_id\u003e:\u003cvswitch_id\u003e:\u003czone_id\u003e\n```\n\n",
"properties": {
"loadBalancerId": {
"type": "string",
@@ -100527,7 +102354,7 @@
}
},
"alicloud:alb/rule:Rule": {
- "description": "Provides a Application Load Balancer (ALB) Rule resource.\n\nFor information about Application Load Balancer (ALB) Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createrule).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n\u003e **NOTE:** This version only supports forwarding rules in the request direction.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 80,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultRule = new alicloud.alb.Rule(\"default\", {\n ruleName: name,\n listenerId: defaultListener.id,\n priority: 555,\n ruleConditions: [{\n cookieConfig: {\n values: [{\n key: \"created\",\n value: \"tf\",\n }],\n },\n type: \"Cookie\",\n }],\n ruleActions: [{\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n order: 9,\n type: \"ForwardGroup\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=80,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_rule = alicloud.alb.Rule(\"default\",\n rule_name=name,\n listener_id=default_listener.id,\n priority=555,\n rule_conditions=[{\n \"cookie_config\": {\n \"values\": [{\n \"key\": \"created\",\n \"value\": \"tf\",\n }],\n },\n \"type\": \"Cookie\",\n }],\n rule_actions=[{\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n \"order\": 9,\n \"type\": \"ForwardGroup\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 80,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultRule = new AliCloud.Alb.Rule(\"default\", new()\n {\n RuleName = name,\n ListenerId = defaultListener.Id,\n Priority = 555,\n RuleConditions = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleConditionArgs\n {\n CookieConfig = new AliCloud.Alb.Inputs.RuleRuleConditionCookieConfigArgs\n {\n Values = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleConditionCookieConfigValueArgs\n {\n Key = \"created\",\n Value = \"tf\",\n },\n },\n },\n Type = \"Cookie\",\n },\n },\n RuleActions = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleActionArgs\n {\n ForwardGroupConfig = new AliCloud.Alb.Inputs.RuleRuleActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n Order = 9,\n Type = \"ForwardGroup\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(80),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewRule(ctx, \"default\", \u0026alb.RuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t\tPriority: pulumi.Int(555),\n\t\t\tRuleConditions: alb.RuleRuleConditionArray{\n\t\t\t\t\u0026alb.RuleRuleConditionArgs{\n\t\t\t\t\tCookieConfig: \u0026alb.RuleRuleConditionCookieConfigArgs{\n\t\t\t\t\t\tValues: alb.RuleRuleConditionCookieConfigValueArray{\n\t\t\t\t\t\t\t\u0026alb.RuleRuleConditionCookieConfigValueArgs{\n\t\t\t\t\t\t\t\tKey: pulumi.String(\"created\"),\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"tf\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"Cookie\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRuleActions: alb.RuleRuleActionArray{\n\t\t\t\t\u0026alb.RuleRuleActionArgs{\n\t\t\t\t\tForwardGroupConfig: \u0026alb.RuleRuleActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.RuleRuleActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.RuleRuleActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tOrder: pulumi.Int(9),\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.Rule;\nimport com.pulumi.alicloud.alb.RuleArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleConditionArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleConditionCookieConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleActionArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleActionForwardGroupConfigArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(80)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .ruleName(name)\n .listenerId(defaultListener.id())\n .priority(555)\n .ruleConditions(RuleRuleConditionArgs.builder()\n .cookieConfig(RuleRuleConditionCookieConfigArgs.builder()\n .values(RuleRuleConditionCookieConfigValueArgs.builder()\n .key(\"created\")\n .value(\"tf\")\n .build())\n .build())\n .type(\"Cookie\")\n .build())\n .ruleActions(RuleRuleActionArgs.builder()\n .forwardGroupConfig(RuleRuleActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(RuleRuleActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .order(9)\n .type(\"ForwardGroup\")\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/rule:Rule example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Rule resource.\n\nFor information about Application Load Balancer (ALB) Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createrule).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n\u003e **NOTE:** This version only supports forwarding rules in the request direction.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.alb.getZones({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: defaultNetwork.id,\n cidrBlock: std.format({\n input: \"10.4.%d.0/24\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones[range.value].id),\n vswitchName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst defaultLoadBalancer = new alicloud.alb.LoadBalancer(\"default\", {\n vpcId: defaultNetwork.id,\n addressType: \"Internet\",\n addressAllocatedMode: \"Fixed\",\n loadBalancerName: name,\n loadBalancerEdition: \"Standard\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n loadBalancerBillingConfig: {\n payType: \"PayAsYouGo\",\n },\n tags: {\n Created: \"TF\",\n },\n zoneMappings: [\n {\n vswitchId: defaultSwitch[0].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n },\n {\n vswitchId: defaultSwitch[1].id,\n zoneId: _default.then(_default =\u003e _default.zones?.[1]?.id),\n },\n ],\n});\nconst defaultServerGroup = new alicloud.alb.ServerGroup(\"default\", {\n protocol: \"HTTP\",\n vpcId: defaultNetwork.id,\n serverGroupName: name,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n healthCheckConfig: {\n healthCheckEnabled: false,\n },\n stickySessionConfig: {\n stickySessionEnabled: false,\n },\n tags: {\n Created: \"TF\",\n },\n});\nconst defaultListener = new alicloud.alb.Listener(\"default\", {\n loadBalancerId: defaultLoadBalancer.id,\n listenerProtocol: \"HTTP\",\n listenerPort: 80,\n listenerDescription: name,\n defaultActions: [{\n type: \"ForwardGroup\",\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n }],\n});\nconst defaultRule = new alicloud.alb.Rule(\"default\", {\n ruleName: name,\n listenerId: defaultListener.id,\n priority: 555,\n ruleConditions: [{\n cookieConfig: {\n values: [{\n key: \"created\",\n value: \"tf\",\n }],\n },\n type: \"Cookie\",\n }],\n ruleActions: [{\n forwardGroupConfig: {\n serverGroupTuples: [{\n serverGroupId: defaultServerGroup.id,\n }],\n },\n order: 9,\n type: \"ForwardGroup\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.alb.get_zones()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=default_network.id,\n cidr_block=std.format(input=\"10.4.%d.0/24\",\n args=[range[\"value\"] + 1]).result,\n zone_id=default.zones[range[\"value\"]].id,\n vswitch_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\ndefault_load_balancer = alicloud.alb.LoadBalancer(\"default\",\n vpc_id=default_network.id,\n address_type=\"Internet\",\n address_allocated_mode=\"Fixed\",\n load_balancer_name=name,\n load_balancer_edition=\"Standard\",\n resource_group_id=default_get_resource_groups.groups[0].id,\n load_balancer_billing_config={\n \"pay_type\": \"PayAsYouGo\",\n },\n tags={\n \"Created\": \"TF\",\n },\n zone_mappings=[\n {\n \"vswitch_id\": default_switch[0].id,\n \"zone_id\": default.zones[0].id,\n },\n {\n \"vswitch_id\": default_switch[1].id,\n \"zone_id\": default.zones[1].id,\n },\n ])\ndefault_server_group = alicloud.alb.ServerGroup(\"default\",\n protocol=\"HTTP\",\n vpc_id=default_network.id,\n server_group_name=name,\n resource_group_id=default_get_resource_groups.groups[0].id,\n health_check_config={\n \"health_check_enabled\": False,\n },\n sticky_session_config={\n \"sticky_session_enabled\": False,\n },\n tags={\n \"Created\": \"TF\",\n })\ndefault_listener = alicloud.alb.Listener(\"default\",\n load_balancer_id=default_load_balancer.id,\n listener_protocol=\"HTTP\",\n listener_port=80,\n listener_description=name,\n default_actions=[{\n \"type\": \"ForwardGroup\",\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n }])\ndefault_rule = alicloud.alb.Rule(\"default\",\n rule_name=name,\n listener_id=default_listener.id,\n priority=555,\n rule_conditions=[{\n \"cookie_config\": {\n \"values\": [{\n \"key\": \"created\",\n \"value\": \"tf\",\n }],\n },\n \"type\": \"Cookie\",\n }],\n rule_actions=[{\n \"forward_group_config\": {\n \"server_group_tuples\": [{\n \"server_group_id\": default_server_group.id,\n }],\n },\n \"order\": 9,\n \"type\": \"ForwardGroup\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Alb.GetZones.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = Std.Format.Invoke(new()\n {\n Input = \"10.4.%d.0/24\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[range.Value].Id),\n VswitchName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var defaultLoadBalancer = new AliCloud.Alb.LoadBalancer(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n AddressType = \"Internet\",\n AddressAllocatedMode = \"Fixed\",\n LoadBalancerName = name,\n LoadBalancerEdition = \"Standard\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n LoadBalancerBillingConfig = new AliCloud.Alb.Inputs.LoadBalancerLoadBalancerBillingConfigArgs\n {\n PayType = \"PayAsYouGo\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n ZoneMappings = new[]\n {\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[0].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n },\n new AliCloud.Alb.Inputs.LoadBalancerZoneMappingArgs\n {\n VswitchId = defaultSwitch[1].Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id)),\n },\n },\n });\n\n var defaultServerGroup = new AliCloud.Alb.ServerGroup(\"default\", new()\n {\n Protocol = \"HTTP\",\n VpcId = defaultNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckEnabled = false,\n },\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = false,\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n var defaultListener = new AliCloud.Alb.Listener(\"default\", new()\n {\n LoadBalancerId = defaultLoadBalancer.Id,\n ListenerProtocol = \"HTTP\",\n ListenerPort = 80,\n ListenerDescription = name,\n DefaultActions = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionArgs\n {\n Type = \"ForwardGroup\",\n ForwardGroupConfig = new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n },\n },\n });\n\n var defaultRule = new AliCloud.Alb.Rule(\"default\", new()\n {\n RuleName = name,\n ListenerId = defaultListener.Id,\n Priority = 555,\n RuleConditions = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleConditionArgs\n {\n CookieConfig = new AliCloud.Alb.Inputs.RuleRuleConditionCookieConfigArgs\n {\n Values = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleConditionCookieConfigValueArgs\n {\n Key = \"created\",\n Value = \"tf\",\n },\n },\n },\n Type = \"Cookie\",\n },\n },\n RuleActions = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleActionArgs\n {\n ForwardGroupConfig = new AliCloud.Alb.Inputs.RuleRuleActionForwardGroupConfigArgs\n {\n ServerGroupTuples = new[]\n {\n new AliCloud.Alb.Inputs.RuleRuleActionForwardGroupConfigServerGroupTupleArgs\n {\n ServerGroupId = defaultServerGroup.Id,\n },\n },\n },\n Order = 9,\n Type = \"ForwardGroup\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alb.GetZones(ctx, \u0026alb.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"10.4.%d.0/24\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultSwitch []*vpc.Switch\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := vpc.NewSwitch(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026vpc.SwitchArgs{\n\t\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\t\tCidrBlock: pulumi.String(invokeFormat.Result),\n\t\t\t\tZoneId: _default.Zones[val0].Id,\n\t\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSwitch = append(defaultSwitch, __res)\n\t\t}\n\t\tdefaultLoadBalancer, err := alb.NewLoadBalancer(ctx, \"default\", \u0026alb.LoadBalancerArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tAddressType: pulumi.String(\"Internet\"),\n\t\t\tAddressAllocatedMode: pulumi.String(\"Fixed\"),\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tLoadBalancerEdition: pulumi.String(\"Standard\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tLoadBalancerBillingConfig: \u0026alb.LoadBalancerLoadBalancerBillingConfigArgs{\n\t\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tZoneMappings: alb.LoadBalancerZoneMappingArray{\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[0].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\t\t},\n\t\t\t\t\u0026alb.LoadBalancerZoneMappingArgs{\n\t\t\t\t\tVswitchId: defaultSwitch[1].ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Zones[1].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultServerGroup, err := alb.NewServerGroup(ctx, \"default\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(false),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultListener, err := alb.NewListener(ctx, \"default\", \u0026alb.ListenerArgs{\n\t\t\tLoadBalancerId: defaultLoadBalancer.ID(),\n\t\t\tListenerProtocol: pulumi.String(\"HTTP\"),\n\t\t\tListenerPort: pulumi.Int(80),\n\t\t\tListenerDescription: pulumi.String(name),\n\t\t\tDefaultActions: alb.ListenerDefaultActionArray{\n\t\t\t\t\u0026alb.ListenerDefaultActionArgs{\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t\tForwardGroupConfig: \u0026alb.ListenerDefaultActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewRule(ctx, \"default\", \u0026alb.RuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tListenerId: defaultListener.ID(),\n\t\t\tPriority: pulumi.Int(555),\n\t\t\tRuleConditions: alb.RuleRuleConditionArray{\n\t\t\t\t\u0026alb.RuleRuleConditionArgs{\n\t\t\t\t\tCookieConfig: \u0026alb.RuleRuleConditionCookieConfigArgs{\n\t\t\t\t\t\tValues: alb.RuleRuleConditionCookieConfigValueArray{\n\t\t\t\t\t\t\t\u0026alb.RuleRuleConditionCookieConfigValueArgs{\n\t\t\t\t\t\t\t\tKey: pulumi.String(\"created\"),\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"tf\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"Cookie\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRuleActions: alb.RuleRuleActionArray{\n\t\t\t\t\u0026alb.RuleRuleActionArgs{\n\t\t\t\t\tForwardGroupConfig: \u0026alb.RuleRuleActionForwardGroupConfigArgs{\n\t\t\t\t\t\tServerGroupTuples: alb.RuleRuleActionForwardGroupConfigServerGroupTupleArray{\n\t\t\t\t\t\t\t\u0026alb.RuleRuleActionForwardGroupConfigServerGroupTupleArgs{\n\t\t\t\t\t\t\t\tServerGroupId: defaultServerGroup.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tOrder: pulumi.Int(9),\n\t\t\t\t\tType: pulumi.String(\"ForwardGroup\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.AlbFunctions;\nimport com.pulumi.alicloud.alb.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.alb.LoadBalancer;\nimport com.pulumi.alicloud.alb.LoadBalancerArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerLoadBalancerBillingConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.LoadBalancerZoneMappingArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.Listener;\nimport com.pulumi.alicloud.alb.ListenerArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.alicloud.alb.inputs.ListenerDefaultActionForwardGroupConfigArgs;\nimport com.pulumi.alicloud.alb.Rule;\nimport com.pulumi.alicloud.alb.RuleArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleConditionArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleConditionCookieConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleActionArgs;\nimport com.pulumi.alicloud.alb.inputs.RuleRuleActionForwardGroupConfigArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlbFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(StdFunctions.format(FormatArgs.builder()\n .input(\"10.4.%d.0/24\")\n .args(range.value() + 1)\n .build()).result())\n .zoneId(default_.zones()[range.value()].id())\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n var defaultLoadBalancer = new LoadBalancer(\"defaultLoadBalancer\", LoadBalancerArgs.builder()\n .vpcId(defaultNetwork.id())\n .addressType(\"Internet\")\n .addressAllocatedMode(\"Fixed\")\n .loadBalancerName(name)\n .loadBalancerEdition(\"Standard\")\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .loadBalancerBillingConfig(LoadBalancerLoadBalancerBillingConfigArgs.builder()\n .payType(\"PayAsYouGo\")\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .zoneMappings( \n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[0].id())\n .zoneId(default_.zones()[0].id())\n .build(),\n LoadBalancerZoneMappingArgs.builder()\n .vswitchId(defaultSwitch[1].id())\n .zoneId(default_.zones()[1].id())\n .build())\n .build());\n\n var defaultServerGroup = new ServerGroup(\"defaultServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(defaultNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckEnabled(false)\n .build())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(false)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n var defaultListener = new Listener(\"defaultListener\", ListenerArgs.builder()\n .loadBalancerId(defaultLoadBalancer.id())\n .listenerProtocol(\"HTTP\")\n .listenerPort(80)\n .listenerDescription(name)\n .defaultActions(ListenerDefaultActionArgs.builder()\n .type(\"ForwardGroup\")\n .forwardGroupConfig(ListenerDefaultActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(ListenerDefaultActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .build())\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .ruleName(name)\n .listenerId(defaultListener.id())\n .priority(555)\n .ruleConditions(RuleRuleConditionArgs.builder()\n .cookieConfig(RuleRuleConditionCookieConfigArgs.builder()\n .values(RuleRuleConditionCookieConfigValueArgs.builder()\n .key(\"created\")\n .value(\"tf\")\n .build())\n .build())\n .type(\"Cookie\")\n .build())\n .ruleActions(RuleRuleActionArgs.builder()\n .forwardGroupConfig(RuleRuleActionForwardGroupConfigArgs.builder()\n .serverGroupTuples(RuleRuleActionForwardGroupConfigServerGroupTupleArgs.builder()\n .serverGroupId(defaultServerGroup.id())\n .build())\n .build())\n .order(9)\n .type(\"ForwardGroup\")\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/rule:Rule example \u003cid\u003e\n```\n\n",
"properties": {
"direction": {
"type": "string",
@@ -100670,7 +102497,7 @@
}
},
"alicloud:alb/securityPolicy:SecurityPolicy": {
- "description": "Provides a ALB Security Policy resource.\n\nFor information about ALB Security Policy and how to use it, see [What is Security Policy](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createsecuritypolicy).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.alb.SecurityPolicy(\"default\", {\n securityPolicyName: \"tf_example\",\n tlsVersions: [\"TLSv1.0\"],\n ciphers: [\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.alb.SecurityPolicy(\"default\",\n security_policy_name=\"tf_example\",\n tls_versions=[\"TLSv1.0\"],\n ciphers=[\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Alb.SecurityPolicy(\"default\", new()\n {\n SecurityPolicyName = \"tf_example\",\n TlsVersions = new[]\n {\n \"TLSv1.0\",\n },\n Ciphers = new[]\n {\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := alb.NewSecurityPolicy(ctx, \"default\", \u0026alb.SecurityPolicyArgs{\n\t\t\tSecurityPolicyName: pulumi.String(\"tf_example\"),\n\t\t\tTlsVersions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"TLSv1.0\"),\n\t\t\t},\n\t\t\tCiphers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ECDHE-ECDSA-AES128-SHA\"),\n\t\t\t\tpulumi.String(\"AES256-SHA\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.SecurityPolicy;\nimport com.pulumi.alicloud.alb.SecurityPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityPolicy(\"default\", SecurityPolicyArgs.builder()\n .securityPolicyName(\"tf_example\")\n .tlsVersions(\"TLSv1.0\")\n .ciphers( \n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:alb:SecurityPolicy\n properties:\n securityPolicyName: tf_example\n tlsVersions:\n - TLSv1.0\n ciphers:\n - ECDHE-ECDSA-AES128-SHA\n - AES256-SHA\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nALB Security Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/securityPolicy:SecurityPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ALB Security Policy resource.\n\nFor information about ALB Security Policy and how to use it, see [What is Security Policy](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createsecuritypolicy).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.alb.SecurityPolicy(\"default\", {\n securityPolicyName: \"tf_example\",\n tlsVersions: [\"TLSv1.0\"],\n ciphers: [\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.alb.SecurityPolicy(\"default\",\n security_policy_name=\"tf_example\",\n tls_versions=[\"TLSv1.0\"],\n ciphers=[\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Alb.SecurityPolicy(\"default\", new()\n {\n SecurityPolicyName = \"tf_example\",\n TlsVersions = new[]\n {\n \"TLSv1.0\",\n },\n Ciphers = new[]\n {\n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := alb.NewSecurityPolicy(ctx, \"default\", \u0026alb.SecurityPolicyArgs{\n\t\t\tSecurityPolicyName: pulumi.String(\"tf_example\"),\n\t\t\tTlsVersions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"TLSv1.0\"),\n\t\t\t},\n\t\t\tCiphers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ECDHE-ECDSA-AES128-SHA\"),\n\t\t\t\tpulumi.String(\"AES256-SHA\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.alb.SecurityPolicy;\nimport com.pulumi.alicloud.alb.SecurityPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityPolicy(\"default\", SecurityPolicyArgs.builder()\n .securityPolicyName(\"tf_example\")\n .tlsVersions(\"TLSv1.0\")\n .ciphers( \n \"ECDHE-ECDSA-AES128-SHA\",\n \"AES256-SHA\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:alb:SecurityPolicy\n properties:\n securityPolicyName: tf_example\n tlsVersions:\n - TLSv1.0\n ciphers:\n - ECDHE-ECDSA-AES128-SHA\n - AES256-SHA\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nALB Security Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/securityPolicy:SecurityPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"ciphers": {
"type": "array",
@@ -100802,7 +102629,7 @@
}
},
"alicloud:alb/serverGroup:ServerGroup": {
- "description": "Provides a Application Load Balancer (ALB) Server Group resource.\n\n\n\nFor information about Application Load Balancer (ALB) Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.resourcemanager.getResourceGroups({});\nconst exampleGetZones = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = exampleGetZones.then(exampleGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: exampleGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/16\",\n vpcId: exampleNetwork.id,\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n description: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n});\nconst exampleServerGroup = new alicloud.alb.ServerGroup(\"example\", {\n protocol: \"HTTP\",\n vpcId: exampleNetwork.id,\n serverGroupName: name,\n resourceGroupId: example.then(example =\u003e example.groups?.[0]?.id),\n stickySessionConfig: {\n stickySessionEnabled: true,\n cookie: \"tf-example\",\n stickySessionType: \"Server\",\n },\n healthCheckConfig: {\n healthCheckConnectPort: 46325,\n healthCheckEnabled: true,\n healthCheckHost: \"tf-example.com\",\n healthCheckCodes: [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n healthCheckHttpVersion: \"HTTP1.1\",\n healthCheckInterval: 2,\n healthCheckMethod: \"HEAD\",\n healthCheckPath: \"/tf-example\",\n healthCheckProtocol: \"HTTP\",\n healthCheckTimeout: 5,\n healthyThreshold: 3,\n unhealthyThreshold: 3,\n },\n servers: [{\n description: name,\n port: 80,\n serverId: exampleInstance.id,\n serverIp: exampleInstance.privateIp,\n serverType: \"Ecs\",\n weight: 10,\n }],\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.resourcemanager.get_resource_groups()\nexample_get_zones = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/16\",\n vpc_id=example_network.id,\n zone_id=example_get_zones.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n description=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example_get_zones.zones[0].id,\n instance_name=name,\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id)\nexample_server_group = alicloud.alb.ServerGroup(\"example\",\n protocol=\"HTTP\",\n vpc_id=example_network.id,\n server_group_name=name,\n resource_group_id=example.groups[0].id,\n sticky_session_config={\n \"sticky_session_enabled\": True,\n \"cookie\": \"tf-example\",\n \"sticky_session_type\": \"Server\",\n },\n health_check_config={\n \"health_check_connect_port\": 46325,\n \"health_check_enabled\": True,\n \"health_check_host\": \"tf-example.com\",\n \"health_check_codes\": [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n \"health_check_http_version\": \"HTTP1.1\",\n \"health_check_interval\": 2,\n \"health_check_method\": \"HEAD\",\n \"health_check_path\": \"/tf-example\",\n \"health_check_protocol\": \"HTTP\",\n \"health_check_timeout\": 5,\n \"healthy_threshold\": 3,\n \"unhealthy_threshold\": 3,\n },\n servers=[{\n \"description\": name,\n \"port\": 80,\n \"server_id\": example_instance.id,\n \"server_ip\": example_instance.private_ip,\n \"server_type\": \"Ecs\",\n \"weight\": 10,\n }],\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var exampleGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/16\",\n VpcId = exampleNetwork.Id,\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n Description = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleServerGroup = new AliCloud.Alb.ServerGroup(\"example\", new()\n {\n Protocol = \"HTTP\",\n VpcId = exampleNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = example.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = true,\n Cookie = \"tf-example\",\n StickySessionType = \"Server\",\n },\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckConnectPort = 46325,\n HealthCheckEnabled = true,\n HealthCheckHost = \"tf-example.com\",\n HealthCheckCodes = new[]\n {\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n },\n HealthCheckHttpVersion = \"HTTP1.1\",\n HealthCheckInterval = 2,\n HealthCheckMethod = \"HEAD\",\n HealthCheckPath = \"/tf-example\",\n HealthCheckProtocol = \"HTTP\",\n HealthCheckTimeout = 5,\n HealthyThreshold = 3,\n UnhealthyThreshold = 3,\n },\n Servers = new[]\n {\n new AliCloud.Alb.Inputs.ServerGroupServerArgs\n {\n Description = name,\n Port = 80,\n ServerId = exampleInstance.Id,\n ServerIp = exampleInstance.PrivateIp,\n ServerType = \"Ecs\",\n Weight = 10,\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewServerGroup(ctx, \"example\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(example.Groups[0].Id),\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(true),\n\t\t\t\tCookie: pulumi.String(\"tf-example\"),\n\t\t\t\tStickySessionType: pulumi.String(\"Server\"),\n\t\t\t},\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckConnectPort: pulumi.Int(46325),\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(true),\n\t\t\t\tHealthCheckHost: pulumi.String(\"tf-example.com\"),\n\t\t\t\tHealthCheckCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"http_2xx\"),\n\t\t\t\t\tpulumi.String(\"http_3xx\"),\n\t\t\t\t\tpulumi.String(\"http_4xx\"),\n\t\t\t\t},\n\t\t\t\tHealthCheckHttpVersion: pulumi.String(\"HTTP1.1\"),\n\t\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\t\tHealthCheckMethod: pulumi.String(\"HEAD\"),\n\t\t\t\tHealthCheckPath: pulumi.String(\"/tf-example\"),\n\t\t\t\tHealthCheckProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tHealthCheckTimeout: pulumi.Int(5),\n\t\t\t\tHealthyThreshold: pulumi.Int(3),\n\t\t\t\tUnhealthyThreshold: pulumi.Int(3),\n\t\t\t},\n\t\t\tServers: alb.ServerGroupServerArray{\n\t\t\t\t\u0026alb.ServerGroupServerArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tServerId: exampleInstance.ID(),\n\t\t\t\t\tServerIp: exampleInstance.PrivateIp,\n\t\t\t\t\tServerType: pulumi.String(\"Ecs\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupServerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var exampleGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(exampleGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .vpcId(exampleNetwork.id())\n .zoneId(exampleGetZones.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .description(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(exampleGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleServerGroup = new ServerGroup(\"exampleServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(exampleNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(example.groups()[0].id())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(true)\n .cookie(\"tf-example\")\n .stickySessionType(\"Server\")\n .build())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckConnectPort(46325)\n .healthCheckEnabled(true)\n .healthCheckHost(\"tf-example.com\")\n .healthCheckCodes( \n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\")\n .healthCheckHttpVersion(\"HTTP1.1\")\n .healthCheckInterval(2)\n .healthCheckMethod(\"HEAD\")\n .healthCheckPath(\"/tf-example\")\n .healthCheckProtocol(\"HTTP\")\n .healthCheckTimeout(5)\n .healthyThreshold(3)\n .unhealthyThreshold(3)\n .build())\n .servers(ServerGroupServerArgs.builder()\n .description(name)\n .port(80)\n .serverId(exampleInstance.id())\n .serverIp(exampleInstance.privateIp())\n .serverType(\"Ecs\")\n .weight(10)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/16\n vpcId: ${exampleNetwork.id}\n zoneId: ${exampleGetZones.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n description: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${exampleGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n exampleServerGroup:\n type: alicloud:alb:ServerGroup\n name: example\n properties:\n protocol: HTTP\n vpcId: ${exampleNetwork.id}\n serverGroupName: ${name}\n resourceGroupId: ${example.groups[0].id}\n stickySessionConfig:\n stickySessionEnabled: true\n cookie: tf-example\n stickySessionType: Server\n healthCheckConfig:\n healthCheckConnectPort: '46325'\n healthCheckEnabled: true\n healthCheckHost: tf-example.com\n healthCheckCodes:\n - http_2xx\n - http_3xx\n - http_4xx\n healthCheckHttpVersion: HTTP1.1\n healthCheckInterval: '2'\n healthCheckMethod: HEAD\n healthCheckPath: /tf-example\n healthCheckProtocol: HTTP\n healthCheckTimeout: 5\n healthyThreshold: 3\n unhealthyThreshold: 3\n servers:\n - description: ${name}\n port: 80\n serverId: ${exampleInstance.id}\n serverIp: ${exampleInstance.privateIp}\n serverType: Ecs\n weight: 10\n tags:\n Created: TF\nvariables:\n example:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n exampleGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${exampleGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Load Balancer (ALB) Server Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/serverGroup:ServerGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Load Balancer (ALB) Server Group resource.\n\n\n\nFor information about Application Load Balancer (ALB) Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.resourcemanager.getResourceGroups({});\nconst exampleGetZones = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = exampleGetZones.then(exampleGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: exampleGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/16\",\n vpcId: exampleNetwork.id,\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n description: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n});\nconst exampleServerGroup = new alicloud.alb.ServerGroup(\"example\", {\n protocol: \"HTTP\",\n vpcId: exampleNetwork.id,\n serverGroupName: name,\n resourceGroupId: example.then(example =\u003e example.groups?.[0]?.id),\n stickySessionConfig: {\n stickySessionEnabled: true,\n cookie: \"tf-example\",\n stickySessionType: \"Server\",\n },\n healthCheckConfig: {\n healthCheckConnectPort: 46325,\n healthCheckEnabled: true,\n healthCheckHost: \"tf-example.com\",\n healthCheckCodes: [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n healthCheckHttpVersion: \"HTTP1.1\",\n healthCheckInterval: 2,\n healthCheckMethod: \"HEAD\",\n healthCheckPath: \"/tf-example\",\n healthCheckProtocol: \"HTTP\",\n healthCheckTimeout: 5,\n healthyThreshold: 3,\n unhealthyThreshold: 3,\n },\n servers: [{\n description: name,\n port: 80,\n serverId: exampleInstance.id,\n serverIp: exampleInstance.privateIp,\n serverType: \"Ecs\",\n weight: 10,\n }],\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.resourcemanager.get_resource_groups()\nexample_get_zones = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/16\",\n vpc_id=example_network.id,\n zone_id=example_get_zones.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n description=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example_get_zones.zones[0].id,\n instance_name=name,\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id)\nexample_server_group = alicloud.alb.ServerGroup(\"example\",\n protocol=\"HTTP\",\n vpc_id=example_network.id,\n server_group_name=name,\n resource_group_id=example.groups[0].id,\n sticky_session_config={\n \"sticky_session_enabled\": True,\n \"cookie\": \"tf-example\",\n \"sticky_session_type\": \"Server\",\n },\n health_check_config={\n \"health_check_connect_port\": 46325,\n \"health_check_enabled\": True,\n \"health_check_host\": \"tf-example.com\",\n \"health_check_codes\": [\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n ],\n \"health_check_http_version\": \"HTTP1.1\",\n \"health_check_interval\": 2,\n \"health_check_method\": \"HEAD\",\n \"health_check_path\": \"/tf-example\",\n \"health_check_protocol\": \"HTTP\",\n \"health_check_timeout\": 5,\n \"healthy_threshold\": 3,\n \"unhealthy_threshold\": 3,\n },\n servers=[{\n \"description\": name,\n \"port\": 80,\n \"server_id\": example_instance.id,\n \"server_ip\": example_instance.private_ip,\n \"server_type\": \"Ecs\",\n \"weight\": 10,\n }],\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var exampleGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/16\",\n VpcId = exampleNetwork.Id,\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n Description = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleServerGroup = new AliCloud.Alb.ServerGroup(\"example\", new()\n {\n Protocol = \"HTTP\",\n VpcId = exampleNetwork.Id,\n ServerGroupName = name,\n ResourceGroupId = example.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n StickySessionConfig = new AliCloud.Alb.Inputs.ServerGroupStickySessionConfigArgs\n {\n StickySessionEnabled = true,\n Cookie = \"tf-example\",\n StickySessionType = \"Server\",\n },\n HealthCheckConfig = new AliCloud.Alb.Inputs.ServerGroupHealthCheckConfigArgs\n {\n HealthCheckConnectPort = 46325,\n HealthCheckEnabled = true,\n HealthCheckHost = \"tf-example.com\",\n HealthCheckCodes = new[]\n {\n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\",\n },\n HealthCheckHttpVersion = \"HTTP1.1\",\n HealthCheckInterval = 2,\n HealthCheckMethod = \"HEAD\",\n HealthCheckPath = \"/tf-example\",\n HealthCheckProtocol = \"HTTP\",\n HealthCheckTimeout = 5,\n HealthyThreshold = 3,\n UnhealthyThreshold = 3,\n },\n Servers = new[]\n {\n new AliCloud.Alb.Inputs.ServerGroupServerArgs\n {\n Description = name,\n Port = 80,\n ServerId = exampleInstance.Id,\n ServerIp = exampleInstance.PrivateIp,\n ServerType = \"Ecs\",\n Weight = 10,\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alb.NewServerGroup(ctx, \"example\", \u0026alb.ServerGroupArgs{\n\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tServerGroupName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(example.Groups[0].Id),\n\t\t\tStickySessionConfig: \u0026alb.ServerGroupStickySessionConfigArgs{\n\t\t\t\tStickySessionEnabled: pulumi.Bool(true),\n\t\t\t\tCookie: pulumi.String(\"tf-example\"),\n\t\t\t\tStickySessionType: pulumi.String(\"Server\"),\n\t\t\t},\n\t\t\tHealthCheckConfig: \u0026alb.ServerGroupHealthCheckConfigArgs{\n\t\t\t\tHealthCheckConnectPort: pulumi.Int(46325),\n\t\t\t\tHealthCheckEnabled: pulumi.Bool(true),\n\t\t\t\tHealthCheckHost: pulumi.String(\"tf-example.com\"),\n\t\t\t\tHealthCheckCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"http_2xx\"),\n\t\t\t\t\tpulumi.String(\"http_3xx\"),\n\t\t\t\t\tpulumi.String(\"http_4xx\"),\n\t\t\t\t},\n\t\t\t\tHealthCheckHttpVersion: pulumi.String(\"HTTP1.1\"),\n\t\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\t\tHealthCheckMethod: pulumi.String(\"HEAD\"),\n\t\t\t\tHealthCheckPath: pulumi.String(\"/tf-example\"),\n\t\t\t\tHealthCheckProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tHealthCheckTimeout: pulumi.Int(5),\n\t\t\t\tHealthyThreshold: pulumi.Int(3),\n\t\t\t\tUnhealthyThreshold: pulumi.Int(3),\n\t\t\t},\n\t\t\tServers: alb.ServerGroupServerArray{\n\t\t\t\t\u0026alb.ServerGroupServerArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tServerId: exampleInstance.ID(),\n\t\t\t\t\tServerIp: exampleInstance.PrivateIp,\n\t\t\t\t\tServerType: pulumi.String(\"Ecs\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.alb.ServerGroup;\nimport com.pulumi.alicloud.alb.ServerGroupArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;\nimport com.pulumi.alicloud.alb.inputs.ServerGroupServerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var exampleGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(exampleGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .vpcId(exampleNetwork.id())\n .zoneId(exampleGetZones.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .description(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(exampleGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleServerGroup = new ServerGroup(\"exampleServerGroup\", ServerGroupArgs.builder()\n .protocol(\"HTTP\")\n .vpcId(exampleNetwork.id())\n .serverGroupName(name)\n .resourceGroupId(example.groups()[0].id())\n .stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()\n .stickySessionEnabled(true)\n .cookie(\"tf-example\")\n .stickySessionType(\"Server\")\n .build())\n .healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()\n .healthCheckConnectPort(46325)\n .healthCheckEnabled(true)\n .healthCheckHost(\"tf-example.com\")\n .healthCheckCodes( \n \"http_2xx\",\n \"http_3xx\",\n \"http_4xx\")\n .healthCheckHttpVersion(\"HTTP1.1\")\n .healthCheckInterval(2)\n .healthCheckMethod(\"HEAD\")\n .healthCheckPath(\"/tf-example\")\n .healthCheckProtocol(\"HTTP\")\n .healthCheckTimeout(5)\n .healthyThreshold(3)\n .unhealthyThreshold(3)\n .build())\n .servers(ServerGroupServerArgs.builder()\n .description(name)\n .port(80)\n .serverId(exampleInstance.id())\n .serverIp(exampleInstance.privateIp())\n .serverType(\"Ecs\")\n .weight(10)\n .build())\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/16\n vpcId: ${exampleNetwork.id}\n zoneId: ${exampleGetZones.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n description: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${exampleGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n exampleServerGroup:\n type: alicloud:alb:ServerGroup\n name: example\n properties:\n protocol: HTTP\n vpcId: ${exampleNetwork.id}\n serverGroupName: ${name}\n resourceGroupId: ${example.groups[0].id}\n stickySessionConfig:\n stickySessionEnabled: true\n cookie: tf-example\n stickySessionType: Server\n healthCheckConfig:\n healthCheckConnectPort: '46325'\n healthCheckEnabled: true\n healthCheckHost: tf-example.com\n healthCheckCodes:\n - http_2xx\n - http_3xx\n - http_4xx\n healthCheckHttpVersion: HTTP1.1\n healthCheckInterval: '2'\n healthCheckMethod: HEAD\n healthCheckPath: /tf-example\n healthCheckProtocol: HTTP\n healthCheckTimeout: 5\n healthyThreshold: 3\n unhealthyThreshold: 3\n servers:\n - description: ${name}\n port: 80\n serverId: ${exampleInstance.id}\n serverIp: ${exampleInstance.privateIp}\n serverType: Ecs\n weight: 10\n tags:\n Created: TF\nvariables:\n example:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n exampleGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${exampleGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Load Balancer (ALB) Server Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alb/serverGroup:ServerGroup example \u003cid\u003e\n```\n\n",
"properties": {
"connectionDrainConfig": {
"$ref": "#/types/alicloud:alb/ServerGroupConnectionDrainConfig:ServerGroupConnectionDrainConfig",
@@ -101102,7 +102929,7 @@
}
},
"alicloud:aligreen/auditCallback:AuditCallback": {
- "description": "Provides a Aligreen Audit Callback resource.\n\nCallback notification after detection is completed.\n\nFor information about Aligreen Audit Callback and how to use it, see [What is Audit Callback](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateAuditCallback).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.AuditCallback(\"default\", {\n cryptType: \"SM3\",\n auditCallbackName: name,\n url: \"https://www.aliyun.com/\",\n callbackTypes: [\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n ],\n callbackSuggestions: [\n \"block\",\n \"review\",\n \"pass\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.AuditCallback(\"default\",\n crypt_type=\"SM3\",\n audit_callback_name=name,\n url=\"https://www.aliyun.com/\",\n callback_types=[\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n ],\n callback_suggestions=[\n \"block\",\n \"review\",\n \"pass\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.AuditCallback(\"default\", new()\n {\n CryptType = \"SM3\",\n AuditCallbackName = name,\n Url = \"https://www.aliyun.com/\",\n CallbackTypes = new[]\n {\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n },\n CallbackSuggestions = new[]\n {\n \"block\",\n \"review\",\n \"pass\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewAuditCallback(ctx, \"default\", \u0026aligreen.AuditCallbackArgs{\n\t\t\tCryptType: pulumi.String(\"SM3\"),\n\t\t\tAuditCallbackName: pulumi.String(name),\n\t\t\tUrl: pulumi.String(\"https://www.aliyun.com/\"),\n\t\t\tCallbackTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aliyunAudit\"),\n\t\t\t\tpulumi.String(\"selfAduit\"),\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tCallbackSuggestions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\tpulumi.String(\"review\"),\n\t\t\t\tpulumi.String(\"pass\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.AuditCallback;\nimport com.pulumi.alicloud.aligreen.AuditCallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new AuditCallback(\"default\", AuditCallbackArgs.builder()\n .cryptType(\"SM3\")\n .auditCallbackName(name)\n .url(\"https://www.aliyun.com/\")\n .callbackTypes( \n \"aliyunAudit\",\n \"selfAduit\",\n \"example\")\n .callbackSuggestions( \n \"block\",\n \"review\",\n \"pass\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:AuditCallback\n properties:\n cryptType: SM3\n auditCallbackName: ${name}\n url: https://www.aliyun.com/\n callbackTypes:\n - aliyunAudit\n - selfAduit\n - example\n callbackSuggestions:\n - block\n - review\n - pass\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAligreen Audit Callback can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/auditCallback:AuditCallback example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Aligreen Audit Callback resource.\n\nCallback notification after detection is completed.\n\nFor information about Aligreen Audit Callback and how to use it, see [What is Audit Callback](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateAuditCallback).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.AuditCallback(\"default\", {\n cryptType: \"SM3\",\n auditCallbackName: name,\n url: \"https://www.aliyun.com/\",\n callbackTypes: [\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n ],\n callbackSuggestions: [\n \"block\",\n \"review\",\n \"pass\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.AuditCallback(\"default\",\n crypt_type=\"SM3\",\n audit_callback_name=name,\n url=\"https://www.aliyun.com/\",\n callback_types=[\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n ],\n callback_suggestions=[\n \"block\",\n \"review\",\n \"pass\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.AuditCallback(\"default\", new()\n {\n CryptType = \"SM3\",\n AuditCallbackName = name,\n Url = \"https://www.aliyun.com/\",\n CallbackTypes = new[]\n {\n \"aliyunAudit\",\n \"selfAduit\",\n \"example\",\n },\n CallbackSuggestions = new[]\n {\n \"block\",\n \"review\",\n \"pass\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewAuditCallback(ctx, \"default\", \u0026aligreen.AuditCallbackArgs{\n\t\t\tCryptType: pulumi.String(\"SM3\"),\n\t\t\tAuditCallbackName: pulumi.String(name),\n\t\t\tUrl: pulumi.String(\"https://www.aliyun.com/\"),\n\t\t\tCallbackTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aliyunAudit\"),\n\t\t\t\tpulumi.String(\"selfAduit\"),\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tCallbackSuggestions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\tpulumi.String(\"review\"),\n\t\t\t\tpulumi.String(\"pass\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.AuditCallback;\nimport com.pulumi.alicloud.aligreen.AuditCallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new AuditCallback(\"default\", AuditCallbackArgs.builder()\n .cryptType(\"SM3\")\n .auditCallbackName(name)\n .url(\"https://www.aliyun.com/\")\n .callbackTypes( \n \"aliyunAudit\",\n \"selfAduit\",\n \"example\")\n .callbackSuggestions( \n \"block\",\n \"review\",\n \"pass\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:AuditCallback\n properties:\n cryptType: SM3\n auditCallbackName: ${name}\n url: https://www.aliyun.com/\n callbackTypes:\n - aliyunAudit\n - selfAduit\n - example\n callbackSuggestions:\n - block\n - review\n - pass\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAligreen Audit Callback can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/auditCallback:AuditCallback example \u003cid\u003e\n```\n\n",
"properties": {
"auditCallbackName": {
"type": "string",
@@ -101209,7 +103036,7 @@
}
},
"alicloud:aligreen/bizType:BizType": {
- "description": "Provides a Aligreen Biz Type resource.\n\n\n\nFor information about Aligreen Biz Type and how to use it, see [What is Biz Type](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateBizType).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.BizType(\"default\", {\n bizTypeName: name,\n description: name,\n citeTemplate: true,\n industryInfo: \"社交-注册信息-昵称\",\n bizTypeImport: \"1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.BizType(\"default\",\n biz_type_name=name,\n description=name,\n cite_template=True,\n industry_info=\"社交-注册信息-昵称\",\n biz_type_import=\"1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.BizType(\"default\", new()\n {\n BizTypeName = name,\n Description = name,\n CiteTemplate = true,\n IndustryInfo = \"社交-注册信息-昵称\",\n BizTypeImport = \"1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewBizType(ctx, \"default\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCiteTemplate: pulumi.Bool(true),\n\t\t\tIndustryInfo: pulumi.String(\"社交-注册信息-昵称\"),\n\t\t\tBizTypeImport: pulumi.String(\"1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new BizType(\"default\", BizTypeArgs.builder()\n .bizTypeName(name)\n .description(name)\n .citeTemplate(true)\n .industryInfo(\"社交-注册信息-昵称\")\n .bizTypeImport(\"1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}\n description: ${name}\n citeTemplate: true\n industryInfo: 社交-注册信息-昵称\n bizTypeImport: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAligreen Biz Type can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/bizType:BizType example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Aligreen Biz Type resource.\n\n\n\nFor information about Aligreen Biz Type and how to use it, see [What is Biz Type](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateBizType).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.BizType(\"default\", {\n bizTypeName: name,\n description: name,\n citeTemplate: true,\n industryInfo: \"社交-注册信息-昵称\",\n bizTypeImport: \"1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.BizType(\"default\",\n biz_type_name=name,\n description=name,\n cite_template=True,\n industry_info=\"社交-注册信息-昵称\",\n biz_type_import=\"1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.BizType(\"default\", new()\n {\n BizTypeName = name,\n Description = name,\n CiteTemplate = true,\n IndustryInfo = \"社交-注册信息-昵称\",\n BizTypeImport = \"1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewBizType(ctx, \"default\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCiteTemplate: pulumi.Bool(true),\n\t\t\tIndustryInfo: pulumi.String(\"社交-注册信息-昵称\"),\n\t\t\tBizTypeImport: pulumi.String(\"1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new BizType(\"default\", BizTypeArgs.builder()\n .bizTypeName(name)\n .description(name)\n .citeTemplate(true)\n .industryInfo(\"社交-注册信息-昵称\")\n .bizTypeImport(\"1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}\n description: ${name}\n citeTemplate: true\n industryInfo: 社交-注册信息-昵称\n bizTypeImport: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAligreen Biz Type can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/bizType:BizType example \u003cid\u003e\n```\n\n",
"properties": {
"bizTypeImport": {
"type": "string",
@@ -101294,7 +103121,7 @@
}
},
"alicloud:aligreen/callback:Callback": {
- "description": "Provides a Aligreen Callback resource.\n\nDetection Result Callback.\n\nFor information about Aligreen Callback and how to use it, see [What is Callback](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateCallback).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.Callback(\"default\", {\n callbackUrl: \"https://www.aliyun.com\",\n cryptType: 0,\n callbackName: name,\n callbackTypes: [\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n ],\n callbackSuggestions: [\n \"block\",\n \"review\",\n \"pass\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.Callback(\"default\",\n callback_url=\"https://www.aliyun.com\",\n crypt_type=0,\n callback_name=name,\n callback_types=[\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n ],\n callback_suggestions=[\n \"block\",\n \"review\",\n \"pass\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.Callback(\"default\", new()\n {\n CallbackUrl = \"https://www.aliyun.com\",\n CryptType = 0,\n CallbackName = name,\n CallbackTypes = new[]\n {\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n },\n CallbackSuggestions = new[]\n {\n \"block\",\n \"review\",\n \"pass\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewCallback(ctx, \"default\", \u0026aligreen.CallbackArgs{\n\t\t\tCallbackUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\tCryptType: pulumi.Int(0),\n\t\t\tCallbackName: pulumi.String(name),\n\t\t\tCallbackTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"machineScan\"),\n\t\t\t\tpulumi.String(\"selfAudit\"),\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tCallbackSuggestions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\tpulumi.String(\"review\"),\n\t\t\t\tpulumi.String(\"pass\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.Callback;\nimport com.pulumi.alicloud.aligreen.CallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Callback(\"default\", CallbackArgs.builder()\n .callbackUrl(\"https://www.aliyun.com\")\n .cryptType(0)\n .callbackName(name)\n .callbackTypes( \n \"machineScan\",\n \"selfAudit\",\n \"example\")\n .callbackSuggestions( \n \"block\",\n \"review\",\n \"pass\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:Callback\n properties:\n callbackUrl: https://www.aliyun.com\n cryptType: '0'\n callbackName: ${name}\n callbackTypes:\n - machineScan\n - selfAudit\n - example\n callbackSuggestions:\n - block\n - review\n - pass\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAligreen Callback can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/callback:Callback example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Aligreen Callback resource.\n\nDetection Result Callback.\n\nFor information about Aligreen Callback and how to use it, see [What is Callback](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateCallback).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.aligreen.Callback(\"default\", {\n callbackUrl: \"https://www.aliyun.com\",\n cryptType: 0,\n callbackName: name,\n callbackTypes: [\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n ],\n callbackSuggestions: [\n \"block\",\n \"review\",\n \"pass\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.aligreen.Callback(\"default\",\n callback_url=\"https://www.aliyun.com\",\n crypt_type=0,\n callback_name=name,\n callback_types=[\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n ],\n callback_suggestions=[\n \"block\",\n \"review\",\n \"pass\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.Aligreen.Callback(\"default\", new()\n {\n CallbackUrl = \"https://www.aliyun.com\",\n CryptType = 0,\n CallbackName = name,\n CallbackTypes = new[]\n {\n \"machineScan\",\n \"selfAudit\",\n \"example\",\n },\n CallbackSuggestions = new[]\n {\n \"block\",\n \"review\",\n \"pass\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := aligreen.NewCallback(ctx, \"default\", \u0026aligreen.CallbackArgs{\n\t\t\tCallbackUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\tCryptType: pulumi.Int(0),\n\t\t\tCallbackName: pulumi.String(name),\n\t\t\tCallbackTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"machineScan\"),\n\t\t\t\tpulumi.String(\"selfAudit\"),\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t\tCallbackSuggestions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"block\"),\n\t\t\t\tpulumi.String(\"review\"),\n\t\t\t\tpulumi.String(\"pass\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.Callback;\nimport com.pulumi.alicloud.aligreen.CallbackArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Callback(\"default\", CallbackArgs.builder()\n .callbackUrl(\"https://www.aliyun.com\")\n .cryptType(0)\n .callbackName(name)\n .callbackTypes( \n \"machineScan\",\n \"selfAudit\",\n \"example\")\n .callbackSuggestions( \n \"block\",\n \"review\",\n \"pass\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:aligreen:Callback\n properties:\n callbackUrl: https://www.aliyun.com\n cryptType: '0'\n callbackName: ${name}\n callbackTypes:\n - machineScan\n - selfAudit\n - example\n callbackSuggestions:\n - block\n - review\n - pass\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAligreen Callback can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/callback:Callback example \u003cid\u003e\n```\n\n",
"properties": {
"callbackName": {
"type": "string",
@@ -101408,7 +103235,7 @@
}
},
"alicloud:aligreen/imageLib:ImageLib": {
- "description": "Provides a Aligreen Image Lib resource.\n\nImage library for image detection.\n\nFor information about Aligreen Image Lib and how to use it, see [What is Image Lib](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateImageLib).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform\";\nconst defaultUalunB = new alicloud.aligreen.BizType(\"defaultUalunB\", {bizTypeName: name});\nconst _default = new alicloud.aligreen.ImageLib(\"default\", {\n category: \"BLACK\",\n enable: true,\n scene: \"PORN\",\n imageLibName: name,\n bizTypes: [defaultUalunB.bizTypeName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform\"\ndefault_ualun_b = alicloud.aligreen.BizType(\"defaultUalunB\", biz_type_name=name)\ndefault = alicloud.aligreen.ImageLib(\"default\",\n category=\"BLACK\",\n enable=True,\n scene=\"PORN\",\n image_lib_name=name,\n biz_types=[default_ualun_b.biz_type_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform\";\n var defaultUalunB = new AliCloud.Aligreen.BizType(\"defaultUalunB\", new()\n {\n BizTypeName = name,\n });\n\n var @default = new AliCloud.Aligreen.ImageLib(\"default\", new()\n {\n Category = \"BLACK\",\n Enable = true,\n Scene = \"PORN\",\n ImageLibName = name,\n BizTypes = new[]\n {\n defaultUalunB.BizTypeName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUalunB, err := aligreen.NewBizType(ctx, \"defaultUalunB\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewImageLib(ctx, \"default\", \u0026aligreen.ImageLibArgs{\n\t\t\tCategory: pulumi.String(\"BLACK\"),\n\t\t\tEnable: pulumi.Bool(true),\n\t\t\tScene: pulumi.String(\"PORN\"),\n\t\t\tImageLibName: pulumi.String(name),\n\t\t\tBizTypes: pulumi.StringArray{\n\t\t\t\tdefaultUalunB.BizTypeName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport com.pulumi.alicloud.aligreen.ImageLib;\nimport com.pulumi.alicloud.aligreen.ImageLibArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform\");\n var defaultUalunB = new BizType(\"defaultUalunB\", BizTypeArgs.builder()\n .bizTypeName(name)\n .build());\n\n var default_ = new ImageLib(\"default\", ImageLibArgs.builder()\n .category(\"BLACK\")\n .enable(true)\n .scene(\"PORN\")\n .imageLibName(name)\n .bizTypes(defaultUalunB.bizTypeName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform\nresources:\n defaultUalunB:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}\n default:\n type: alicloud:aligreen:ImageLib\n properties:\n category: BLACK\n enable: true\n scene: PORN\n imageLibName: ${name}\n bizTypes:\n - ${defaultUalunB.bizTypeName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAligreen Image Lib can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/imageLib:ImageLib example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Aligreen Image Lib resource.\n\nImage library for image detection.\n\nFor information about Aligreen Image Lib and how to use it, see [What is Image Lib](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateImageLib).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform\";\nconst defaultUalunB = new alicloud.aligreen.BizType(\"defaultUalunB\", {bizTypeName: name});\nconst _default = new alicloud.aligreen.ImageLib(\"default\", {\n category: \"BLACK\",\n enable: true,\n scene: \"PORN\",\n imageLibName: name,\n bizTypes: [defaultUalunB.bizTypeName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform\"\ndefault_ualun_b = alicloud.aligreen.BizType(\"defaultUalunB\", biz_type_name=name)\ndefault = alicloud.aligreen.ImageLib(\"default\",\n category=\"BLACK\",\n enable=True,\n scene=\"PORN\",\n image_lib_name=name,\n biz_types=[default_ualun_b.biz_type_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform\";\n var defaultUalunB = new AliCloud.Aligreen.BizType(\"defaultUalunB\", new()\n {\n BizTypeName = name,\n });\n\n var @default = new AliCloud.Aligreen.ImageLib(\"default\", new()\n {\n Category = \"BLACK\",\n Enable = true,\n Scene = \"PORN\",\n ImageLibName = name,\n BizTypes = new[]\n {\n defaultUalunB.BizTypeName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUalunB, err := aligreen.NewBizType(ctx, \"defaultUalunB\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewImageLib(ctx, \"default\", \u0026aligreen.ImageLibArgs{\n\t\t\tCategory: pulumi.String(\"BLACK\"),\n\t\t\tEnable: pulumi.Bool(true),\n\t\t\tScene: pulumi.String(\"PORN\"),\n\t\t\tImageLibName: pulumi.String(name),\n\t\t\tBizTypes: pulumi.StringArray{\n\t\t\t\tdefaultUalunB.BizTypeName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport com.pulumi.alicloud.aligreen.ImageLib;\nimport com.pulumi.alicloud.aligreen.ImageLibArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform\");\n var defaultUalunB = new BizType(\"defaultUalunB\", BizTypeArgs.builder()\n .bizTypeName(name)\n .build());\n\n var default_ = new ImageLib(\"default\", ImageLibArgs.builder()\n .category(\"BLACK\")\n .enable(true)\n .scene(\"PORN\")\n .imageLibName(name)\n .bizTypes(defaultUalunB.bizTypeName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform\nresources:\n defaultUalunB:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}\n default:\n type: alicloud:aligreen:ImageLib\n properties:\n category: BLACK\n enable: true\n scene: PORN\n imageLibName: ${name}\n bizTypes:\n - ${defaultUalunB.bizTypeName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAligreen Image Lib can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/imageLib:ImageLib example \u003cid\u003e\n```\n\n",
"properties": {
"bizTypes": {
"type": "array",
@@ -101505,7 +103332,7 @@
}
},
"alicloud:aligreen/keywordLib:KeywordLib": {
- "description": "Provides a Aligreen Keyword Lib resource.\n\nKeyword library for text detection.\n\nFor information about Aligreen Keyword Lib and how to use it, see [What is Keyword Lib](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateKeywordLib).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultMn8sVK = new alicloud.aligreen.BizType(\"defaultMn8sVK\", {\n bizTypeName: `${name}${_default.result}`,\n citeTemplate: true,\n industryInfo: \"社交-注册信息-昵称\",\n});\nconst defaultKeywordLib = new alicloud.aligreen.KeywordLib(\"default\", {\n category: \"BLACK\",\n resourceType: \"TEXT\",\n libType: \"textKeyword\",\n keywordLibName: name,\n matchMode: \"fuzzy\",\n language: \"cn\",\n bizTypes: [\"example_007\"],\n lang: \"cn\",\n enable: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_mn8s_vk = alicloud.aligreen.BizType(\"defaultMn8sVK\",\n biz_type_name=f\"{name}{default['result']}\",\n cite_template=True,\n industry_info=\"社交-注册信息-昵称\")\ndefault_keyword_lib = alicloud.aligreen.KeywordLib(\"default\",\n category=\"BLACK\",\n resource_type=\"TEXT\",\n lib_type=\"textKeyword\",\n keyword_lib_name=name,\n match_mode=\"fuzzy\",\n language=\"cn\",\n biz_types=[\"example_007\"],\n lang=\"cn\",\n enable=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultMn8sVK = new AliCloud.Aligreen.BizType(\"defaultMn8sVK\", new()\n {\n BizTypeName = $\"{name}{@default.Result}\",\n CiteTemplate = true,\n IndustryInfo = \"社交-注册信息-昵称\",\n });\n\n var defaultKeywordLib = new AliCloud.Aligreen.KeywordLib(\"default\", new()\n {\n Category = \"BLACK\",\n ResourceType = \"TEXT\",\n LibType = \"textKeyword\",\n KeywordLibName = name,\n MatchMode = \"fuzzy\",\n Language = \"cn\",\n BizTypes = new[]\n {\n \"example_007\",\n },\n Lang = \"cn\",\n Enable = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewBizType(ctx, \"defaultMn8sVK\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.Sprintf(\"%v%v\", name, _default.Result),\n\t\t\tCiteTemplate: pulumi.Bool(true),\n\t\t\tIndustryInfo: pulumi.String(\"社交-注册信息-昵称\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewKeywordLib(ctx, \"default\", \u0026aligreen.KeywordLibArgs{\n\t\t\tCategory: pulumi.String(\"BLACK\"),\n\t\t\tResourceType: pulumi.String(\"TEXT\"),\n\t\t\tLibType: pulumi.String(\"textKeyword\"),\n\t\t\tKeywordLibName: pulumi.String(name),\n\t\t\tMatchMode: pulumi.String(\"fuzzy\"),\n\t\t\tLanguage: pulumi.String(\"cn\"),\n\t\t\tBizTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example_007\"),\n\t\t\t},\n\t\t\tLang: pulumi.String(\"cn\"),\n\t\t\tEnable: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport com.pulumi.alicloud.aligreen.KeywordLib;\nimport com.pulumi.alicloud.aligreen.KeywordLibArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultMn8sVK = new BizType(\"defaultMn8sVK\", BizTypeArgs.builder()\n .bizTypeName(String.format(\"%s%s\", name,default_.result()))\n .citeTemplate(true)\n .industryInfo(\"社交-注册信息-昵称\")\n .build());\n\n var defaultKeywordLib = new KeywordLib(\"defaultKeywordLib\", KeywordLibArgs.builder()\n .category(\"BLACK\")\n .resourceType(\"TEXT\")\n .libType(\"textKeyword\")\n .keywordLibName(name)\n .matchMode(\"fuzzy\")\n .language(\"cn\")\n .bizTypes(\"example_007\")\n .lang(\"cn\")\n .enable(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultMn8sVK:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}${default.result}\n citeTemplate: true\n industryInfo: 社交-注册信息-昵称\n defaultKeywordLib:\n type: alicloud:aligreen:KeywordLib\n name: default\n properties:\n category: BLACK\n resourceType: TEXT\n libType: textKeyword\n keywordLibName: ${name}\n matchMode: fuzzy\n language: cn\n bizTypes:\n - example_007\n lang: cn\n enable: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAligreen Keyword Lib can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/keywordLib:KeywordLib example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Aligreen Keyword Lib resource.\n\nKeyword library for text detection.\n\nFor information about Aligreen Keyword Lib and how to use it, see [What is Keyword Lib](https://next.api.alibabacloud.com/document/Green/2017-08-23/CreateKeywordLib).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultMn8sVK = new alicloud.aligreen.BizType(\"defaultMn8sVK\", {\n bizTypeName: `${name}${_default.result}`,\n citeTemplate: true,\n industryInfo: \"社交-注册信息-昵称\",\n});\nconst defaultKeywordLib = new alicloud.aligreen.KeywordLib(\"default\", {\n category: \"BLACK\",\n resourceType: \"TEXT\",\n libType: \"textKeyword\",\n keywordLibName: name,\n matchMode: \"fuzzy\",\n language: \"cn\",\n bizTypes: [\"example_007\"],\n lang: \"cn\",\n enable: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_mn8s_vk = alicloud.aligreen.BizType(\"defaultMn8sVK\",\n biz_type_name=f\"{name}{default['result']}\",\n cite_template=True,\n industry_info=\"社交-注册信息-昵称\")\ndefault_keyword_lib = alicloud.aligreen.KeywordLib(\"default\",\n category=\"BLACK\",\n resource_type=\"TEXT\",\n lib_type=\"textKeyword\",\n keyword_lib_name=name,\n match_mode=\"fuzzy\",\n language=\"cn\",\n biz_types=[\"example_007\"],\n lang=\"cn\",\n enable=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultMn8sVK = new AliCloud.Aligreen.BizType(\"defaultMn8sVK\", new()\n {\n BizTypeName = $\"{name}{@default.Result}\",\n CiteTemplate = true,\n IndustryInfo = \"社交-注册信息-昵称\",\n });\n\n var defaultKeywordLib = new AliCloud.Aligreen.KeywordLib(\"default\", new()\n {\n Category = \"BLACK\",\n ResourceType = \"TEXT\",\n LibType = \"textKeyword\",\n KeywordLibName = name,\n MatchMode = \"fuzzy\",\n Language = \"cn\",\n BizTypes = new[]\n {\n \"example_007\",\n },\n Lang = \"cn\",\n Enable = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/aligreen\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewBizType(ctx, \"defaultMn8sVK\", \u0026aligreen.BizTypeArgs{\n\t\t\tBizTypeName: pulumi.Sprintf(\"%v%v\", name, _default.Result),\n\t\t\tCiteTemplate: pulumi.Bool(true),\n\t\t\tIndustryInfo: pulumi.String(\"社交-注册信息-昵称\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aligreen.NewKeywordLib(ctx, \"default\", \u0026aligreen.KeywordLibArgs{\n\t\t\tCategory: pulumi.String(\"BLACK\"),\n\t\t\tResourceType: pulumi.String(\"TEXT\"),\n\t\t\tLibType: pulumi.String(\"textKeyword\"),\n\t\t\tKeywordLibName: pulumi.String(name),\n\t\t\tMatchMode: pulumi.String(\"fuzzy\"),\n\t\t\tLanguage: pulumi.String(\"cn\"),\n\t\t\tBizTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example_007\"),\n\t\t\t},\n\t\t\tLang: pulumi.String(\"cn\"),\n\t\t\tEnable: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.aligreen.BizType;\nimport com.pulumi.alicloud.aligreen.BizTypeArgs;\nimport com.pulumi.alicloud.aligreen.KeywordLib;\nimport com.pulumi.alicloud.aligreen.KeywordLibArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultMn8sVK = new BizType(\"defaultMn8sVK\", BizTypeArgs.builder()\n .bizTypeName(String.format(\"%s%s\", name,default_.result()))\n .citeTemplate(true)\n .industryInfo(\"社交-注册信息-昵称\")\n .build());\n\n var defaultKeywordLib = new KeywordLib(\"defaultKeywordLib\", KeywordLibArgs.builder()\n .category(\"BLACK\")\n .resourceType(\"TEXT\")\n .libType(\"textKeyword\")\n .keywordLibName(name)\n .matchMode(\"fuzzy\")\n .language(\"cn\")\n .bizTypes(\"example_007\")\n .lang(\"cn\")\n .enable(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultMn8sVK:\n type: alicloud:aligreen:BizType\n properties:\n bizTypeName: ${name}${default.result}\n citeTemplate: true\n industryInfo: 社交-注册信息-昵称\n defaultKeywordLib:\n type: alicloud:aligreen:KeywordLib\n name: default\n properties:\n category: BLACK\n resourceType: TEXT\n libType: textKeyword\n keywordLibName: ${name}\n matchMode: fuzzy\n language: cn\n bizTypes:\n - example_007\n lang: cn\n enable: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAligreen Keyword Lib can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:aligreen/keywordLib:KeywordLib example \u003cid\u003e\n```\n\n",
"properties": {
"bizTypes": {
"type": "array",
@@ -102146,7 +103973,7 @@
}
},
"alicloud:alikafka/consumerGroup:ConsumerGroup": {
- "description": "Provides an ALIKAFKA consumer group resource, see [What is alikafka consumer group](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createconsumergroup).\n\n\u003e **NOTE:** Available since v1.56.0.\n\n\u003e **NOTE:** Only the following regions support create alikafka consumer group.\n[`cn-hangzhou`,`cn-beijing`,`cn-shenzhen`,`cn-shanghai`,`cn-qingdao`,`cn-hongkong`,`cn-huhehaote`,`cn-zhangjiakou`,`cn-chengdu`,`cn-heyuan`,`ap-southeast-1`,`ap-southeast-3`,`ap-southeast-5`,`ap-northeast-1`,`eu-central-1`,`eu-west-1`,`us-west-1`,`us-east-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {cidrBlock: \"172.16.0.0/12\"});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultConsumerGroup = new alicloud.alikafka.ConsumerGroup(\"default\", {\n consumerId: name,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\", cidr_block=\"172.16.0.0/12\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_consumer_group = alicloud.alikafka.ConsumerGroup(\"default\",\n consumer_id=name,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultConsumerGroup = new AliCloud.AliKafka.ConsumerGroup(\"default\", new()\n {\n ConsumerId = name,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewConsumerGroup(ctx, \"default\", \u0026alikafka.ConsumerGroupArgs{\n\t\t\tConsumerId: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.ConsumerGroup;\nimport com.pulumi.alicloud.alikafka.ConsumerGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultConsumerGroup = new ConsumerGroup(\"defaultConsumerGroup\", ConsumerGroupArgs.builder()\n .consumerId(name)\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: '50'\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultConsumerGroup:\n type: alicloud:alikafka:ConsumerGroup\n name: default\n properties:\n consumerId: ${name}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nALIKAFKA GROUP can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/consumerGroup:ConsumerGroup group alikafka_post-cn-123455abc:consumerId\n```\n\n",
+ "description": "Provides an ALIKAFKA consumer group resource, see [What is alikafka consumer group](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createconsumergroup).\n\n\u003e **NOTE:** Available since v1.56.0.\n\n\u003e **NOTE:** Only the following regions support create alikafka consumer group.\n[`cn-hangzhou`,`cn-beijing`,`cn-shenzhen`,`cn-shanghai`,`cn-qingdao`,`cn-hongkong`,`cn-huhehaote`,`cn-zhangjiakou`,`cn-chengdu`,`cn-heyuan`,`ap-southeast-1`,`ap-southeast-3`,`ap-southeast-5`,`ap-northeast-1`,`eu-central-1`,`eu-west-1`,`us-west-1`,`us-east-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {cidrBlock: \"172.16.0.0/12\"});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultConsumerGroup = new alicloud.alikafka.ConsumerGroup(\"default\", {\n consumerId: name,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\", cidr_block=\"172.16.0.0/12\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_consumer_group = alicloud.alikafka.ConsumerGroup(\"default\",\n consumer_id=name,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultConsumerGroup = new AliCloud.AliKafka.ConsumerGroup(\"default\", new()\n {\n ConsumerId = name,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewConsumerGroup(ctx, \"default\", \u0026alikafka.ConsumerGroupArgs{\n\t\t\tConsumerId: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.ConsumerGroup;\nimport com.pulumi.alicloud.alikafka.ConsumerGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultConsumerGroup = new ConsumerGroup(\"defaultConsumerGroup\", ConsumerGroupArgs.builder()\n .consumerId(name)\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: '50'\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultConsumerGroup:\n type: alicloud:alikafka:ConsumerGroup\n name: default\n properties:\n consumerId: ${name}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nALIKAFKA GROUP can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/consumerGroup:ConsumerGroup group alikafka_post-cn-123455abc:consumerId\n```\n\n",
"properties": {
"consumerId": {
"type": "string",
@@ -102787,7 +104614,7 @@
}
},
"alicloud:alikafka/instanceAllowedIpAttachment:InstanceAllowedIpAttachment": {
- "description": "Provides a AliKafka Instance Allowed Ip Attachment resource.\n\nFor information about AliKafka Instance Allowed Ip Attachment and how to use it, see [What is Instance Allowed Ip Attachment](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-updateallowedip).\n\n\u003e **NOTE:** Available since v1.163.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultInstanceAllowedIpAttachment = new alicloud.alikafka.InstanceAllowedIpAttachment(\"default\", {\n instanceId: defaultInstance.id,\n allowedType: \"vpc\",\n portRange: \"9092/9092\",\n allowedIp: \"114.237.9.78/32\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_instance_allowed_ip_attachment = alicloud.alikafka.InstanceAllowedIpAttachment(\"default\",\n instance_id=default_instance.id,\n allowed_type=\"vpc\",\n port_range=\"9092/9092\",\n allowed_ip=\"114.237.9.78/32\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultInstanceAllowedIpAttachment = new AliCloud.AliKafka.InstanceAllowedIpAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n AllowedType = \"vpc\",\n PortRange = \"9092/9092\",\n AllowedIp = \"114.237.9.78/32\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewInstanceAllowedIpAttachment(ctx, \"default\", \u0026alikafka.InstanceAllowedIpAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tAllowedType: pulumi.String(\"vpc\"),\n\t\t\tPortRange: pulumi.String(\"9092/9092\"),\n\t\t\tAllowedIp: pulumi.String(\"114.237.9.78/32\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.InstanceAllowedIpAttachment;\nimport com.pulumi.alicloud.alikafka.InstanceAllowedIpAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultInstanceAllowedIpAttachment = new InstanceAllowedIpAttachment(\"defaultInstanceAllowedIpAttachment\", InstanceAllowedIpAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .allowedType(\"vpc\")\n .portRange(\"9092/9092\")\n .allowedIp(\"114.237.9.78/32\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: 1\n diskSize: 500\n deployType: 5\n ioMax: 20\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultInstanceAllowedIpAttachment:\n type: alicloud:alikafka:InstanceAllowedIpAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n allowedType: vpc\n portRange: 9092/9092\n allowedIp: 114.237.9.78/32\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAliKafka Instance Allowed Ip Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/instanceAllowedIpAttachment:InstanceAllowedIpAttachment example \u003cinstance_id\u003e:\u003callowed_type\u003e:\u003cport_range\u003e:\u003callowed_ip\u003e\n```\n\n",
+ "description": "Provides a AliKafka Instance Allowed Ip Attachment resource.\n\nFor information about AliKafka Instance Allowed Ip Attachment and how to use it, see [What is Instance Allowed Ip Attachment](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-updateallowedip).\n\n\u003e **NOTE:** Available since v1.163.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultInstanceAllowedIpAttachment = new alicloud.alikafka.InstanceAllowedIpAttachment(\"default\", {\n instanceId: defaultInstance.id,\n allowedType: \"vpc\",\n portRange: \"9092/9092\",\n allowedIp: \"114.237.9.78/32\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_instance_allowed_ip_attachment = alicloud.alikafka.InstanceAllowedIpAttachment(\"default\",\n instance_id=default_instance.id,\n allowed_type=\"vpc\",\n port_range=\"9092/9092\",\n allowed_ip=\"114.237.9.78/32\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultInstanceAllowedIpAttachment = new AliCloud.AliKafka.InstanceAllowedIpAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n AllowedType = \"vpc\",\n PortRange = \"9092/9092\",\n AllowedIp = \"114.237.9.78/32\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewInstanceAllowedIpAttachment(ctx, \"default\", \u0026alikafka.InstanceAllowedIpAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tAllowedType: pulumi.String(\"vpc\"),\n\t\t\tPortRange: pulumi.String(\"9092/9092\"),\n\t\t\tAllowedIp: pulumi.String(\"114.237.9.78/32\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.InstanceAllowedIpAttachment;\nimport com.pulumi.alicloud.alikafka.InstanceAllowedIpAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultInstanceAllowedIpAttachment = new InstanceAllowedIpAttachment(\"defaultInstanceAllowedIpAttachment\", InstanceAllowedIpAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .allowedType(\"vpc\")\n .portRange(\"9092/9092\")\n .allowedIp(\"114.237.9.78/32\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: 1\n diskSize: 500\n deployType: 5\n ioMax: 20\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultInstanceAllowedIpAttachment:\n type: alicloud:alikafka:InstanceAllowedIpAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n allowedType: vpc\n portRange: 9092/9092\n allowedIp: 114.237.9.78/32\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAliKafka Instance Allowed Ip Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/instanceAllowedIpAttachment:InstanceAllowedIpAttachment example \u003cinstance_id\u003e:\u003callowed_type\u003e:\u003cport_range\u003e:\u003callowed_ip\u003e\n```\n\n",
"properties": {
"allowedIp": {
"type": "string",
@@ -102868,7 +104695,7 @@
}
},
"alicloud:alikafka/saslAcl:SaslAcl": {
- "description": "Provides an ALIKAFKA sasl acl resource, see [What is alikafka sasl acl](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createacl).\n\n\u003e **NOTE:** Available since v1.66.0.\n\n\u003e **NOTE:** Only the following regions support create alikafka sasl user.\n[`cn-hangzhou`,`cn-beijing`,`cn-shenzhen`,`cn-shanghai`,`cn-qingdao`,`cn-hongkong`,`cn-huhehaote`,`cn-zhangjiakou`,`cn-chengdu`,`cn-heyuan`,`ap-southeast-1`,`ap-southeast-3`,`ap-southeast-5`,`ap-northeast-1`,`eu-central-1`,`eu-west-1`,`us-west-1`,`us-east-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n config: \"{\\\"enable.acl\\\":\\\"true\\\"}\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultTopic = new alicloud.alikafka.Topic(\"default\", {\n instanceId: defaultInstance.id,\n topic: \"example-topic\",\n remark: \"topic-remark\",\n});\nconst defaultSaslUser = new alicloud.alikafka.SaslUser(\"default\", {\n instanceId: defaultInstance.id,\n username: name,\n password: \"tf_example123\",\n});\nconst defaultSaslAcl = new alicloud.alikafka.SaslAcl(\"default\", {\n instanceId: defaultInstance.id,\n username: defaultSaslUser.username,\n aclResourceType: \"Topic\",\n aclResourceName: defaultTopic.topic,\n aclResourcePatternType: \"LITERAL\",\n aclOperationType: \"Write\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n config=\"{\\\"enable.acl\\\":\\\"true\\\"}\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_topic = alicloud.alikafka.Topic(\"default\",\n instance_id=default_instance.id,\n topic=\"example-topic\",\n remark=\"topic-remark\")\ndefault_sasl_user = alicloud.alikafka.SaslUser(\"default\",\n instance_id=default_instance.id,\n username=name,\n password=\"tf_example123\")\ndefault_sasl_acl = alicloud.alikafka.SaslAcl(\"default\",\n instance_id=default_instance.id,\n username=default_sasl_user.username,\n acl_resource_type=\"Topic\",\n acl_resource_name=default_topic.topic,\n acl_resource_pattern_type=\"LITERAL\",\n acl_operation_type=\"Write\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n Config = \"{\\\"enable.acl\\\":\\\"true\\\"}\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultTopic = new AliCloud.AliKafka.Topic(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n TopicName = \"example-topic\",\n Remark = \"topic-remark\",\n });\n\n var defaultSaslUser = new AliCloud.AliKafka.SaslUser(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = name,\n Password = \"tf_example123\",\n });\n\n var defaultSaslAcl = new AliCloud.AliKafka.SaslAcl(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = defaultSaslUser.Username,\n AclResourceType = \"Topic\",\n AclResourceName = defaultTopic.TopicName,\n AclResourcePatternType = \"LITERAL\",\n AclOperationType = \"Write\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tConfig: pulumi.String(\"{\\\"enable.acl\\\":\\\"true\\\"}\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTopic, err := alikafka.NewTopic(ctx, \"default\", \u0026alikafka.TopicArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tTopic: pulumi.String(\"example-topic\"),\n\t\t\tRemark: pulumi.String(\"topic-remark\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSaslUser, err := alikafka.NewSaslUser(ctx, \"default\", \u0026alikafka.SaslUserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: pulumi.String(name),\n\t\t\tPassword: pulumi.String(\"tf_example123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewSaslAcl(ctx, \"default\", \u0026alikafka.SaslAclArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: defaultSaslUser.Username,\n\t\t\tAclResourceType: pulumi.String(\"Topic\"),\n\t\t\tAclResourceName: defaultTopic.Topic,\n\t\t\tAclResourcePatternType: pulumi.String(\"LITERAL\"),\n\t\t\tAclOperationType: pulumi.String(\"Write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.Topic;\nimport com.pulumi.alicloud.alikafka.TopicArgs;\nimport com.pulumi.alicloud.alikafka.SaslUser;\nimport com.pulumi.alicloud.alikafka.SaslUserArgs;\nimport com.pulumi.alicloud.alikafka.SaslAcl;\nimport com.pulumi.alicloud.alikafka.SaslAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .config(\"{\\\"enable.acl\\\":\\\"true\\\"}\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultTopic = new Topic(\"defaultTopic\", TopicArgs.builder()\n .instanceId(defaultInstance.id())\n .topic(\"example-topic\")\n .remark(\"topic-remark\")\n .build());\n\n var defaultSaslUser = new SaslUser(\"defaultSaslUser\", SaslUserArgs.builder()\n .instanceId(defaultInstance.id())\n .username(name)\n .password(\"tf_example123\")\n .build());\n\n var defaultSaslAcl = new SaslAcl(\"defaultSaslAcl\", SaslAclArgs.builder()\n .instanceId(defaultInstance.id())\n .username(defaultSaslUser.username())\n .aclResourceType(\"Topic\")\n .aclResourceName(defaultTopic.topic())\n .aclResourcePatternType(\"LITERAL\")\n .aclOperationType(\"Write\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n config: '{\"enable.acl\":\"true\"}'\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultTopic:\n type: alicloud:alikafka:Topic\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n topic: example-topic\n remark: topic-remark\n defaultSaslUser:\n type: alicloud:alikafka:SaslUser\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${name}\n password: tf_example123\n defaultSaslAcl:\n type: alicloud:alikafka:SaslAcl\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${defaultSaslUser.username}\n aclResourceType: Topic\n aclResourceName: ${defaultTopic.topic}\n aclResourcePatternType: LITERAL\n aclOperationType: Write\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nALIKAFKA GROUP can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/saslAcl:SaslAcl acl alikafka_post-cn-123455abc:username:Topic:test-topic:LITERAL:Write\n```\n\n",
+ "description": "Provides an ALIKAFKA sasl acl resource, see [What is alikafka sasl acl](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createacl).\n\n\u003e **NOTE:** Available since v1.66.0.\n\n\u003e **NOTE:** Only the following regions support create alikafka sasl user.\n[`cn-hangzhou`,`cn-beijing`,`cn-shenzhen`,`cn-shanghai`,`cn-qingdao`,`cn-hongkong`,`cn-huhehaote`,`cn-zhangjiakou`,`cn-chengdu`,`cn-heyuan`,`ap-southeast-1`,`ap-southeast-3`,`ap-southeast-5`,`ap-northeast-1`,`eu-central-1`,`eu-west-1`,`us-west-1`,`us-east-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n config: \"{\\\"enable.acl\\\":\\\"true\\\"}\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n});\nconst defaultTopic = new alicloud.alikafka.Topic(\"default\", {\n instanceId: defaultInstance.id,\n topic: \"example-topic\",\n remark: \"topic-remark\",\n});\nconst defaultSaslUser = new alicloud.alikafka.SaslUser(\"default\", {\n instanceId: defaultInstance.id,\n username: name,\n password: \"tf_example123\",\n});\nconst defaultSaslAcl = new alicloud.alikafka.SaslAcl(\"default\", {\n instanceId: defaultInstance.id,\n username: defaultSaslUser.username,\n aclResourceType: \"Topic\",\n aclResourceName: defaultTopic.topic,\n aclResourcePatternType: \"LITERAL\",\n aclOperationType: \"Write\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n config=\"{\\\"enable.acl\\\":\\\"true\\\"}\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id)\ndefault_topic = alicloud.alikafka.Topic(\"default\",\n instance_id=default_instance.id,\n topic=\"example-topic\",\n remark=\"topic-remark\")\ndefault_sasl_user = alicloud.alikafka.SaslUser(\"default\",\n instance_id=default_instance.id,\n username=name,\n password=\"tf_example123\")\ndefault_sasl_acl = alicloud.alikafka.SaslAcl(\"default\",\n instance_id=default_instance.id,\n username=default_sasl_user.username,\n acl_resource_type=\"Topic\",\n acl_resource_name=default_topic.topic,\n acl_resource_pattern_type=\"LITERAL\",\n acl_operation_type=\"Write\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n Config = \"{\\\"enable.acl\\\":\\\"true\\\"}\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n });\n\n var defaultTopic = new AliCloud.AliKafka.Topic(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n TopicName = \"example-topic\",\n Remark = \"topic-remark\",\n });\n\n var defaultSaslUser = new AliCloud.AliKafka.SaslUser(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = name,\n Password = \"tf_example123\",\n });\n\n var defaultSaslAcl = new AliCloud.AliKafka.SaslAcl(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = defaultSaslUser.Username,\n AclResourceType = \"Topic\",\n AclResourceName = defaultTopic.TopicName,\n AclResourcePatternType = \"LITERAL\",\n AclOperationType = \"Write\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tConfig: pulumi.String(\"{\\\"enable.acl\\\":\\\"true\\\"}\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTopic, err := alikafka.NewTopic(ctx, \"default\", \u0026alikafka.TopicArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tTopic: pulumi.String(\"example-topic\"),\n\t\t\tRemark: pulumi.String(\"topic-remark\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSaslUser, err := alikafka.NewSaslUser(ctx, \"default\", \u0026alikafka.SaslUserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: pulumi.String(name),\n\t\t\tPassword: pulumi.String(\"tf_example123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewSaslAcl(ctx, \"default\", \u0026alikafka.SaslAclArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: defaultSaslUser.Username,\n\t\t\tAclResourceType: pulumi.String(\"Topic\"),\n\t\t\tAclResourceName: defaultTopic.Topic,\n\t\t\tAclResourcePatternType: pulumi.String(\"LITERAL\"),\n\t\t\tAclOperationType: pulumi.String(\"Write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.Topic;\nimport com.pulumi.alicloud.alikafka.TopicArgs;\nimport com.pulumi.alicloud.alikafka.SaslUser;\nimport com.pulumi.alicloud.alikafka.SaslUserArgs;\nimport com.pulumi.alicloud.alikafka.SaslAcl;\nimport com.pulumi.alicloud.alikafka.SaslAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .config(\"{\\\"enable.acl\\\":\\\"true\\\"}\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .build());\n\n var defaultTopic = new Topic(\"defaultTopic\", TopicArgs.builder()\n .instanceId(defaultInstance.id())\n .topic(\"example-topic\")\n .remark(\"topic-remark\")\n .build());\n\n var defaultSaslUser = new SaslUser(\"defaultSaslUser\", SaslUserArgs.builder()\n .instanceId(defaultInstance.id())\n .username(name)\n .password(\"tf_example123\")\n .build());\n\n var defaultSaslAcl = new SaslAcl(\"defaultSaslAcl\", SaslAclArgs.builder()\n .instanceId(defaultInstance.id())\n .username(defaultSaslUser.username())\n .aclResourceType(\"Topic\")\n .aclResourceName(defaultTopic.topic())\n .aclResourcePatternType(\"LITERAL\")\n .aclOperationType(\"Write\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n config: '{\"enable.acl\":\"true\"}'\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n defaultTopic:\n type: alicloud:alikafka:Topic\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n topic: example-topic\n remark: topic-remark\n defaultSaslUser:\n type: alicloud:alikafka:SaslUser\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${name}\n password: tf_example123\n defaultSaslAcl:\n type: alicloud:alikafka:SaslAcl\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${defaultSaslUser.username}\n aclResourceType: Topic\n aclResourceName: ${defaultTopic.topic}\n aclResourcePatternType: LITERAL\n aclOperationType: Write\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nALIKAFKA GROUP can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/saslAcl:SaslAcl acl alikafka_post-cn-123455abc:username:Topic:test-topic:LITERAL:Write\n```\n\n",
"properties": {
"aclOperationType": {
"type": "string",
@@ -102990,11 +104817,11 @@
}
},
"alicloud:alikafka/saslUser:SaslUser": {
- "description": "Provides an Alikafka Sasl User resource.\n\n\u003e **NOTE:** Available since v1.66.0.\n\n\u003e **NOTE:** Only the following regions support create alikafka Sasl User.\n[`cn-hangzhou`,`cn-beijing`,`cn-shenzhen`,`cn-shanghai`,`cn-qingdao`,`cn-hongkong`,`cn-huhehaote`,`cn-zhangjiakou`,`cn-chengdu`,`cn-heyuan`,`ap-southeast-1`,`ap-southeast-3`,`ap-southeast-5`,`ap-northeast-1`,`eu-central-1`,`eu-west-1`,`us-west-1`,`us-east-1`]\n\nFor information about Alikafka Sasl User and how to use it, see [What is Sasl User](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createsasluser).\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n config: ` {\n \\\\\"enable.acl\\\\\": \\\\\"true\\\\\"\n }\n`,\n});\nconst defaultSaslUser = new alicloud.alikafka.SaslUser(\"default\", {\n instanceId: defaultInstance.id,\n username: name,\n password: \"tf_example123\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id,\n config=\"\"\" {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n\"\"\")\ndefault_sasl_user = alicloud.alikafka.SaslUser(\"default\",\n instance_id=default_instance.id,\n username=name,\n password=\"tf_example123\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n Config = @\" {\n \\\"\"enable.acl\\\"\": \\\"\"true\\\"\"\n }\n\",\n });\n\n var defaultSaslUser = new AliCloud.AliKafka.SaslUser(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = name,\n Password = \"tf_example123\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t\tConfig: pulumi.String(\" {\\n \\\\\\\"enable.acl\\\\\\\": \\\\\\\"true\\\\\\\"\\n }\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewSaslUser(ctx, \"default\", \u0026alikafka.SaslUserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: pulumi.String(name),\n\t\t\tPassword: pulumi.String(\"tf_example123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.SaslUser;\nimport com.pulumi.alicloud.alikafka.SaslUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .config(\"\"\"\n {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n \"\"\")\n .build());\n\n var defaultSaslUser = new SaslUser(\"defaultSaslUser\", SaslUserArgs.builder()\n .instanceId(defaultInstance.id())\n .username(name)\n .password(\"tf_example123\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n config: |2\n {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n defaultSaslUser:\n type: alicloud:alikafka:SaslUser\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${name}\n password: tf_example123\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlikafka Sasl User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/saslUser:SaslUser example \u003cinstance_id\u003e:\u003cusername\u003e\n```\n\n",
+ "description": "Provides an AliKafka Sasl User resource.\n\n\n\nFor information about AliKafka Sasl User and how to use it, see [What is Sasl User](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createsasluser).\n\n\u003e **NOTE:** Available since v1.66.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n config: ` {\n \\\\\"enable.acl\\\\\": \\\\\"true\\\\\"\n }\n`,\n});\nconst defaultSaslUser = new alicloud.alikafka.SaslUser(\"default\", {\n instanceId: defaultInstance.id,\n username: name,\n password: \"tf_example123\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id,\n config=\"\"\" {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n\"\"\")\ndefault_sasl_user = alicloud.alikafka.SaslUser(\"default\",\n instance_id=default_instance.id,\n username=name,\n password=\"tf_example123\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n Config = @\" {\n \\\"\"enable.acl\\\"\": \\\"\"true\\\"\"\n }\n\",\n });\n\n var defaultSaslUser = new AliCloud.AliKafka.SaslUser(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Username = name,\n Password = \"tf_example123\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t\tConfig: pulumi.String(\" {\\n \\\\\\\"enable.acl\\\\\\\": \\\\\\\"true\\\\\\\"\\n }\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alikafka.NewSaslUser(ctx, \"default\", \u0026alikafka.SaslUserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUsername: pulumi.String(name),\n\t\t\tPassword: pulumi.String(\"tf_example123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.SaslUser;\nimport com.pulumi.alicloud.alikafka.SaslUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .config(\"\"\"\n {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n \"\"\")\n .build());\n\n var defaultSaslUser = new SaslUser(\"defaultSaslUser\", SaslUserArgs.builder()\n .instanceId(defaultInstance.id())\n .username(name)\n .password(\"tf_example123\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n config: |2\n {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n defaultSaslUser:\n type: alicloud:alikafka:SaslUser\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n username: ${name}\n password: tf_example123\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAliKafka Sasl User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/saslUser:SaslUser example \u003cinstance_id\u003e:\u003cusername\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
- "description": "ID of the ALIKAFKA Instance that owns the groups.\n"
+ "description": "The instance ID.\n"
},
"kmsEncryptedPassword": {
"type": "string",
@@ -103007,6 +104834,10 @@
},
"description": "An KMS encryption context used to decrypt \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e before creating or updating a user with \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e is set.\n"
},
+ "mechanism": {
+ "type": "string",
+ "description": "The encryption method. Valid values:\n- SCRAM-SHA-512. This is the default value.\n- SCRAM-SHA-256\n\u003e **NOTE:** This parameter is available only for serverless ApsaraMQ for Kafka instances.\n"
+ },
"password": {
"type": "string",
"description": "The password of the SASL user. It may consist of letters, digits, or underlines, with a length of 1 to 64 characters. You have to specify one of \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e fields.\n",
@@ -103014,7 +104845,7 @@
},
"type": {
"type": "string",
- "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`scram`\" pulumi-lang-dotnet=\"`Scram`\" pulumi-lang-go=\"`scram`\" pulumi-lang-python=\"`scram`\" pulumi-lang-yaml=\"`scram`\" pulumi-lang-java=\"`scram`\"\u003e`scram`\u003c/span\u003e.\n"
+ "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values:\n"
},
"username": {
"type": "string",
@@ -103023,13 +104854,15 @@
},
"required": [
"instanceId",
+ "mechanism",
+ "password",
"type",
"username"
],
"inputProperties": {
"instanceId": {
"type": "string",
- "description": "ID of the ALIKAFKA Instance that owns the groups.\n",
+ "description": "The instance ID.\n",
"willReplaceOnChanges": true
},
"kmsEncryptedPassword": {
@@ -103043,6 +104876,11 @@
},
"description": "An KMS encryption context used to decrypt \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e before creating or updating a user with \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e is set.\n"
},
+ "mechanism": {
+ "type": "string",
+ "description": "The encryption method. Valid values:\n- SCRAM-SHA-512. This is the default value.\n- SCRAM-SHA-256\n\u003e **NOTE:** This parameter is available only for serverless ApsaraMQ for Kafka instances.\n",
+ "willReplaceOnChanges": true
+ },
"password": {
"type": "string",
"description": "The password of the SASL user. It may consist of letters, digits, or underlines, with a length of 1 to 64 characters. You have to specify one of \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e fields.\n",
@@ -103050,7 +104888,7 @@
},
"type": {
"type": "string",
- "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`scram`\" pulumi-lang-dotnet=\"`Scram`\" pulumi-lang-go=\"`scram`\" pulumi-lang-python=\"`scram`\" pulumi-lang-yaml=\"`scram`\" pulumi-lang-java=\"`scram`\"\u003e`scram`\u003c/span\u003e.\n",
+ "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values:\n",
"willReplaceOnChanges": true
},
"username": {
@@ -103068,7 +104906,7 @@
"properties": {
"instanceId": {
"type": "string",
- "description": "ID of the ALIKAFKA Instance that owns the groups.\n",
+ "description": "The instance ID.\n",
"willReplaceOnChanges": true
},
"kmsEncryptedPassword": {
@@ -103082,6 +104920,11 @@
},
"description": "An KMS encryption context used to decrypt \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e before creating or updating a user with \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e is set.\n"
},
+ "mechanism": {
+ "type": "string",
+ "description": "The encryption method. Valid values:\n- SCRAM-SHA-512. This is the default value.\n- SCRAM-SHA-256\n\u003e **NOTE:** This parameter is available only for serverless ApsaraMQ for Kafka instances.\n",
+ "willReplaceOnChanges": true
+ },
"password": {
"type": "string",
"description": "The password of the SASL user. It may consist of letters, digits, or underlines, with a length of 1 to 64 characters. You have to specify one of \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e fields.\n",
@@ -103089,7 +104932,7 @@
},
"type": {
"type": "string",
- "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`scram`\" pulumi-lang-dotnet=\"`Scram`\" pulumi-lang-go=\"`scram`\" pulumi-lang-python=\"`scram`\" pulumi-lang-yaml=\"`scram`\" pulumi-lang-java=\"`scram`\"\u003e`scram`\u003c/span\u003e.\n",
+ "description": "The authentication mechanism. Default value: \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e. Valid values:\n",
"willReplaceOnChanges": true
},
"username": {
@@ -103102,7 +104945,7 @@
}
},
"alicloud:alikafka/topic:Topic": {
- "description": "Provides a Alikafka Topic resource.\n\nTopic in kafka.\n\nFor information about Alikafka Topic and how to use it, see [What is Topic](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createtopic).\n\n\u003e **NOTE:** Available since v1.56.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: name,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n config: JSON.stringify({\n \"enable.acl\": \"true\",\n }),\n});\nconst defaultTopic = new alicloud.alikafka.Topic(\"default\", {\n instanceId: defaultInstance.id,\n topic: name,\n remark: name,\n localTopic: true,\n compactTopic: true,\n partitionNum: 18,\n configs: JSON.stringify({\n \"message.format.version\": \"2.2.0\",\n \"max.message.bytes\": \"10485760\",\n \"min.insync.replicas\": \"1\",\n \"replication-factor\": \"2\",\n \"retention.ms\": \"3600000\",\n }),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=name,\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id,\n config=json.dumps({\n \"enable.acl\": \"true\",\n }))\ndefault_topic = alicloud.alikafka.Topic(\"default\",\n instance_id=default_instance.id,\n topic=name,\n remark=name,\n local_topic=True,\n compact_topic=True,\n partition_num=18,\n configs=json.dumps({\n \"message.format.version\": \"2.2.0\",\n \"max.message.bytes\": \"10485760\",\n \"min.insync.replicas\": \"1\",\n \"replication-factor\": \"2\",\n \"retention.ms\": \"3600000\",\n }),\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = name,\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"enable.acl\"] = \"true\",\n }),\n });\n\n var defaultTopic = new AliCloud.AliKafka.Topic(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n TopicName = name,\n Remark = name,\n LocalTopic = true,\n CompactTopic = true,\n PartitionNum = 18,\n Configs = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"message.format.version\"] = \"2.2.0\",\n [\"max.message.bytes\"] = \"10485760\",\n [\"min.insync.replicas\"] = \"1\",\n [\"replication-factor\"] = \"2\",\n [\"retention.ms\"] = \"3600000\",\n }),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"enable.acl\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t\tConfig: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"message.format.version\": \"2.2.0\",\n\t\t\t\"max.message.bytes\": \"10485760\",\n\t\t\t\"min.insync.replicas\": \"1\",\n\t\t\t\"replication-factor\": \"2\",\n\t\t\t\"retention.ms\": \"3600000\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = alikafka.NewTopic(ctx, \"default\", \u0026alikafka.TopicArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tTopic: pulumi.String(name),\n\t\t\tRemark: pulumi.String(name),\n\t\t\tLocalTopic: pulumi.Bool(true),\n\t\t\tCompactTopic: pulumi.Bool(true),\n\t\t\tPartitionNum: pulumi.Int(18),\n\t\t\tConfigs: pulumi.String(json1),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.Topic;\nimport com.pulumi.alicloud.alikafka.TopicArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(name)\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"enable.acl\", \"true\")\n )))\n .build());\n\n var defaultTopic = new Topic(\"defaultTopic\", TopicArgs.builder()\n .instanceId(defaultInstance.id())\n .topic(name)\n .remark(name)\n .localTopic(true)\n .compactTopic(true)\n .partitionNum(18)\n .configs(serializeJson(\n jsonObject(\n jsonProperty(\"message.format.version\", \"2.2.0\"),\n jsonProperty(\"max.message.bytes\", \"10485760\"),\n jsonProperty(\"min.insync.replicas\", \"1\"),\n jsonProperty(\"replication-factor\", \"2\"),\n jsonProperty(\"retention.ms\", \"3600000\")\n )))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n config:\n fn::toJSON:\n enable.acl: 'true'\n defaultTopic:\n type: alicloud:alikafka:Topic\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n topic: ${name}\n remark: ${name}\n localTopic: 'true'\n compactTopic: 'true'\n partitionNum: '18'\n configs:\n fn::toJSON:\n message.format.version: 2.2.0\n max.message.bytes: '10485760'\n min.insync.replicas: '1'\n replication-factor: '2'\n retention.ms: '3600000'\n tags:\n Created: TF\n For: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlikafka Topic can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/topic:Topic example \u003cinstance_id\u003e:\u003ctopic\u003e\n```\n\n",
+ "description": "Provides a Alikafka Topic resource.\n\nTopic in kafka.\n\nFor information about Alikafka Topic and how to use it, see [What is Topic](https://www.alibabacloud.com/help/en/message-queue-for-apache-kafka/latest/api-alikafka-2019-09-16-createtopic).\n\n\u003e **NOTE:** Available since v1.56.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.alikafka.Instance(\"default\", {\n name: name,\n partitionNum: 50,\n diskType: 1,\n diskSize: 500,\n deployType: 5,\n ioMax: 20,\n specType: \"professional\",\n serviceVersion: \"2.2.0\",\n vswitchId: defaultSwitch.id,\n securityGroup: defaultSecurityGroup.id,\n config: JSON.stringify({\n \"enable.acl\": \"true\",\n }),\n});\nconst defaultTopic = new alicloud.alikafka.Topic(\"default\", {\n instanceId: defaultInstance.id,\n topic: name,\n remark: name,\n localTopic: true,\n compactTopic: true,\n partitionNum: 18,\n configs: JSON.stringify({\n \"message.format.version\": \"2.2.0\",\n \"max.message.bytes\": \"10485760\",\n \"min.insync.replicas\": \"1\",\n \"replication-factor\": \"2\",\n \"retention.ms\": \"3600000\",\n }),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.alikafka.Instance(\"default\",\n name=name,\n partition_num=50,\n disk_type=1,\n disk_size=500,\n deploy_type=5,\n io_max=20,\n spec_type=\"professional\",\n service_version=\"2.2.0\",\n vswitch_id=default_switch.id,\n security_group=default_security_group.id,\n config=json.dumps({\n \"enable.acl\": \"true\",\n }))\ndefault_topic = alicloud.alikafka.Topic(\"default\",\n instance_id=default_instance.id,\n topic=name,\n remark=name,\n local_topic=True,\n compact_topic=True,\n partition_num=18,\n configs=json.dumps({\n \"message.format.version\": \"2.2.0\",\n \"max.message.bytes\": \"10485760\",\n \"min.insync.replicas\": \"1\",\n \"replication-factor\": \"2\",\n \"retention.ms\": \"3600000\",\n }),\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.AliKafka.Instance(\"default\", new()\n {\n Name = name,\n PartitionNum = 50,\n DiskType = 1,\n DiskSize = 500,\n DeployType = 5,\n IoMax = 20,\n SpecType = \"professional\",\n ServiceVersion = \"2.2.0\",\n VswitchId = defaultSwitch.Id,\n SecurityGroup = defaultSecurityGroup.Id,\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"enable.acl\"] = \"true\",\n }),\n });\n\n var defaultTopic = new AliCloud.AliKafka.Topic(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n TopicName = name,\n Remark = name,\n LocalTopic = true,\n CompactTopic = true,\n PartitionNum = 18,\n Configs = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"message.format.version\"] = \"2.2.0\",\n [\"max.message.bytes\"] = \"10485760\",\n [\"min.insync.replicas\"] = \"1\",\n [\"replication-factor\"] = \"2\",\n [\"retention.ms\"] = \"3600000\",\n }),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"enable.acl\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultInstance, err := alikafka.NewInstance(ctx, \"default\", \u0026alikafka.InstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tPartitionNum: pulumi.Int(50),\n\t\t\tDiskType: pulumi.Int(1),\n\t\t\tDiskSize: pulumi.Int(500),\n\t\t\tDeployType: pulumi.Int(5),\n\t\t\tIoMax: pulumi.Int(20),\n\t\t\tSpecType: pulumi.String(\"professional\"),\n\t\t\tServiceVersion: pulumi.String(\"2.2.0\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroup: defaultSecurityGroup.ID(),\n\t\t\tConfig: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"message.format.version\": \"2.2.0\",\n\t\t\t\"max.message.bytes\": \"10485760\",\n\t\t\t\"min.insync.replicas\": \"1\",\n\t\t\t\"replication-factor\": \"2\",\n\t\t\t\"retention.ms\": \"3600000\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = alikafka.NewTopic(ctx, \"default\", \u0026alikafka.TopicArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tTopic: pulumi.String(name),\n\t\t\tRemark: pulumi.String(name),\n\t\t\tLocalTopic: pulumi.Bool(true),\n\t\t\tCompactTopic: pulumi.Bool(true),\n\t\t\tPartitionNum: pulumi.Int(18),\n\t\t\tConfigs: pulumi.String(json1),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.alikafka.Instance;\nimport com.pulumi.alicloud.alikafka.InstanceArgs;\nimport com.pulumi.alicloud.alikafka.Topic;\nimport com.pulumi.alicloud.alikafka.TopicArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .name(name)\n .partitionNum(50)\n .diskType(1)\n .diskSize(500)\n .deployType(5)\n .ioMax(20)\n .specType(\"professional\")\n .serviceVersion(\"2.2.0\")\n .vswitchId(defaultSwitch.id())\n .securityGroup(defaultSecurityGroup.id())\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"enable.acl\", \"true\")\n )))\n .build());\n\n var defaultTopic = new Topic(\"defaultTopic\", TopicArgs.builder()\n .instanceId(defaultInstance.id())\n .topic(name)\n .remark(name)\n .localTopic(true)\n .compactTopic(true)\n .partitionNum(18)\n .configs(serializeJson(\n jsonObject(\n jsonProperty(\"message.format.version\", \"2.2.0\"),\n jsonProperty(\"max.message.bytes\", \"10485760\"),\n jsonProperty(\"min.insync.replicas\", \"1\"),\n jsonProperty(\"replication-factor\", \"2\"),\n jsonProperty(\"retention.ms\", \"3600000\")\n )))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:alikafka:Instance\n name: default\n properties:\n name: ${name}\n partitionNum: 50\n diskType: '1'\n diskSize: '500'\n deployType: '5'\n ioMax: '20'\n specType: professional\n serviceVersion: 2.2.0\n vswitchId: ${defaultSwitch.id}\n securityGroup: ${defaultSecurityGroup.id}\n config:\n fn::toJSON:\n enable.acl: 'true'\n defaultTopic:\n type: alicloud:alikafka:Topic\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n topic: ${name}\n remark: ${name}\n localTopic: 'true'\n compactTopic: 'true'\n partitionNum: '18'\n configs:\n fn::toJSON:\n message.format.version: 2.2.0\n max.message.bytes: '10485760'\n min.insync.replicas: '1'\n replication-factor: '2'\n retention.ms: '3600000'\n tags:\n Created: TF\n For: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlikafka Topic can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:alikafka/topic:Topic example \u003cinstance_id\u003e:\u003ctopic\u003e\n```\n\n",
"properties": {
"compactTopic": {
"type": "boolean",
@@ -103282,7 +105125,7 @@
}
},
"alicloud:amqp/binding:Binding": {
- "description": "Provides a RabbitMQ (AMQP) Binding resource.\n\nFor information about RabbitMQ (AMQP) Binding and how to use it, see [What is Binding](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createbinding).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.amqp.Instance(\"default\", {\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n queueCapacity: \"200\",\n storageSize: \"700\",\n supportEip: false,\n maxEipTps: \"128\",\n paymentType: \"Subscription\",\n period: 1,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: _default.id,\n virtualHostName: \"tf-example\",\n});\nconst defaultExchange = new alicloud.amqp.Exchange(\"default\", {\n autoDeleteState: false,\n exchangeName: \"tf-example\",\n exchangeType: \"HEADERS\",\n instanceId: _default.id,\n internal: false,\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\nconst defaultQueue = new alicloud.amqp.Queue(\"default\", {\n instanceId: _default.id,\n queueName: \"tf-example\",\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\nconst defaultBinding = new alicloud.amqp.Binding(\"default\", {\n argument: \"x-match:all\",\n bindingKey: defaultQueue.queueName,\n bindingType: \"QUEUE\",\n destinationName: \"tf-example\",\n instanceId: _default.id,\n sourceExchange: defaultExchange.exchangeName,\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.amqp.Instance(\"default\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n queue_capacity=\"200\",\n storage_size=\"700\",\n support_eip=False,\n max_eip_tps=\"128\",\n payment_type=\"Subscription\",\n period=1)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default.id,\n virtual_host_name=\"tf-example\")\ndefault_exchange = alicloud.amqp.Exchange(\"default\",\n auto_delete_state=False,\n exchange_name=\"tf-example\",\n exchange_type=\"HEADERS\",\n instance_id=default.id,\n internal=False,\n virtual_host_name=default_virtual_host.virtual_host_name)\ndefault_queue = alicloud.amqp.Queue(\"default\",\n instance_id=default.id,\n queue_name=\"tf-example\",\n virtual_host_name=default_virtual_host.virtual_host_name)\ndefault_binding = alicloud.amqp.Binding(\"default\",\n argument=\"x-match:all\",\n binding_key=default_queue.queue_name,\n binding_type=\"QUEUE\",\n destination_name=\"tf-example\",\n instance_id=default.id,\n source_exchange=default_exchange.exchange_name,\n virtual_host_name=default_virtual_host.virtual_host_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n QueueCapacity = \"200\",\n StorageSize = \"700\",\n SupportEip = false,\n MaxEipTps = \"128\",\n PaymentType = \"Subscription\",\n Period = 1,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = @default.Id,\n VirtualHostName = \"tf-example\",\n });\n\n var defaultExchange = new AliCloud.Amqp.Exchange(\"default\", new()\n {\n AutoDeleteState = false,\n ExchangeName = \"tf-example\",\n ExchangeType = \"HEADERS\",\n InstanceId = @default.Id,\n Internal = false,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n var defaultQueue = new AliCloud.Amqp.Queue(\"default\", new()\n {\n InstanceId = @default.Id,\n QueueName = \"tf-example\",\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n var defaultBinding = new AliCloud.Amqp.Binding(\"default\", new()\n {\n Argument = \"x-match:all\",\n BindingKey = defaultQueue.QueueName,\n BindingType = \"QUEUE\",\n DestinationName = \"tf-example\",\n InstanceId = @default.Id,\n SourceExchange = defaultExchange.ExchangeName,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tStorageSize: pulumi.String(\"700\"),\n\t\t\tSupportEip: pulumi.Bool(false),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualHost, err := amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tVirtualHostName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultExchange, err := amqp.NewExchange(ctx, \"default\", \u0026amqp.ExchangeArgs{\n\t\t\tAutoDeleteState: pulumi.Bool(false),\n\t\t\tExchangeName: pulumi.String(\"tf-example\"),\n\t\t\tExchangeType: pulumi.String(\"HEADERS\"),\n\t\t\tInstanceId: _default.ID(),\n\t\t\tInternal: pulumi.Bool(false),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQueue, err := amqp.NewQueue(ctx, \"default\", \u0026amqp.QueueArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tQueueName: pulumi.String(\"tf-example\"),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewBinding(ctx, \"default\", \u0026amqp.BindingArgs{\n\t\t\tArgument: pulumi.String(\"x-match:all\"),\n\t\t\tBindingKey: defaultQueue.QueueName,\n\t\t\tBindingType: pulumi.String(\"QUEUE\"),\n\t\t\tDestinationName: pulumi.String(\"tf-example\"),\n\t\t\tInstanceId: _default.ID(),\n\t\t\tSourceExchange: defaultExchange.ExchangeName,\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport com.pulumi.alicloud.amqp.Exchange;\nimport com.pulumi.alicloud.amqp.ExchangeArgs;\nimport com.pulumi.alicloud.amqp.Queue;\nimport com.pulumi.alicloud.amqp.QueueArgs;\nimport com.pulumi.alicloud.amqp.Binding;\nimport com.pulumi.alicloud.amqp.BindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .queueCapacity(\"200\")\n .storageSize(\"700\")\n .supportEip(false)\n .maxEipTps(\"128\")\n .paymentType(\"Subscription\")\n .period(1)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(default_.id())\n .virtualHostName(\"tf-example\")\n .build());\n\n var defaultExchange = new Exchange(\"defaultExchange\", ExchangeArgs.builder()\n .autoDeleteState(false)\n .exchangeName(\"tf-example\")\n .exchangeType(\"HEADERS\")\n .instanceId(default_.id())\n .internal(false)\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n var defaultQueue = new Queue(\"defaultQueue\", QueueArgs.builder()\n .instanceId(default_.id())\n .queueName(\"tf-example\")\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n var defaultBinding = new Binding(\"defaultBinding\", BindingArgs.builder()\n .argument(\"x-match:all\")\n .bindingKey(defaultQueue.queueName())\n .bindingType(\"QUEUE\")\n .destinationName(\"tf-example\")\n .instanceId(default_.id())\n .sourceExchange(defaultExchange.exchangeName())\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:amqp:Instance\n properties:\n instanceType: enterprise\n maxTps: 3000\n queueCapacity: 200\n storageSize: 700\n supportEip: false\n maxEipTps: 128\n paymentType: Subscription\n period: 1\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${default.id}\n virtualHostName: tf-example\n defaultExchange:\n type: alicloud:amqp:Exchange\n name: default\n properties:\n autoDeleteState: false\n exchangeName: tf-example\n exchangeType: HEADERS\n instanceId: ${default.id}\n internal: false\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n defaultQueue:\n type: alicloud:amqp:Queue\n name: default\n properties:\n instanceId: ${default.id}\n queueName: tf-example\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n defaultBinding:\n type: alicloud:amqp:Binding\n name: default\n properties:\n argument: x-match:all\n bindingKey: ${defaultQueue.queueName}\n bindingType: QUEUE\n destinationName: tf-example\n instanceId: ${default.id}\n sourceExchange: ${defaultExchange.exchangeName}\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nRabbitMQ (AMQP) Binding can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/binding:Binding example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003csource_exchange\u003e:\u003cdestination_name\u003e\n```\n\n",
+ "description": "Provides a RabbitMQ (AMQP) Binding resource.\n\nFor information about RabbitMQ (AMQP) Binding and how to use it, see [What is Binding](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createbinding).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.amqp.Instance(\"default\", {\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n queueCapacity: \"200\",\n storageSize: \"700\",\n supportEip: false,\n maxEipTps: \"128\",\n paymentType: \"Subscription\",\n period: 1,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: _default.id,\n virtualHostName: \"tf-example\",\n});\nconst defaultExchange = new alicloud.amqp.Exchange(\"default\", {\n autoDeleteState: false,\n exchangeName: \"tf-example\",\n exchangeType: \"HEADERS\",\n instanceId: _default.id,\n internal: false,\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\nconst defaultQueue = new alicloud.amqp.Queue(\"default\", {\n instanceId: _default.id,\n queueName: \"tf-example\",\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\nconst defaultBinding = new alicloud.amqp.Binding(\"default\", {\n argument: \"x-match:all\",\n bindingKey: defaultQueue.queueName,\n bindingType: \"QUEUE\",\n destinationName: \"tf-example\",\n instanceId: _default.id,\n sourceExchange: defaultExchange.exchangeName,\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.amqp.Instance(\"default\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n queue_capacity=\"200\",\n storage_size=\"700\",\n support_eip=False,\n max_eip_tps=\"128\",\n payment_type=\"Subscription\",\n period=1)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default.id,\n virtual_host_name=\"tf-example\")\ndefault_exchange = alicloud.amqp.Exchange(\"default\",\n auto_delete_state=False,\n exchange_name=\"tf-example\",\n exchange_type=\"HEADERS\",\n instance_id=default.id,\n internal=False,\n virtual_host_name=default_virtual_host.virtual_host_name)\ndefault_queue = alicloud.amqp.Queue(\"default\",\n instance_id=default.id,\n queue_name=\"tf-example\",\n virtual_host_name=default_virtual_host.virtual_host_name)\ndefault_binding = alicloud.amqp.Binding(\"default\",\n argument=\"x-match:all\",\n binding_key=default_queue.queue_name,\n binding_type=\"QUEUE\",\n destination_name=\"tf-example\",\n instance_id=default.id,\n source_exchange=default_exchange.exchange_name,\n virtual_host_name=default_virtual_host.virtual_host_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n QueueCapacity = \"200\",\n StorageSize = \"700\",\n SupportEip = false,\n MaxEipTps = \"128\",\n PaymentType = \"Subscription\",\n Period = 1,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = @default.Id,\n VirtualHostName = \"tf-example\",\n });\n\n var defaultExchange = new AliCloud.Amqp.Exchange(\"default\", new()\n {\n AutoDeleteState = false,\n ExchangeName = \"tf-example\",\n ExchangeType = \"HEADERS\",\n InstanceId = @default.Id,\n Internal = false,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n var defaultQueue = new AliCloud.Amqp.Queue(\"default\", new()\n {\n InstanceId = @default.Id,\n QueueName = \"tf-example\",\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n var defaultBinding = new AliCloud.Amqp.Binding(\"default\", new()\n {\n Argument = \"x-match:all\",\n BindingKey = defaultQueue.QueueName,\n BindingType = \"QUEUE\",\n DestinationName = \"tf-example\",\n InstanceId = @default.Id,\n SourceExchange = defaultExchange.ExchangeName,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tStorageSize: pulumi.String(\"700\"),\n\t\t\tSupportEip: pulumi.Bool(false),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualHost, err := amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tVirtualHostName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultExchange, err := amqp.NewExchange(ctx, \"default\", \u0026amqp.ExchangeArgs{\n\t\t\tAutoDeleteState: pulumi.Bool(false),\n\t\t\tExchangeName: pulumi.String(\"tf-example\"),\n\t\t\tExchangeType: pulumi.String(\"HEADERS\"),\n\t\t\tInstanceId: _default.ID(),\n\t\t\tInternal: pulumi.Bool(false),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQueue, err := amqp.NewQueue(ctx, \"default\", \u0026amqp.QueueArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tQueueName: pulumi.String(\"tf-example\"),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewBinding(ctx, \"default\", \u0026amqp.BindingArgs{\n\t\t\tArgument: pulumi.String(\"x-match:all\"),\n\t\t\tBindingKey: defaultQueue.QueueName,\n\t\t\tBindingType: pulumi.String(\"QUEUE\"),\n\t\t\tDestinationName: pulumi.String(\"tf-example\"),\n\t\t\tInstanceId: _default.ID(),\n\t\t\tSourceExchange: defaultExchange.ExchangeName,\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport com.pulumi.alicloud.amqp.Exchange;\nimport com.pulumi.alicloud.amqp.ExchangeArgs;\nimport com.pulumi.alicloud.amqp.Queue;\nimport com.pulumi.alicloud.amqp.QueueArgs;\nimport com.pulumi.alicloud.amqp.Binding;\nimport com.pulumi.alicloud.amqp.BindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .queueCapacity(\"200\")\n .storageSize(\"700\")\n .supportEip(false)\n .maxEipTps(\"128\")\n .paymentType(\"Subscription\")\n .period(1)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(default_.id())\n .virtualHostName(\"tf-example\")\n .build());\n\n var defaultExchange = new Exchange(\"defaultExchange\", ExchangeArgs.builder()\n .autoDeleteState(false)\n .exchangeName(\"tf-example\")\n .exchangeType(\"HEADERS\")\n .instanceId(default_.id())\n .internal(false)\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n var defaultQueue = new Queue(\"defaultQueue\", QueueArgs.builder()\n .instanceId(default_.id())\n .queueName(\"tf-example\")\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n var defaultBinding = new Binding(\"defaultBinding\", BindingArgs.builder()\n .argument(\"x-match:all\")\n .bindingKey(defaultQueue.queueName())\n .bindingType(\"QUEUE\")\n .destinationName(\"tf-example\")\n .instanceId(default_.id())\n .sourceExchange(defaultExchange.exchangeName())\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:amqp:Instance\n properties:\n instanceType: enterprise\n maxTps: 3000\n queueCapacity: 200\n storageSize: 700\n supportEip: false\n maxEipTps: 128\n paymentType: Subscription\n period: 1\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${default.id}\n virtualHostName: tf-example\n defaultExchange:\n type: alicloud:amqp:Exchange\n name: default\n properties:\n autoDeleteState: false\n exchangeName: tf-example\n exchangeType: HEADERS\n instanceId: ${default.id}\n internal: false\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n defaultQueue:\n type: alicloud:amqp:Queue\n name: default\n properties:\n instanceId: ${default.id}\n queueName: tf-example\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n defaultBinding:\n type: alicloud:amqp:Binding\n name: default\n properties:\n argument: x-match:all\n bindingKey: ${defaultQueue.queueName}\n bindingType: QUEUE\n destinationName: tf-example\n instanceId: ${default.id}\n sourceExchange: ${defaultExchange.exchangeName}\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nRabbitMQ (AMQP) Binding can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/binding:Binding example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003csource_exchange\u003e:\u003cdestination_name\u003e\n```\n\n",
"properties": {
"argument": {
"type": "string",
@@ -103410,7 +105253,7 @@
}
},
"alicloud:amqp/exchange:Exchange": {
- "description": "Provides a RabbitMQ (AMQP) Exchange resource.\n\n\n\nFor information about RabbitMQ (AMQP) Exchange and how to use it, see [What is Exchange](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createexchange).\n\n\u003e **NOTE:** Available since v1.128.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst virtualHostName = config.get(\"virtualHostName\") || \"/\";\nconst createInstance = new alicloud.amqp.Instance(\"CreateInstance\", {\n renewalDuration: 1,\n maxTps: \"3000\",\n periodCycle: \"Month\",\n maxConnections: 2000,\n supportEip: true,\n autoRenew: false,\n renewalStatus: \"AutoRenewal\",\n period: 12,\n instanceName: name,\n supportTracing: false,\n paymentType: \"Subscription\",\n renewalDurationUnit: \"Month\",\n instanceType: \"enterprise\",\n queueCapacity: \"200\",\n maxEipTps: \"128\",\n storageSize: \"0\",\n});\nconst _default = new alicloud.amqp.Exchange(\"default\", {\n virtualHostName: virtualHostName,\n instanceId: createInstance.id,\n internal: true,\n autoDeleteState: false,\n exchangeName: name,\n exchangeType: \"X_CONSISTENT_HASH\",\n alternateExchange: \"bakExchange\",\n xDelayedType: \"DIRECT\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nvirtual_host_name = config.get(\"virtualHostName\")\nif virtual_host_name is None:\n virtual_host_name = \"/\"\ncreate_instance = alicloud.amqp.Instance(\"CreateInstance\",\n renewal_duration=1,\n max_tps=\"3000\",\n period_cycle=\"Month\",\n max_connections=2000,\n support_eip=True,\n auto_renew=False,\n renewal_status=\"AutoRenewal\",\n period=12,\n instance_name=name,\n support_tracing=False,\n payment_type=\"Subscription\",\n renewal_duration_unit=\"Month\",\n instance_type=\"enterprise\",\n queue_capacity=\"200\",\n max_eip_tps=\"128\",\n storage_size=\"0\")\ndefault = alicloud.amqp.Exchange(\"default\",\n virtual_host_name=virtual_host_name,\n instance_id=create_instance.id,\n internal=True,\n auto_delete_state=False,\n exchange_name=name,\n exchange_type=\"X_CONSISTENT_HASH\",\n alternate_exchange=\"bakExchange\",\n x_delayed_type=\"DIRECT\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var virtualHostName = config.Get(\"virtualHostName\") ?? \"/\";\n var createInstance = new AliCloud.Amqp.Instance(\"CreateInstance\", new()\n {\n RenewalDuration = 1,\n MaxTps = \"3000\",\n PeriodCycle = \"Month\",\n MaxConnections = 2000,\n SupportEip = true,\n AutoRenew = false,\n RenewalStatus = \"AutoRenewal\",\n Period = 12,\n InstanceName = name,\n SupportTracing = false,\n PaymentType = \"Subscription\",\n RenewalDurationUnit = \"Month\",\n InstanceType = \"enterprise\",\n QueueCapacity = \"200\",\n MaxEipTps = \"128\",\n StorageSize = \"0\",\n });\n\n var @default = new AliCloud.Amqp.Exchange(\"default\", new()\n {\n VirtualHostName = virtualHostName,\n InstanceId = createInstance.Id,\n Internal = true,\n AutoDeleteState = false,\n ExchangeName = name,\n ExchangeType = \"X_CONSISTENT_HASH\",\n AlternateExchange = \"bakExchange\",\n XDelayedType = \"DIRECT\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvirtualHostName := \"/\"\n\t\tif param := cfg.Get(\"virtualHostName\"); param != \"\" {\n\t\t\tvirtualHostName = param\n\t\t}\n\t\tcreateInstance, err := amqp.NewInstance(ctx, \"CreateInstance\", \u0026amqp.InstanceArgs{\n\t\t\tRenewalDuration: pulumi.Int(1),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tPeriodCycle: pulumi.String(\"Month\"),\n\t\t\tMaxConnections: pulumi.Int(2000),\n\t\t\tSupportEip: pulumi.Bool(true),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tPeriod: pulumi.Int(12),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSupportTracing: pulumi.Bool(false),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tRenewalDurationUnit: pulumi.String(\"Month\"),\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tStorageSize: pulumi.String(\"0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewExchange(ctx, \"default\", \u0026amqp.ExchangeArgs{\n\t\t\tVirtualHostName: pulumi.String(virtualHostName),\n\t\t\tInstanceId: createInstance.ID(),\n\t\t\tInternal: pulumi.Bool(true),\n\t\t\tAutoDeleteState: pulumi.Bool(false),\n\t\t\tExchangeName: pulumi.String(name),\n\t\t\tExchangeType: pulumi.String(\"X_CONSISTENT_HASH\"),\n\t\t\tAlternateExchange: pulumi.String(\"bakExchange\"),\n\t\t\tXDelayedType: pulumi.String(\"DIRECT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.Exchange;\nimport com.pulumi.alicloud.amqp.ExchangeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var virtualHostName = config.get(\"virtualHostName\").orElse(\"/\");\n var createInstance = new Instance(\"createInstance\", InstanceArgs.builder()\n .renewalDuration(1)\n .maxTps(\"3000\")\n .periodCycle(\"Month\")\n .maxConnections(2000)\n .supportEip(true)\n .autoRenew(false)\n .renewalStatus(\"AutoRenewal\")\n .period(12)\n .instanceName(name)\n .supportTracing(false)\n .paymentType(\"Subscription\")\n .renewalDurationUnit(\"Month\")\n .instanceType(\"enterprise\")\n .queueCapacity(\"200\")\n .maxEipTps(\"128\")\n .storageSize(\"0\")\n .build());\n\n var default_ = new Exchange(\"default\", ExchangeArgs.builder()\n .virtualHostName(virtualHostName)\n .instanceId(createInstance.id())\n .internal(true)\n .autoDeleteState(false)\n .exchangeName(name)\n .exchangeType(\"X_CONSISTENT_HASH\")\n .alternateExchange(\"bakExchange\")\n .xDelayedType(\"DIRECT\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n virtualHostName:\n type: string\n default: /\nresources:\n createInstance:\n type: alicloud:amqp:Instance\n name: CreateInstance\n properties:\n renewalDuration: '1'\n maxTps: '3000'\n periodCycle: Month\n maxConnections: '2000'\n supportEip: true\n autoRenew: false\n renewalStatus: AutoRenewal\n period: '12'\n instanceName: ${name}\n supportTracing: false\n paymentType: Subscription\n renewalDurationUnit: Month\n instanceType: enterprise\n queueCapacity: '200'\n maxEipTps: '128'\n storageSize: '0'\n default:\n type: alicloud:amqp:Exchange\n properties:\n virtualHostName: ${virtualHostName}\n instanceId: ${createInstance.id}\n internal: 'true'\n autoDeleteState: 'false'\n exchangeName: ${name}\n exchangeType: X_CONSISTENT_HASH\n alternateExchange: bakExchange\n xDelayedType: DIRECT\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nRabbitMQ (AMQP) Exchange can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/exchange:Exchange example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003cexchange_name\u003e\n```\n\n",
+ "description": "Provides a RabbitMQ (AMQP) Exchange resource.\n\n\n\nFor information about RabbitMQ (AMQP) Exchange and how to use it, see [What is Exchange](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createexchange).\n\n\u003e **NOTE:** Available since v1.128.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst virtualHostName = config.get(\"virtualHostName\") || \"/\";\nconst createInstance = new alicloud.amqp.Instance(\"CreateInstance\", {\n renewalDuration: 1,\n maxTps: \"3000\",\n periodCycle: \"Month\",\n maxConnections: 2000,\n supportEip: true,\n autoRenew: false,\n renewalStatus: \"AutoRenewal\",\n period: 12,\n instanceName: name,\n supportTracing: false,\n paymentType: \"Subscription\",\n renewalDurationUnit: \"Month\",\n instanceType: \"enterprise\",\n queueCapacity: \"200\",\n maxEipTps: \"128\",\n storageSize: \"0\",\n});\nconst _default = new alicloud.amqp.Exchange(\"default\", {\n virtualHostName: virtualHostName,\n instanceId: createInstance.id,\n internal: true,\n autoDeleteState: false,\n exchangeName: name,\n exchangeType: \"X_CONSISTENT_HASH\",\n alternateExchange: \"bakExchange\",\n xDelayedType: \"DIRECT\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nvirtual_host_name = config.get(\"virtualHostName\")\nif virtual_host_name is None:\n virtual_host_name = \"/\"\ncreate_instance = alicloud.amqp.Instance(\"CreateInstance\",\n renewal_duration=1,\n max_tps=\"3000\",\n period_cycle=\"Month\",\n max_connections=2000,\n support_eip=True,\n auto_renew=False,\n renewal_status=\"AutoRenewal\",\n period=12,\n instance_name=name,\n support_tracing=False,\n payment_type=\"Subscription\",\n renewal_duration_unit=\"Month\",\n instance_type=\"enterprise\",\n queue_capacity=\"200\",\n max_eip_tps=\"128\",\n storage_size=\"0\")\ndefault = alicloud.amqp.Exchange(\"default\",\n virtual_host_name=virtual_host_name,\n instance_id=create_instance.id,\n internal=True,\n auto_delete_state=False,\n exchange_name=name,\n exchange_type=\"X_CONSISTENT_HASH\",\n alternate_exchange=\"bakExchange\",\n x_delayed_type=\"DIRECT\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var virtualHostName = config.Get(\"virtualHostName\") ?? \"/\";\n var createInstance = new AliCloud.Amqp.Instance(\"CreateInstance\", new()\n {\n RenewalDuration = 1,\n MaxTps = \"3000\",\n PeriodCycle = \"Month\",\n MaxConnections = 2000,\n SupportEip = true,\n AutoRenew = false,\n RenewalStatus = \"AutoRenewal\",\n Period = 12,\n InstanceName = name,\n SupportTracing = false,\n PaymentType = \"Subscription\",\n RenewalDurationUnit = \"Month\",\n InstanceType = \"enterprise\",\n QueueCapacity = \"200\",\n MaxEipTps = \"128\",\n StorageSize = \"0\",\n });\n\n var @default = new AliCloud.Amqp.Exchange(\"default\", new()\n {\n VirtualHostName = virtualHostName,\n InstanceId = createInstance.Id,\n Internal = true,\n AutoDeleteState = false,\n ExchangeName = name,\n ExchangeType = \"X_CONSISTENT_HASH\",\n AlternateExchange = \"bakExchange\",\n XDelayedType = \"DIRECT\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvirtualHostName := \"/\"\n\t\tif param := cfg.Get(\"virtualHostName\"); param != \"\" {\n\t\t\tvirtualHostName = param\n\t\t}\n\t\tcreateInstance, err := amqp.NewInstance(ctx, \"CreateInstance\", \u0026amqp.InstanceArgs{\n\t\t\tRenewalDuration: pulumi.Int(1),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tPeriodCycle: pulumi.String(\"Month\"),\n\t\t\tMaxConnections: pulumi.Int(2000),\n\t\t\tSupportEip: pulumi.Bool(true),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tPeriod: pulumi.Int(12),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSupportTracing: pulumi.Bool(false),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tRenewalDurationUnit: pulumi.String(\"Month\"),\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tStorageSize: pulumi.String(\"0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewExchange(ctx, \"default\", \u0026amqp.ExchangeArgs{\n\t\t\tVirtualHostName: pulumi.String(virtualHostName),\n\t\t\tInstanceId: createInstance.ID(),\n\t\t\tInternal: pulumi.Bool(true),\n\t\t\tAutoDeleteState: pulumi.Bool(false),\n\t\t\tExchangeName: pulumi.String(name),\n\t\t\tExchangeType: pulumi.String(\"X_CONSISTENT_HASH\"),\n\t\t\tAlternateExchange: pulumi.String(\"bakExchange\"),\n\t\t\tXDelayedType: pulumi.String(\"DIRECT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.Exchange;\nimport com.pulumi.alicloud.amqp.ExchangeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var virtualHostName = config.get(\"virtualHostName\").orElse(\"/\");\n var createInstance = new Instance(\"createInstance\", InstanceArgs.builder()\n .renewalDuration(1)\n .maxTps(\"3000\")\n .periodCycle(\"Month\")\n .maxConnections(2000)\n .supportEip(true)\n .autoRenew(false)\n .renewalStatus(\"AutoRenewal\")\n .period(12)\n .instanceName(name)\n .supportTracing(false)\n .paymentType(\"Subscription\")\n .renewalDurationUnit(\"Month\")\n .instanceType(\"enterprise\")\n .queueCapacity(\"200\")\n .maxEipTps(\"128\")\n .storageSize(\"0\")\n .build());\n\n var default_ = new Exchange(\"default\", ExchangeArgs.builder()\n .virtualHostName(virtualHostName)\n .instanceId(createInstance.id())\n .internal(true)\n .autoDeleteState(false)\n .exchangeName(name)\n .exchangeType(\"X_CONSISTENT_HASH\")\n .alternateExchange(\"bakExchange\")\n .xDelayedType(\"DIRECT\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n virtualHostName:\n type: string\n default: /\nresources:\n createInstance:\n type: alicloud:amqp:Instance\n name: CreateInstance\n properties:\n renewalDuration: '1'\n maxTps: '3000'\n periodCycle: Month\n maxConnections: '2000'\n supportEip: true\n autoRenew: false\n renewalStatus: AutoRenewal\n period: '12'\n instanceName: ${name}\n supportTracing: false\n paymentType: Subscription\n renewalDurationUnit: Month\n instanceType: enterprise\n queueCapacity: '200'\n maxEipTps: '128'\n storageSize: '0'\n default:\n type: alicloud:amqp:Exchange\n properties:\n virtualHostName: ${virtualHostName}\n instanceId: ${createInstance.id}\n internal: 'true'\n autoDeleteState: 'false'\n exchangeName: ${name}\n exchangeType: X_CONSISTENT_HASH\n alternateExchange: bakExchange\n xDelayedType: DIRECT\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nRabbitMQ (AMQP) Exchange can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/exchange:Exchange example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003cexchange_name\u003e\n```\n\n",
"properties": {
"alternateExchange": {
"type": "string",
@@ -103564,6 +105407,10 @@
"type": "integer",
"description": "OrderCreateTime.\n"
},
+ "edition": {
+ "type": "string",
+ "description": "The deployment architecture for Serverless instances. Valid values:\n"
+ },
"instanceName": {
"type": "string",
"description": "The instance name.\n"
@@ -103600,6 +105447,10 @@
"type": "string",
"description": "Prepaid cycle units. Value: Month, Year.\n"
},
+ "provisionedCapacity": {
+ "type": "integer",
+ "description": "The provisioned TPS capacity for reserved + elastic instances.\n"
+ },
"queueCapacity": {
"type": "string",
"description": "Configure the maximum number of queues. The value range is as follows: Professional version:[50,1000], minimum modification step size is 5 Enterprise Edition:[200,6000], minimum modification step size is 100 Platinum version:[10000,80000], minimum modification step size is 100.\n"
@@ -103643,6 +105494,7 @@
},
"required": [
"createTime",
+ "edition",
"instanceName",
"instanceType",
"maxConnections",
@@ -103655,7 +105507,6 @@
"renewalStatus",
"status",
"storageSize",
- "supportTracing",
"tracingStorageTime"
],
"inputProperties": {
@@ -103663,6 +105514,10 @@
"type": "boolean",
"description": "Renewal method. Automatic renewal: true; Manual renewal: false. When RenewalStatus has a value, the value of RenewalStatus shall prevail.\n"
},
+ "edition": {
+ "type": "string",
+ "description": "The deployment architecture for Serverless instances. Valid values:\n"
+ },
"instanceName": {
"type": "string",
"description": "The instance name.\n"
@@ -103700,6 +105555,10 @@
"type": "string",
"description": "Prepaid cycle units. Value: Month, Year.\n"
},
+ "provisionedCapacity": {
+ "type": "integer",
+ "description": "The provisioned TPS capacity for reserved + elastic instances.\n"
+ },
"queueCapacity": {
"type": "string",
"description": "Configure the maximum number of queues. The value range is as follows: Professional version:[50,1000], minimum modification step size is 5 Enterprise Edition:[200,6000], minimum modification step size is 100 Platinum version:[10000,80000], minimum modification step size is 100.\n"
@@ -103751,6 +105610,10 @@
"type": "integer",
"description": "OrderCreateTime.\n"
},
+ "edition": {
+ "type": "string",
+ "description": "The deployment architecture for Serverless instances. Valid values:\n"
+ },
"instanceName": {
"type": "string",
"description": "The instance name.\n"
@@ -103788,6 +105651,10 @@
"type": "string",
"description": "Prepaid cycle units. Value: Month, Year.\n"
},
+ "provisionedCapacity": {
+ "type": "integer",
+ "description": "The provisioned TPS capacity for reserved + elastic instances.\n"
+ },
"queueCapacity": {
"type": "string",
"description": "Configure the maximum number of queues. The value range is as follows: Professional version:[50,1000], minimum modification step size is 5 Enterprise Edition:[200,6000], minimum modification step size is 100 Platinum version:[10000,80000], minimum modification step size is 100.\n"
@@ -103833,51 +105700,47 @@
}
},
"alicloud:amqp/queue:Queue": {
- "description": "Provides a RabbitMQ (AMQP) Queue resource.\n\nFor information about RabbitMQ (AMQP) Queue and how to use it, see [What is Queue](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createqueue).\n\n\u003e **NOTE:** Available since v1.127.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.amqp.Instance(\"default\", {\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n queueCapacity: \"200\",\n storageSize: \"700\",\n supportEip: false,\n maxEipTps: \"128\",\n paymentType: \"Subscription\",\n period: 1,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: _default.id,\n virtualHostName: \"tf-example\",\n});\nconst defaultExchange = new alicloud.amqp.Exchange(\"default\", {\n autoDeleteState: false,\n exchangeName: \"tf-example\",\n exchangeType: \"DIRECT\",\n instanceId: _default.id,\n internal: false,\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\nconst example = new alicloud.amqp.Queue(\"example\", {\n instanceId: _default.id,\n queueName: \"tf-example\",\n virtualHostName: defaultVirtualHost.virtualHostName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.amqp.Instance(\"default\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n queue_capacity=\"200\",\n storage_size=\"700\",\n support_eip=False,\n max_eip_tps=\"128\",\n payment_type=\"Subscription\",\n period=1)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default.id,\n virtual_host_name=\"tf-example\")\ndefault_exchange = alicloud.amqp.Exchange(\"default\",\n auto_delete_state=False,\n exchange_name=\"tf-example\",\n exchange_type=\"DIRECT\",\n instance_id=default.id,\n internal=False,\n virtual_host_name=default_virtual_host.virtual_host_name)\nexample = alicloud.amqp.Queue(\"example\",\n instance_id=default.id,\n queue_name=\"tf-example\",\n virtual_host_name=default_virtual_host.virtual_host_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n QueueCapacity = \"200\",\n StorageSize = \"700\",\n SupportEip = false,\n MaxEipTps = \"128\",\n PaymentType = \"Subscription\",\n Period = 1,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = @default.Id,\n VirtualHostName = \"tf-example\",\n });\n\n var defaultExchange = new AliCloud.Amqp.Exchange(\"default\", new()\n {\n AutoDeleteState = false,\n ExchangeName = \"tf-example\",\n ExchangeType = \"DIRECT\",\n InstanceId = @default.Id,\n Internal = false,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n var example = new AliCloud.Amqp.Queue(\"example\", new()\n {\n InstanceId = @default.Id,\n QueueName = \"tf-example\",\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tStorageSize: pulumi.String(\"700\"),\n\t\t\tSupportEip: pulumi.Bool(false),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualHost, err := amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tVirtualHostName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewExchange(ctx, \"default\", \u0026amqp.ExchangeArgs{\n\t\t\tAutoDeleteState: pulumi.Bool(false),\n\t\t\tExchangeName: pulumi.String(\"tf-example\"),\n\t\t\tExchangeType: pulumi.String(\"DIRECT\"),\n\t\t\tInstanceId: _default.ID(),\n\t\t\tInternal: pulumi.Bool(false),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewQueue(ctx, \"example\", \u0026amqp.QueueArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tQueueName: pulumi.String(\"tf-example\"),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport com.pulumi.alicloud.amqp.Exchange;\nimport com.pulumi.alicloud.amqp.ExchangeArgs;\nimport com.pulumi.alicloud.amqp.Queue;\nimport com.pulumi.alicloud.amqp.QueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .queueCapacity(\"200\")\n .storageSize(\"700\")\n .supportEip(false)\n .maxEipTps(\"128\")\n .paymentType(\"Subscription\")\n .period(1)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(default_.id())\n .virtualHostName(\"tf-example\")\n .build());\n\n var defaultExchange = new Exchange(\"defaultExchange\", ExchangeArgs.builder()\n .autoDeleteState(false)\n .exchangeName(\"tf-example\")\n .exchangeType(\"DIRECT\")\n .instanceId(default_.id())\n .internal(false)\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n var example = new Queue(\"example\", QueueArgs.builder()\n .instanceId(default_.id())\n .queueName(\"tf-example\")\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:amqp:Instance\n properties:\n instanceType: enterprise\n maxTps: 3000\n queueCapacity: 200\n storageSize: 700\n supportEip: false\n maxEipTps: 128\n paymentType: Subscription\n period: 1\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${default.id}\n virtualHostName: tf-example\n defaultExchange:\n type: alicloud:amqp:Exchange\n name: default\n properties:\n autoDeleteState: false\n exchangeName: tf-example\n exchangeType: DIRECT\n instanceId: ${default.id}\n internal: false\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n example:\n type: alicloud:amqp:Queue\n properties:\n instanceId: ${default.id}\n queueName: tf-example\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nRabbitMQ (AMQP) Queue can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/queue:Queue example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003cqueue_name\u003e\n```\n\n",
+ "description": "Provides a RabbitMQ (AMQP) Queue resource.\n\nFor information about RabbitMQ (AMQP) Queue and how to use it, see [What is Queue](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createqueue).\n\n\u003e **NOTE:** Available since v1.127.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.amqp.Instance(\"default\", {\n instanceName: `${name}-${_default.result}`,\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n maxConnections: 2000,\n queueCapacity: \"200\",\n paymentType: \"Subscription\",\n renewalStatus: \"AutoRenewal\",\n renewalDuration: 1,\n renewalDurationUnit: \"Year\",\n supportEip: true,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: defaultInstance.id,\n virtualHostName: `${name}-${_default.result}`,\n});\nconst defaultQueue = new alicloud.amqp.Queue(\"default\", {\n instanceId: defaultInstance.id,\n virtualHostName: defaultVirtualHost.virtualHostName,\n queueName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.amqp.Instance(\"default\",\n instance_name=f\"{name}-{default['result']}\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n max_connections=2000,\n queue_capacity=\"200\",\n payment_type=\"Subscription\",\n renewal_status=\"AutoRenewal\",\n renewal_duration=1,\n renewal_duration_unit=\"Year\",\n support_eip=True)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default_instance.id,\n virtual_host_name=f\"{name}-{default['result']}\")\ndefault_queue = alicloud.amqp.Queue(\"default\",\n instance_id=default_instance.id,\n virtual_host_name=default_virtual_host.virtual_host_name,\n queue_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceName = $\"{name}-{@default.Result}\",\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n MaxConnections = 2000,\n QueueCapacity = \"200\",\n PaymentType = \"Subscription\",\n RenewalStatus = \"AutoRenewal\",\n RenewalDuration = 1,\n RenewalDurationUnit = \"Year\",\n SupportEip = true,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n VirtualHostName = $\"{name}-{@default.Result}\",\n });\n\n var defaultQueue = new AliCloud.Amqp.Queue(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n VirtualHostName = defaultVirtualHost.VirtualHostName,\n QueueName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tMaxConnections: pulumi.Int(2000),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tRenewalDuration: pulumi.Int(1),\n\t\t\tRenewalDurationUnit: pulumi.String(\"Year\"),\n\t\t\tSupportEip: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualHost, err := amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tVirtualHostName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewQueue(ctx, \"default\", \u0026amqp.QueueArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tVirtualHostName: defaultVirtualHost.VirtualHostName,\n\t\t\tQueueName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport com.pulumi.alicloud.amqp.Queue;\nimport com.pulumi.alicloud.amqp.QueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .maxConnections(2000)\n .queueCapacity(\"200\")\n .paymentType(\"Subscription\")\n .renewalStatus(\"AutoRenewal\")\n .renewalDuration(1)\n .renewalDurationUnit(\"Year\")\n .supportEip(true)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(defaultInstance.id())\n .virtualHostName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultQueue = new Queue(\"defaultQueue\", QueueArgs.builder()\n .instanceId(defaultInstance.id())\n .virtualHostName(defaultVirtualHost.virtualHostName())\n .queueName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:amqp:Instance\n name: default\n properties:\n instanceName: ${name}-${default.result}\n instanceType: enterprise\n maxTps: 3000\n maxConnections: 2000\n queueCapacity: 200\n paymentType: Subscription\n renewalStatus: AutoRenewal\n renewalDuration: 1\n renewalDurationUnit: Year\n supportEip: true\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n virtualHostName: ${name}-${default.result}\n defaultQueue:\n type: alicloud:amqp:Queue\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n virtualHostName: ${defaultVirtualHost.virtualHostName}\n queueName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nRabbitMQ (AMQP) Queue can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/queue:Queue example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e:\u003cqueue_name\u003e\n```\n\n",
"properties": {
"autoDeleteState": {
"type": "boolean",
- "description": "Specifies whether the Auto Delete attribute is configured. Valid values:\n* true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.\n* false: The Auto Delete attribute is not configured.\n"
+ "description": "Specifies whether to automatically delete the queue. Valid values:\n"
},
"autoExpireState": {
"type": "string",
- "description": "The validity period after which the queue is automatically deleted.\nIf the queue is not accessed within a specified period of time, it is automatically deleted.\n"
+ "description": "The auto-expiration time for the queue.\n"
},
"deadLetterExchange": {
"type": "string",
- "description": "The dead-letter exchange. A dead-letter exchange is used to receive rejected messages. \nIf a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.\nThen, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.\n"
+ "description": "The dead-letter exchange.\n"
},
"deadLetterRoutingKey": {
"type": "string",
- "description": "The dead letter routing key.\n"
- },
- "exclusiveState": {
- "type": "boolean",
- "description": "Specifies whether the queue is an exclusive queue. Valid values:\n* true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.\n* false: The queue is not an exclusive queue.\n"
+ "description": "The dead-letter routing key.\n"
},
"instanceId": {
"type": "string",
- "description": "The ID of the instance.\n"
+ "description": "The ID of the ApsaraMQ for RabbitMQ instance to which the queue belongs.\n"
},
"maxLength": {
"type": "string",
- "description": "The maximum number of messages that can be stored in the queue.\nIf this threshold is exceeded, the earliest messages that are routed to the queue are discarded.\n"
+ "description": "The maximum number of messages that can be stored in the queue.\n"
},
"maximumPriority": {
"type": "integer",
- "description": "The highest priority supported by the queue. This parameter is set to a positive integer.\nValid values: 0 to 255. Recommended values: 1 to 10\n"
+ "description": "The priority of the queue.\n"
},
"messageTtl": {
"type": "string",
- "description": "The message TTL of the queue.\nIf the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.\nMessage TTL must be set to a non-negative integer, in milliseconds.\nFor example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.\n"
+ "description": "The time to live (TTL) of a message in the queue.\n"
},
"queueName": {
"type": "string",
- "description": "The name of the queue.\nThe queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).\n"
+ "description": "The name of the queue to create.\n"
},
"virtualHostName": {
"type": "string",
- "description": "The name of the virtual host.\n"
+ "description": "The name of the vhost to which the queue belongs. The name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@). The name must be 1 to 255 characters in length.\n"
}
},
"required": [
@@ -103888,51 +105751,46 @@
"inputProperties": {
"autoDeleteState": {
"type": "boolean",
- "description": "Specifies whether the Auto Delete attribute is configured. Valid values:\n* true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.\n* false: The Auto Delete attribute is not configured.\n",
+ "description": "Specifies whether to automatically delete the queue. Valid values:\n",
"willReplaceOnChanges": true
},
"autoExpireState": {
"type": "string",
- "description": "The validity period after which the queue is automatically deleted.\nIf the queue is not accessed within a specified period of time, it is automatically deleted.\n"
+ "description": "The auto-expiration time for the queue.\n"
},
"deadLetterExchange": {
"type": "string",
- "description": "The dead-letter exchange. A dead-letter exchange is used to receive rejected messages. \nIf a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.\nThen, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.\n"
+ "description": "The dead-letter exchange.\n"
},
"deadLetterRoutingKey": {
"type": "string",
- "description": "The dead letter routing key.\n"
- },
- "exclusiveState": {
- "type": "boolean",
- "description": "Specifies whether the queue is an exclusive queue. Valid values:\n* true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.\n* false: The queue is not an exclusive queue.\n",
- "willReplaceOnChanges": true
+ "description": "The dead-letter routing key.\n"
},
"instanceId": {
"type": "string",
- "description": "The ID of the instance.\n",
+ "description": "The ID of the ApsaraMQ for RabbitMQ instance to which the queue belongs.\n",
"willReplaceOnChanges": true
},
"maxLength": {
"type": "string",
- "description": "The maximum number of messages that can be stored in the queue.\nIf this threshold is exceeded, the earliest messages that are routed to the queue are discarded.\n"
+ "description": "The maximum number of messages that can be stored in the queue.\n"
},
"maximumPriority": {
"type": "integer",
- "description": "The highest priority supported by the queue. This parameter is set to a positive integer.\nValid values: 0 to 255. Recommended values: 1 to 10\n"
+ "description": "The priority of the queue.\n"
},
"messageTtl": {
"type": "string",
- "description": "The message TTL of the queue.\nIf the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.\nMessage TTL must be set to a non-negative integer, in milliseconds.\nFor example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.\n"
+ "description": "The time to live (TTL) of a message in the queue.\n"
},
"queueName": {
"type": "string",
- "description": "The name of the queue.\nThe queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).\n",
+ "description": "The name of the queue to create.\n",
"willReplaceOnChanges": true
},
"virtualHostName": {
"type": "string",
- "description": "The name of the virtual host.\n",
+ "description": "The name of the vhost to which the queue belongs. The name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@). The name must be 1 to 255 characters in length.\n",
"willReplaceOnChanges": true
}
},
@@ -103946,51 +105804,46 @@
"properties": {
"autoDeleteState": {
"type": "boolean",
- "description": "Specifies whether the Auto Delete attribute is configured. Valid values:\n* true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.\n* false: The Auto Delete attribute is not configured.\n",
+ "description": "Specifies whether to automatically delete the queue. Valid values:\n",
"willReplaceOnChanges": true
},
"autoExpireState": {
"type": "string",
- "description": "The validity period after which the queue is automatically deleted.\nIf the queue is not accessed within a specified period of time, it is automatically deleted.\n"
+ "description": "The auto-expiration time for the queue.\n"
},
"deadLetterExchange": {
"type": "string",
- "description": "The dead-letter exchange. A dead-letter exchange is used to receive rejected messages. \nIf a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.\nThen, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.\n"
+ "description": "The dead-letter exchange.\n"
},
"deadLetterRoutingKey": {
"type": "string",
- "description": "The dead letter routing key.\n"
- },
- "exclusiveState": {
- "type": "boolean",
- "description": "Specifies whether the queue is an exclusive queue. Valid values:\n* true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.\n* false: The queue is not an exclusive queue.\n",
- "willReplaceOnChanges": true
+ "description": "The dead-letter routing key.\n"
},
"instanceId": {
"type": "string",
- "description": "The ID of the instance.\n",
+ "description": "The ID of the ApsaraMQ for RabbitMQ instance to which the queue belongs.\n",
"willReplaceOnChanges": true
},
"maxLength": {
"type": "string",
- "description": "The maximum number of messages that can be stored in the queue.\nIf this threshold is exceeded, the earliest messages that are routed to the queue are discarded.\n"
+ "description": "The maximum number of messages that can be stored in the queue.\n"
},
"maximumPriority": {
"type": "integer",
- "description": "The highest priority supported by the queue. This parameter is set to a positive integer.\nValid values: 0 to 255. Recommended values: 1 to 10\n"
+ "description": "The priority of the queue.\n"
},
"messageTtl": {
"type": "string",
- "description": "The message TTL of the queue.\nIf the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.\nMessage TTL must be set to a non-negative integer, in milliseconds.\nFor example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.\n"
+ "description": "The time to live (TTL) of a message in the queue.\n"
},
"queueName": {
"type": "string",
- "description": "The name of the queue.\nThe queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).\n",
+ "description": "The name of the queue to create.\n",
"willReplaceOnChanges": true
},
"virtualHostName": {
"type": "string",
- "description": "The name of the virtual host.\n",
+ "description": "The name of the vhost to which the queue belongs. The name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@). The name must be 1 to 255 characters in length.\n",
"willReplaceOnChanges": true
}
},
@@ -103998,7 +105851,7 @@
}
},
"alicloud:amqp/staticAccount:StaticAccount": {
- "description": "Provides a Amqp Static Account resource.\n\nFor information about Amqp Static Account and how to use it, see [What is Static Account](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/create-a-pair-of-static-username-and-password).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst accessKey = config.get(\"accessKey\") || \"access_key\";\nconst secretKey = config.get(\"secretKey\") || \"secret_key\";\nconst _default = new alicloud.amqp.Instance(\"default\", {\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n queueCapacity: \"200\",\n storageSize: \"700\",\n supportEip: false,\n maxEipTps: \"128\",\n paymentType: \"Subscription\",\n period: 1,\n});\nconst defaultStaticAccount = new alicloud.amqp.StaticAccount(\"default\", {\n instanceId: _default.id,\n accessKey: accessKey,\n secretKey: secretKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\naccess_key = config.get(\"accessKey\")\nif access_key is None:\n access_key = \"access_key\"\nsecret_key = config.get(\"secretKey\")\nif secret_key is None:\n secret_key = \"secret_key\"\ndefault = alicloud.amqp.Instance(\"default\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n queue_capacity=\"200\",\n storage_size=\"700\",\n support_eip=False,\n max_eip_tps=\"128\",\n payment_type=\"Subscription\",\n period=1)\ndefault_static_account = alicloud.amqp.StaticAccount(\"default\",\n instance_id=default.id,\n access_key=access_key,\n secret_key=secret_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var accessKey = config.Get(\"accessKey\") ?? \"access_key\";\n var secretKey = config.Get(\"secretKey\") ?? \"secret_key\";\n var @default = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n QueueCapacity = \"200\",\n StorageSize = \"700\",\n SupportEip = false,\n MaxEipTps = \"128\",\n PaymentType = \"Subscription\",\n Period = 1,\n });\n\n var defaultStaticAccount = new AliCloud.Amqp.StaticAccount(\"default\", new()\n {\n InstanceId = @default.Id,\n AccessKey = accessKey,\n SecretKey = secretKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\taccessKey := \"access_key\"\n\t\tif param := cfg.Get(\"accessKey\"); param != \"\" {\n\t\t\taccessKey = param\n\t\t}\n\t\tsecretKey := \"secret_key\"\n\t\tif param := cfg.Get(\"secretKey\"); param != \"\" {\n\t\t\tsecretKey = param\n\t\t}\n\t\t_default, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tStorageSize: pulumi.String(\"700\"),\n\t\t\tSupportEip: pulumi.Bool(false),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewStaticAccount(ctx, \"default\", \u0026amqp.StaticAccountArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tAccessKey: pulumi.String(accessKey),\n\t\t\tSecretKey: pulumi.String(secretKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.StaticAccount;\nimport com.pulumi.alicloud.amqp.StaticAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var accessKey = config.get(\"accessKey\").orElse(\"access_key\");\n final var secretKey = config.get(\"secretKey\").orElse(\"secret_key\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .queueCapacity(\"200\")\n .storageSize(\"700\")\n .supportEip(false)\n .maxEipTps(\"128\")\n .paymentType(\"Subscription\")\n .period(1)\n .build());\n\n var defaultStaticAccount = new StaticAccount(\"defaultStaticAccount\", StaticAccountArgs.builder()\n .instanceId(default_.id())\n .accessKey(accessKey)\n .secretKey(secretKey)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n accessKey:\n type: string\n default: access_key\n secretKey:\n type: string\n default: secret_key\nresources:\n default:\n type: alicloud:amqp:Instance\n properties:\n instanceType: enterprise\n maxTps: 3000\n queueCapacity: 200\n storageSize: 700\n supportEip: false\n maxEipTps: 128\n paymentType: Subscription\n period: 1\n defaultStaticAccount:\n type: alicloud:amqp:StaticAccount\n name: default\n properties:\n instanceId: ${default.id}\n accessKey: ${accessKey}\n secretKey: ${secretKey}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAmqp Static Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/staticAccount:StaticAccount example \u003cinstance_id\u003e:\u003caccess_key\u003e\n```\n\n",
+ "description": "Provides a Amqp Static Account resource.\n\nFor information about Amqp Static Account and how to use it, see [What is Static Account](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/create-a-pair-of-static-username-and-password).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst accessKey = config.get(\"accessKey\") || \"access_key\";\nconst secretKey = config.get(\"secretKey\") || \"secret_key\";\nconst _default = new alicloud.amqp.Instance(\"default\", {\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n queueCapacity: \"200\",\n storageSize: \"700\",\n supportEip: false,\n maxEipTps: \"128\",\n paymentType: \"Subscription\",\n period: 1,\n});\nconst defaultStaticAccount = new alicloud.amqp.StaticAccount(\"default\", {\n instanceId: _default.id,\n accessKey: accessKey,\n secretKey: secretKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\naccess_key = config.get(\"accessKey\")\nif access_key is None:\n access_key = \"access_key\"\nsecret_key = config.get(\"secretKey\")\nif secret_key is None:\n secret_key = \"secret_key\"\ndefault = alicloud.amqp.Instance(\"default\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n queue_capacity=\"200\",\n storage_size=\"700\",\n support_eip=False,\n max_eip_tps=\"128\",\n payment_type=\"Subscription\",\n period=1)\ndefault_static_account = alicloud.amqp.StaticAccount(\"default\",\n instance_id=default.id,\n access_key=access_key,\n secret_key=secret_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var accessKey = config.Get(\"accessKey\") ?? \"access_key\";\n var secretKey = config.Get(\"secretKey\") ?? \"secret_key\";\n var @default = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n QueueCapacity = \"200\",\n StorageSize = \"700\",\n SupportEip = false,\n MaxEipTps = \"128\",\n PaymentType = \"Subscription\",\n Period = 1,\n });\n\n var defaultStaticAccount = new AliCloud.Amqp.StaticAccount(\"default\", new()\n {\n InstanceId = @default.Id,\n AccessKey = accessKey,\n SecretKey = secretKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\taccessKey := \"access_key\"\n\t\tif param := cfg.Get(\"accessKey\"); param != \"\" {\n\t\t\taccessKey = param\n\t\t}\n\t\tsecretKey := \"secret_key\"\n\t\tif param := cfg.Get(\"secretKey\"); param != \"\" {\n\t\t\tsecretKey = param\n\t\t}\n\t\t_default, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tStorageSize: pulumi.String(\"700\"),\n\t\t\tSupportEip: pulumi.Bool(false),\n\t\t\tMaxEipTps: pulumi.String(\"128\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewStaticAccount(ctx, \"default\", \u0026amqp.StaticAccountArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tAccessKey: pulumi.String(accessKey),\n\t\t\tSecretKey: pulumi.String(secretKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.StaticAccount;\nimport com.pulumi.alicloud.amqp.StaticAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var accessKey = config.get(\"accessKey\").orElse(\"access_key\");\n final var secretKey = config.get(\"secretKey\").orElse(\"secret_key\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .queueCapacity(\"200\")\n .storageSize(\"700\")\n .supportEip(false)\n .maxEipTps(\"128\")\n .paymentType(\"Subscription\")\n .period(1)\n .build());\n\n var defaultStaticAccount = new StaticAccount(\"defaultStaticAccount\", StaticAccountArgs.builder()\n .instanceId(default_.id())\n .accessKey(accessKey)\n .secretKey(secretKey)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n accessKey:\n type: string\n default: access_key\n secretKey:\n type: string\n default: secret_key\nresources:\n default:\n type: alicloud:amqp:Instance\n properties:\n instanceType: enterprise\n maxTps: 3000\n queueCapacity: 200\n storageSize: 700\n supportEip: false\n maxEipTps: 128\n paymentType: Subscription\n period: 1\n defaultStaticAccount:\n type: alicloud:amqp:StaticAccount\n name: default\n properties:\n instanceId: ${default.id}\n accessKey: ${accessKey}\n secretKey: ${secretKey}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAmqp Static Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/staticAccount:StaticAccount example \u003cinstance_id\u003e:\u003caccess_key\u003e\n```\n\n",
"properties": {
"accessKey": {
"type": "string",
@@ -104102,7 +105955,7 @@
}
},
"alicloud:amqp/virtualHost:VirtualHost": {
- "description": "Amqp Virtual Host.\n\nProvides a RabbitMQ (AMQP) Virtual Host resource.\n\nFor information about RabbitMQ (AMQP) Virtual Host and how to use it, see [What is Virtual Host](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createvirtualhost).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.amqp.Instance(\"default\", {\n instanceName: `${name}-${_default.result}`,\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n maxConnections: 2000,\n queueCapacity: \"200\",\n paymentType: \"Subscription\",\n renewalStatus: \"AutoRenewal\",\n renewalDuration: 1,\n renewalDurationUnit: \"Year\",\n supportEip: true,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: defaultInstance.id,\n virtualHostName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.amqp.Instance(\"default\",\n instance_name=f\"{name}-{default['result']}\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n max_connections=2000,\n queue_capacity=\"200\",\n payment_type=\"Subscription\",\n renewal_status=\"AutoRenewal\",\n renewal_duration=1,\n renewal_duration_unit=\"Year\",\n support_eip=True)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default_instance.id,\n virtual_host_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceName = $\"{name}-{@default.Result}\",\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n MaxConnections = 2000,\n QueueCapacity = \"200\",\n PaymentType = \"Subscription\",\n RenewalStatus = \"AutoRenewal\",\n RenewalDuration = 1,\n RenewalDurationUnit = \"Year\",\n SupportEip = true,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n VirtualHostName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tMaxConnections: pulumi.Int(2000),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tRenewalDuration: pulumi.Int(1),\n\t\t\tRenewalDurationUnit: pulumi.String(\"Year\"),\n\t\t\tSupportEip: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tVirtualHostName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .maxConnections(2000)\n .queueCapacity(\"200\")\n .paymentType(\"Subscription\")\n .renewalStatus(\"AutoRenewal\")\n .renewalDuration(1)\n .renewalDurationUnit(\"Year\")\n .supportEip(true)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(defaultInstance.id())\n .virtualHostName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:amqp:Instance\n name: default\n properties:\n instanceName: ${name}-${default.result}\n instanceType: enterprise\n maxTps: 3000\n maxConnections: 2000\n queueCapacity: 200\n paymentType: Subscription\n renewalStatus: AutoRenewal\n renewalDuration: 1\n renewalDurationUnit: Year\n supportEip: true\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n virtualHostName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nRabbitMQ (AMQP) Virtual Host can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/virtualHost:VirtualHost example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e\n```\n\n",
+ "description": "Amqp Virtual Host.\n\nProvides a RabbitMQ (AMQP) Virtual Host resource.\n\nFor information about RabbitMQ (AMQP) Virtual Host and how to use it, see [What is Virtual Host](https://www.alibabacloud.com/help/en/message-queue-for-rabbitmq/latest/createvirtualhost).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultInstance = new alicloud.amqp.Instance(\"default\", {\n instanceName: `${name}-${_default.result}`,\n instanceType: \"enterprise\",\n maxTps: \"3000\",\n maxConnections: 2000,\n queueCapacity: \"200\",\n paymentType: \"Subscription\",\n renewalStatus: \"AutoRenewal\",\n renewalDuration: 1,\n renewalDurationUnit: \"Year\",\n supportEip: true,\n});\nconst defaultVirtualHost = new alicloud.amqp.VirtualHost(\"default\", {\n instanceId: defaultInstance.id,\n virtualHostName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_instance = alicloud.amqp.Instance(\"default\",\n instance_name=f\"{name}-{default['result']}\",\n instance_type=\"enterprise\",\n max_tps=\"3000\",\n max_connections=2000,\n queue_capacity=\"200\",\n payment_type=\"Subscription\",\n renewal_status=\"AutoRenewal\",\n renewal_duration=1,\n renewal_duration_unit=\"Year\",\n support_eip=True)\ndefault_virtual_host = alicloud.amqp.VirtualHost(\"default\",\n instance_id=default_instance.id,\n virtual_host_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultInstance = new AliCloud.Amqp.Instance(\"default\", new()\n {\n InstanceName = $\"{name}-{@default.Result}\",\n InstanceType = \"enterprise\",\n MaxTps = \"3000\",\n MaxConnections = 2000,\n QueueCapacity = \"200\",\n PaymentType = \"Subscription\",\n RenewalStatus = \"AutoRenewal\",\n RenewalDuration = 1,\n RenewalDurationUnit = \"Year\",\n SupportEip = true,\n });\n\n var defaultVirtualHost = new AliCloud.Amqp.VirtualHost(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n VirtualHostName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := amqp.NewInstance(ctx, \"default\", \u0026amqp.InstanceArgs{\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tInstanceType: pulumi.String(\"enterprise\"),\n\t\t\tMaxTps: pulumi.String(\"3000\"),\n\t\t\tMaxConnections: pulumi.Int(2000),\n\t\t\tQueueCapacity: pulumi.String(\"200\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tRenewalDuration: pulumi.Int(1),\n\t\t\tRenewalDurationUnit: pulumi.String(\"Year\"),\n\t\t\tSupportEip: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = amqp.NewVirtualHost(ctx, \"default\", \u0026amqp.VirtualHostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tVirtualHostName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.amqp.Instance;\nimport com.pulumi.alicloud.amqp.InstanceArgs;\nimport com.pulumi.alicloud.amqp.VirtualHost;\nimport com.pulumi.alicloud.amqp.VirtualHostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .instanceType(\"enterprise\")\n .maxTps(\"3000\")\n .maxConnections(2000)\n .queueCapacity(\"200\")\n .paymentType(\"Subscription\")\n .renewalStatus(\"AutoRenewal\")\n .renewalDuration(1)\n .renewalDurationUnit(\"Year\")\n .supportEip(true)\n .build());\n\n var defaultVirtualHost = new VirtualHost(\"defaultVirtualHost\", VirtualHostArgs.builder()\n .instanceId(defaultInstance.id())\n .virtualHostName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultInstance:\n type: alicloud:amqp:Instance\n name: default\n properties:\n instanceName: ${name}-${default.result}\n instanceType: enterprise\n maxTps: 3000\n maxConnections: 2000\n queueCapacity: 200\n paymentType: Subscription\n renewalStatus: AutoRenewal\n renewalDuration: 1\n renewalDurationUnit: Year\n supportEip: true\n defaultVirtualHost:\n type: alicloud:amqp:VirtualHost\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n virtualHostName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nRabbitMQ (AMQP) Virtual Host can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:amqp/virtualHost:VirtualHost example \u003cinstance_id\u003e:\u003cvirtual_host_name\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -104151,7 +106004,7 @@
}
},
"alicloud:apig/environment:Environment": {
- "description": "Provides a APIG Environment resource.\n\n\n\nFor information about APIG Environment and how to use it, see [What is Environment](https://next.api.aliyun.com/api/APIG/2024-03-27/CreateEnvironment).\n\n\u003e **NOTE:** Available since v1.240.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n}));\nconst defaultgateway = new alicloud.apig.Gateway(\"defaultgateway\", {\n networkAccessConfig: {\n type: \"Intranet\",\n },\n vswitch: {\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n },\n zoneConfig: {\n selectOption: \"Auto\",\n },\n vpc: {\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n },\n paymentType: \"PayAsYouGo\",\n gatewayName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n spec: \"apigw.small.x1\",\n logConfig: {\n sls: {},\n },\n});\nconst defaultEnvironment = new alicloud.apig.Environment(\"default\", {\n description: name,\n environmentName: name,\n gatewayId: defaultgateway.id,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[1]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0])\ndefaultgateway = alicloud.apig.Gateway(\"defaultgateway\",\n network_access_config={\n \"type\": \"Intranet\",\n },\n vswitch={\n \"vswitch_id\": default_get_switches.ids[0],\n },\n zone_config={\n \"select_option\": \"Auto\",\n },\n vpc={\n \"vpc_id\": default_get_networks.ids[0],\n },\n payment_type=\"PayAsYouGo\",\n gateway_name=std.format(input=\"%s2\",\n args=[name]).result,\n spec=\"apigw.small.x1\",\n log_config={\n \"sls\": {},\n })\ndefault_environment = alicloud.apig.Environment(\"default\",\n description=name,\n environment_name=name,\n gateway_id=defaultgateway.id,\n resource_group_id=default.ids[1])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultgateway = new AliCloud.Apig.Gateway(\"defaultgateway\", new()\n {\n NetworkAccessConfig = new AliCloud.Apig.Inputs.GatewayNetworkAccessConfigArgs\n {\n Type = \"Intranet\",\n },\n Vswitch = new AliCloud.Apig.Inputs.GatewayVswitchArgs\n {\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n },\n ZoneConfig = new AliCloud.Apig.Inputs.GatewayZoneConfigArgs\n {\n SelectOption = \"Auto\",\n },\n Vpc = new AliCloud.Apig.Inputs.GatewayVpcArgs\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n },\n PaymentType = \"PayAsYouGo\",\n GatewayName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Spec = \"apigw.small.x1\",\n LogConfig = new AliCloud.Apig.Inputs.GatewayLogConfigArgs\n {\n Sls = null,\n },\n });\n\n var defaultEnvironment = new AliCloud.Apig.Environment(\"default\", new()\n {\n Description = name,\n EnvironmentName = name,\n GatewayId = defaultgateway.Id,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[1])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apig\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultgateway, err := apig.NewGateway(ctx, \"defaultgateway\", \u0026apig.GatewayArgs{\n\t\t\tNetworkAccessConfig: \u0026apig.GatewayNetworkAccessConfigArgs{\n\t\t\t\tType: pulumi.String(\"Intranet\"),\n\t\t\t},\n\t\t\tVswitch: \u0026apig.GatewayVswitchArgs{\n\t\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\t},\n\t\t\tZoneConfig: \u0026apig.GatewayZoneConfigArgs{\n\t\t\t\tSelectOption: pulumi.String(\"Auto\"),\n\t\t\t},\n\t\t\tVpc: \u0026apig.GatewayVpcArgs{\n\t\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tGatewayName: pulumi.String(invokeFormat.Result),\n\t\t\tSpec: pulumi.String(\"apigw.small.x1\"),\n\t\t\tLogConfig: \u0026apig.GatewayLogConfigArgs{\n\t\t\t\tSls: \u0026apig.GatewayLogConfigSlsArgs{},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apig.NewEnvironment(ctx, \"default\", \u0026apig.EnvironmentArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tEnvironmentName: pulumi.String(name),\n\t\t\tGatewayId: defaultgateway.ID(),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[1]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.apig.Gateway;\nimport com.pulumi.alicloud.apig.GatewayArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayNetworkAccessConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayVswitchArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayZoneConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayVpcArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayLogConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayLogConfigSlsArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.apig.Environment;\nimport com.pulumi.alicloud.apig.EnvironmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultgateway = new Gateway(\"defaultgateway\", GatewayArgs.builder()\n .networkAccessConfig(GatewayNetworkAccessConfigArgs.builder()\n .type(\"Intranet\")\n .build())\n .vswitch(GatewayVswitchArgs.builder()\n .vswitchId(defaultGetSwitches.ids()[0])\n .build())\n .zoneConfig(GatewayZoneConfigArgs.builder()\n .selectOption(\"Auto\")\n .build())\n .vpc(GatewayVpcArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build())\n .paymentType(\"PayAsYouGo\")\n .gatewayName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .spec(\"apigw.small.x1\")\n .logConfig(GatewayLogConfigArgs.builder()\n .sls(GatewayLogConfigSlsArgs.builder()\n .build())\n .build())\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .description(name)\n .environmentName(name)\n .gatewayId(defaultgateway.id())\n .resourceGroupId(default_.ids()[1])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultgateway:\n type: alicloud:apig:Gateway\n properties:\n networkAccessConfig:\n type: Intranet\n vswitch:\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneConfig:\n selectOption: Auto\n vpc:\n vpcId: ${defaultGetNetworks.ids[0]}\n paymentType: PayAsYouGo\n gatewayName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n spec: apigw.small.x1\n logConfig:\n sls: {}\n defaultEnvironment:\n type: alicloud:apig:Environment\n name: default\n properties:\n description: ${name}\n environmentName: ${name}\n gatewayId: ${defaultgateway.id}\n resourceGroupId: ${default.ids[1]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAPIG Environment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apig/environment:Environment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a APIG Environment resource.\n\n\n\nFor information about APIG Environment and how to use it, see [What is Environment](https://next.api.aliyun.com/api/APIG/2024-03-27/CreateEnvironment).\n\n\u003e **NOTE:** Available since v1.240.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n}));\nconst defaultgateway = new alicloud.apig.Gateway(\"defaultgateway\", {\n networkAccessConfig: {\n type: \"Intranet\",\n },\n vswitch: {\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n },\n zoneConfig: {\n selectOption: \"Auto\",\n },\n vpc: {\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n },\n paymentType: \"PayAsYouGo\",\n gatewayName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n spec: \"apigw.small.x1\",\n logConfig: {\n sls: {},\n },\n});\nconst defaultEnvironment = new alicloud.apig.Environment(\"default\", {\n description: name,\n environmentName: name,\n gatewayId: defaultgateway.id,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[1]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0])\ndefaultgateway = alicloud.apig.Gateway(\"defaultgateway\",\n network_access_config={\n \"type\": \"Intranet\",\n },\n vswitch={\n \"vswitch_id\": default_get_switches.ids[0],\n },\n zone_config={\n \"select_option\": \"Auto\",\n },\n vpc={\n \"vpc_id\": default_get_networks.ids[0],\n },\n payment_type=\"PayAsYouGo\",\n gateway_name=std.format(input=\"%s2\",\n args=[name]).result,\n spec=\"apigw.small.x1\",\n log_config={\n \"sls\": {},\n })\ndefault_environment = alicloud.apig.Environment(\"default\",\n description=name,\n environment_name=name,\n gateway_id=defaultgateway.id,\n resource_group_id=default.ids[1])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultgateway = new AliCloud.Apig.Gateway(\"defaultgateway\", new()\n {\n NetworkAccessConfig = new AliCloud.Apig.Inputs.GatewayNetworkAccessConfigArgs\n {\n Type = \"Intranet\",\n },\n Vswitch = new AliCloud.Apig.Inputs.GatewayVswitchArgs\n {\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n },\n ZoneConfig = new AliCloud.Apig.Inputs.GatewayZoneConfigArgs\n {\n SelectOption = \"Auto\",\n },\n Vpc = new AliCloud.Apig.Inputs.GatewayVpcArgs\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n },\n PaymentType = \"PayAsYouGo\",\n GatewayName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Spec = \"apigw.small.x1\",\n LogConfig = new AliCloud.Apig.Inputs.GatewayLogConfigArgs\n {\n Sls = null,\n },\n });\n\n var defaultEnvironment = new AliCloud.Apig.Environment(\"default\", new()\n {\n Description = name,\n EnvironmentName = name,\n GatewayId = defaultgateway.Id,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[1])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apig\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultgateway, err := apig.NewGateway(ctx, \"defaultgateway\", \u0026apig.GatewayArgs{\n\t\t\tNetworkAccessConfig: \u0026apig.GatewayNetworkAccessConfigArgs{\n\t\t\t\tType: pulumi.String(\"Intranet\"),\n\t\t\t},\n\t\t\tVswitch: \u0026apig.GatewayVswitchArgs{\n\t\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\t},\n\t\t\tZoneConfig: \u0026apig.GatewayZoneConfigArgs{\n\t\t\t\tSelectOption: pulumi.String(\"Auto\"),\n\t\t\t},\n\t\t\tVpc: \u0026apig.GatewayVpcArgs{\n\t\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tGatewayName: pulumi.String(invokeFormat.Result),\n\t\t\tSpec: pulumi.String(\"apigw.small.x1\"),\n\t\t\tLogConfig: \u0026apig.GatewayLogConfigArgs{\n\t\t\t\tSls: \u0026apig.GatewayLogConfigSlsArgs{},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apig.NewEnvironment(ctx, \"default\", \u0026apig.EnvironmentArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tEnvironmentName: pulumi.String(name),\n\t\t\tGatewayId: defaultgateway.ID(),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[1]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.apig.Gateway;\nimport com.pulumi.alicloud.apig.GatewayArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayNetworkAccessConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayVswitchArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayZoneConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayVpcArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayLogConfigArgs;\nimport com.pulumi.alicloud.apig.inputs.GatewayLogConfigSlsArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.apig.Environment;\nimport com.pulumi.alicloud.apig.EnvironmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultgateway = new Gateway(\"defaultgateway\", GatewayArgs.builder()\n .networkAccessConfig(GatewayNetworkAccessConfigArgs.builder()\n .type(\"Intranet\")\n .build())\n .vswitch(GatewayVswitchArgs.builder()\n .vswitchId(defaultGetSwitches.ids()[0])\n .build())\n .zoneConfig(GatewayZoneConfigArgs.builder()\n .selectOption(\"Auto\")\n .build())\n .vpc(GatewayVpcArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build())\n .paymentType(\"PayAsYouGo\")\n .gatewayName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .spec(\"apigw.small.x1\")\n .logConfig(GatewayLogConfigArgs.builder()\n .sls(GatewayLogConfigSlsArgs.builder()\n .build())\n .build())\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .description(name)\n .environmentName(name)\n .gatewayId(defaultgateway.id())\n .resourceGroupId(default_.ids()[1])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultgateway:\n type: alicloud:apig:Gateway\n properties:\n networkAccessConfig:\n type: Intranet\n vswitch:\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneConfig:\n selectOption: Auto\n vpc:\n vpcId: ${defaultGetNetworks.ids[0]}\n paymentType: PayAsYouGo\n gatewayName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n spec: apigw.small.x1\n logConfig:\n sls: {}\n defaultEnvironment:\n type: alicloud:apig:Environment\n name: default\n properties:\n description: ${name}\n environmentName: ${name}\n gatewayId: ${defaultgateway.id}\n resourceGroupId: ${default.ids[1]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAPIG Environment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apig/environment:Environment example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -104441,7 +106294,7 @@
}
},
"alicloud:apig/httpApi:HttpApi": {
- "description": "Provides a APIG Http Api resource.\n\n\n\nFor information about APIG Http Api and how to use it, see [What is Http Api](https://next.api.aliyun.com/api/APIG/2024-03-27/CreateHttpApi).\n\n\u003e **NOTE:** Available since v1.240.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst protocol = config.get(\"protocol\") || \"HTTP\";\nconst protocolHttps = config.get(\"protocolHttps\") || \"HTTPS\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultHttpApi = new alicloud.apig.HttpApi(\"default\", {\n httpApiName: name,\n protocols: [protocol],\n basePath: \"/v1\",\n description: \"zhiwei_pop_examplecase\",\n type: \"Rest\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nprotocol = config.get(\"protocol\")\nif protocol is None:\n protocol = \"HTTP\"\nprotocol_https = config.get(\"protocolHttps\")\nif protocol_https is None:\n protocol_https = \"HTTPS\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_http_api = alicloud.apig.HttpApi(\"default\",\n http_api_name=name,\n protocols=[protocol],\n base_path=\"/v1\",\n description=\"zhiwei_pop_examplecase\",\n type=\"Rest\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var protocol = config.Get(\"protocol\") ?? \"HTTP\";\n var protocolHttps = config.Get(\"protocolHttps\") ?? \"HTTPS\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultHttpApi = new AliCloud.Apig.HttpApi(\"default\", new()\n {\n HttpApiName = name,\n Protocols = new[]\n {\n protocol,\n },\n BasePath = \"/v1\",\n Description = \"zhiwei_pop_examplecase\",\n Type = \"Rest\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apig\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tprotocol := \"HTTP\"\n\t\tif param := cfg.Get(\"protocol\"); param != \"\" {\n\t\t\tprotocol = param\n\t\t}\n\t\tprotocolHttps := \"HTTPS\"\n\t\tif param := cfg.Get(\"protocolHttps\"); param != \"\" {\n\t\t\tprotocolHttps = param\n\t\t}\n\t\t_, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apig.NewHttpApi(ctx, \"default\", \u0026apig.HttpApiArgs{\n\t\t\tHttpApiName: pulumi.String(name),\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(protocol),\n\t\t\t},\n\t\t\tBasePath: pulumi.String(\"/v1\"),\n\t\t\tDescription: pulumi.String(\"zhiwei_pop_examplecase\"),\n\t\t\tType: pulumi.String(\"Rest\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.apig.HttpApi;\nimport com.pulumi.alicloud.apig.HttpApiArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var protocol = config.get(\"protocol\").orElse(\"HTTP\");\n final var protocolHttps = config.get(\"protocolHttps\").orElse(\"HTTPS\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultHttpApi = new HttpApi(\"defaultHttpApi\", HttpApiArgs.builder()\n .httpApiName(name)\n .protocols(protocol)\n .basePath(\"/v1\")\n .description(\"zhiwei_pop_examplecase\")\n .type(\"Rest\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n protocol:\n type: string\n default: HTTP\n protocolHttps:\n type: string\n default: HTTPS\nresources:\n defaultHttpApi:\n type: alicloud:apig:HttpApi\n name: default\n properties:\n httpApiName: ${name}\n protocols:\n - ${protocol}\n basePath: /v1\n description: zhiwei_pop_examplecase\n type: Rest\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAPIG Http Api can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apig/httpApi:HttpApi example \u003cid\u003e\n```\n\n",
+ "description": "Provides a APIG Http Api resource.\n\n\n\nFor information about APIG Http Api and how to use it, see [What is Http Api](https://next.api.aliyun.com/api/APIG/2024-03-27/CreateHttpApi).\n\n\u003e **NOTE:** Available since v1.240.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst protocol = config.get(\"protocol\") || \"HTTP\";\nconst protocolHttps = config.get(\"protocolHttps\") || \"HTTPS\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultHttpApi = new alicloud.apig.HttpApi(\"default\", {\n httpApiName: name,\n protocols: [protocol],\n basePath: \"/v1\",\n description: \"zhiwei_pop_examplecase\",\n type: \"Rest\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nprotocol = config.get(\"protocol\")\nif protocol is None:\n protocol = \"HTTP\"\nprotocol_https = config.get(\"protocolHttps\")\nif protocol_https is None:\n protocol_https = \"HTTPS\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_http_api = alicloud.apig.HttpApi(\"default\",\n http_api_name=name,\n protocols=[protocol],\n base_path=\"/v1\",\n description=\"zhiwei_pop_examplecase\",\n type=\"Rest\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var protocol = config.Get(\"protocol\") ?? \"HTTP\";\n var protocolHttps = config.Get(\"protocolHttps\") ?? \"HTTPS\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultHttpApi = new AliCloud.Apig.HttpApi(\"default\", new()\n {\n HttpApiName = name,\n Protocols = new[]\n {\n protocol,\n },\n BasePath = \"/v1\",\n Description = \"zhiwei_pop_examplecase\",\n Type = \"Rest\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apig\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tprotocol := \"HTTP\"\n\t\tif param := cfg.Get(\"protocol\"); param != \"\" {\n\t\t\tprotocol = param\n\t\t}\n\t\tprotocolHttps := \"HTTPS\"\n\t\tif param := cfg.Get(\"protocolHttps\"); param != \"\" {\n\t\t\tprotocolHttps = param\n\t\t}\n\t\t_, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apig.NewHttpApi(ctx, \"default\", \u0026apig.HttpApiArgs{\n\t\t\tHttpApiName: pulumi.String(name),\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(protocol),\n\t\t\t},\n\t\t\tBasePath: pulumi.String(\"/v1\"),\n\t\t\tDescription: pulumi.String(\"zhiwei_pop_examplecase\"),\n\t\t\tType: pulumi.String(\"Rest\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.apig.HttpApi;\nimport com.pulumi.alicloud.apig.HttpApiArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var protocol = config.get(\"protocol\").orElse(\"HTTP\");\n final var protocolHttps = config.get(\"protocolHttps\").orElse(\"HTTPS\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultHttpApi = new HttpApi(\"defaultHttpApi\", HttpApiArgs.builder()\n .httpApiName(name)\n .protocols(protocol)\n .basePath(\"/v1\")\n .description(\"zhiwei_pop_examplecase\")\n .type(\"Rest\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n protocol:\n type: string\n default: HTTP\n protocolHttps:\n type: string\n default: HTTPS\nresources:\n defaultHttpApi:\n type: alicloud:apig:HttpApi\n name: default\n properties:\n httpApiName: ${name}\n protocols:\n - ${protocol}\n basePath: /v1\n description: zhiwei_pop_examplecase\n type: Rest\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAPIG Http Api can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apig/httpApi:HttpApi example \u003cid\u003e\n```\n\n",
"properties": {
"basePath": {
"type": "string",
@@ -104548,7 +106401,7 @@
}
},
"alicloud:apigateway/accessControlList:AccessControlList": {
- "description": "Provides a Api Gateway Access Control List resource. Access control list.\n\nFor information about Api Gateway Access Control List and how to use it, see [What is Access Control List](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createaccesscontrollist).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultxywS8c = new alicloud.apigateway.Instance(\"defaultxywS8c\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6\",\n paymentType: \"PayAsYouGo\",\n});\nconst _default = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefaultxyw_s8c = alicloud.apigateway.Instance(\"defaultxywS8c\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6\",\n payment_type=\"PayAsYouGo\")\ndefault = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultxywS8c = new AliCloud.ApiGateway.Instance(\"defaultxywS8c\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6\",\n PaymentType = \"PayAsYouGo\",\n });\n\n var @default = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewInstance(ctx, \"defaultxywS8c\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultxywS8c = new Instance(\"defaultxywS8c\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n var default_ = new AccessControlList(\"default\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultxywS8c:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6\n paymentType: PayAsYouGo\n default:\n type: alicloud:apigateway:AccessControlList\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Access Control List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/accessControlList:AccessControlList example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Access Control List resource. Access control list.\n\nFor information about Api Gateway Access Control List and how to use it, see [What is Access Control List](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createaccesscontrollist).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultxywS8c = new alicloud.apigateway.Instance(\"defaultxywS8c\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6\",\n paymentType: \"PayAsYouGo\",\n});\nconst _default = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefaultxyw_s8c = alicloud.apigateway.Instance(\"defaultxywS8c\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6\",\n payment_type=\"PayAsYouGo\")\ndefault = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultxywS8c = new AliCloud.ApiGateway.Instance(\"defaultxywS8c\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6\",\n PaymentType = \"PayAsYouGo\",\n });\n\n var @default = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewInstance(ctx, \"defaultxywS8c\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultxywS8c = new Instance(\"defaultxywS8c\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n var default_ = new AccessControlList(\"default\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultxywS8c:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6\n paymentType: PayAsYouGo\n default:\n type: alicloud:apigateway:AccessControlList\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Access Control List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/accessControlList:AccessControlList example \u003cid\u003e\n```\n\n",
"properties": {
"accessControlListName": {
"type": "string",
@@ -104624,7 +106477,7 @@
}
},
"alicloud:apigateway/aclEntryAttachment:AclEntryAttachment": {
- "description": "Provides an ACL entry attachment resource for attaching ACL entry to an API Gateway ACL.\n\n\u003e **NOTE:** Available since v1.228.0\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\nconst defaultAclEntryAttachment = new alicloud.apigateway.AclEntryAttachment(\"default\", {\n aclId: _default.id,\n entry: \"128.0.0.1/32\",\n comment: \"test comment\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\ndefault_acl_entry_attachment = alicloud.apigateway.AclEntryAttachment(\"default\",\n acl_id=default.id,\n entry=\"128.0.0.1/32\",\n comment=\"test comment\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n var defaultAclEntryAttachment = new AliCloud.ApiGateway.AclEntryAttachment(\"default\", new()\n {\n AclId = @default.Id,\n Entry = \"128.0.0.1/32\",\n Comment = \"test comment\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAclEntryAttachment(ctx, \"default\", \u0026apigateway.AclEntryAttachmentArgs{\n\t\t\tAclId: _default.ID(),\n\t\t\tEntry: pulumi.String(\"128.0.0.1/32\"),\n\t\t\tComment: pulumi.String(\"test comment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachment;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new AccessControlList(\"default\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(default_.id())\n .entry(\"128.0.0.1/32\")\n .comment(\"test comment\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:AccessControlList\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n defaultAclEntryAttachment:\n type: alicloud:apigateway:AclEntryAttachment\n name: default\n properties:\n aclId: ${default.id}\n entry: 128.0.0.1/32\n comment: test comment\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Acl Entry Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/aclEntryAttachment:AclEntryAttachment example \u003cacl_id\u003e:\u003centry\u003e\n```\n\n",
+ "description": "Provides an ACL entry attachment resource for attaching ACL entry to an API Gateway ACL.\n\n\u003e **NOTE:** Available since v1.228.0\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\nconst defaultAclEntryAttachment = new alicloud.apigateway.AclEntryAttachment(\"default\", {\n aclId: _default.id,\n entry: \"128.0.0.1/32\",\n comment: \"test comment\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\ndefault_acl_entry_attachment = alicloud.apigateway.AclEntryAttachment(\"default\",\n acl_id=default.id,\n entry=\"128.0.0.1/32\",\n comment=\"test comment\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n var defaultAclEntryAttachment = new AliCloud.ApiGateway.AclEntryAttachment(\"default\", new()\n {\n AclId = @default.Id,\n Entry = \"128.0.0.1/32\",\n Comment = \"test comment\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAclEntryAttachment(ctx, \"default\", \u0026apigateway.AclEntryAttachmentArgs{\n\t\t\tAclId: _default.ID(),\n\t\t\tEntry: pulumi.String(\"128.0.0.1/32\"),\n\t\t\tComment: pulumi.String(\"test comment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachment;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new AccessControlList(\"default\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(default_.id())\n .entry(\"128.0.0.1/32\")\n .comment(\"test comment\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:AccessControlList\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n defaultAclEntryAttachment:\n type: alicloud:apigateway:AclEntryAttachment\n name: default\n properties:\n aclId: ${default.id}\n entry: 128.0.0.1/32\n comment: test comment\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Acl Entry Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/aclEntryAttachment:AclEntryAttachment example \u003cacl_id\u003e:\u003centry\u003e\n```\n\n",
"properties": {
"aclId": {
"type": "string",
@@ -104687,7 +106540,7 @@
}
},
"alicloud:apigateway/api:Api": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: \"tf-example\",\n description: \"tf-example\",\n basePath: \"/\",\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: \"tf-example\",\n description: \"tf-example\",\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.apigateway.Group(\"example\",\n name=\"tf-example\",\n description=\"tf-example\",\n base_path=\"/\")\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=\"tf-example\",\n description=\"tf-example\",\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = \"tf-example\",\n Description = \"tf-example\",\n BasePath = \"/\",\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = \"tf-example\",\n Description = \"tf-example\",\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"tf-example\"),\n\t\t\tBasePath: pulumi.String(\"/\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"tf-example\"),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .name(\"tf-example\")\n .description(\"tf-example\")\n .basePath(\"/\")\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(\"tf-example\")\n .description(\"tf-example\")\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: tf-example\n description: tf-example\n basePath: /\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: tf-example\n description: tf-example\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi gateway api can be imported using the id.Format to `\u003cAPI Group Id\u003e:\u003cAPI Id\u003e` e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/api:Api example \"ab2351f2ce904edaa8d92a0510832b91:e4f728fca5a94148b023b99a3e5d0b62\"\n```\n\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: \"tf-example\",\n description: \"tf-example\",\n basePath: \"/\",\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: \"tf-example\",\n description: \"tf-example\",\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.apigateway.Group(\"example\",\n name=\"tf-example\",\n description=\"tf-example\",\n base_path=\"/\")\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=\"tf-example\",\n description=\"tf-example\",\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = \"tf-example\",\n Description = \"tf-example\",\n BasePath = \"/\",\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = \"tf-example\",\n Description = \"tf-example\",\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"tf-example\"),\n\t\t\tBasePath: pulumi.String(\"/\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"tf-example\"),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Group(\"example\", GroupArgs.builder()\n .name(\"tf-example\")\n .description(\"tf-example\")\n .basePath(\"/\")\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(\"tf-example\")\n .description(\"tf-example\")\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: tf-example\n description: tf-example\n basePath: /\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: tf-example\n description: tf-example\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi gateway api can be imported using the id.Format to `\u003cAPI Group Id\u003e:\u003cAPI Id\u003e` e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/api:Api example \"ab2351f2ce904edaa8d92a0510832b91:e4f728fca5a94148b023b99a3e5d0b62\"\n```\n\n",
"properties": {
"apiId": {
"type": "string",
@@ -104943,7 +106796,7 @@
}
},
"alicloud:apigateway/app:App": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.apigateway.App(\"example\", {\n name: \"tf_example\",\n description: \"tf_example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.apigateway.App(\"example\",\n name=\"tf_example\",\n description=\"tf_example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.ApiGateway.App(\"example\", new()\n {\n Name = \"tf_example\",\n Description = \"tf_example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewApp(ctx, \"example\", \u0026apigateway.AppArgs{\n\t\t\tName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.App;\nimport com.pulumi.alicloud.apigateway.AppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new App(\"example\", AppArgs.builder()\n .name(\"tf_example\")\n .description(\"tf_example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:apigateway:App\n properties:\n name: tf_example\n description: tf_example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi gateway app can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/app:App example \"7379660\"\n```\n\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.apigateway.App(\"example\", {\n name: \"tf_example\",\n description: \"tf_example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.apigateway.App(\"example\",\n name=\"tf_example\",\n description=\"tf_example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.ApiGateway.App(\"example\", new()\n {\n Name = \"tf_example\",\n Description = \"tf_example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewApp(ctx, \"example\", \u0026apigateway.AppArgs{\n\t\t\tName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.App;\nimport com.pulumi.alicloud.apigateway.AppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new App(\"example\", AppArgs.builder()\n .name(\"tf_example\")\n .description(\"tf_example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:apigateway:App\n properties:\n name: tf_example\n description: tf_example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi gateway app can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/app:App example \"7379660\"\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -105004,7 +106857,7 @@
}
},
"alicloud:apigateway/appAttachment:AppAttachment": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: name,\n description: name,\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: name,\n description: name,\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\nconst exampleApp = new alicloud.apigateway.App(\"example\", {\n name: name,\n description: name,\n});\nconst exampleAppAttachment = new alicloud.apigateway.AppAttachment(\"example\", {\n apiId: exampleApi.apiId,\n groupId: example.id,\n appId: exampleApp.id,\n stageName: \"PRE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.apigateway.Group(\"example\",\n name=name,\n description=name)\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=name,\n description=name,\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\nexample_app = alicloud.apigateway.App(\"example\",\n name=name,\n description=name)\nexample_app_attachment = alicloud.apigateway.AppAttachment(\"example\",\n api_id=example_api.api_id,\n group_id=example.id,\n app_id=example_app.id,\n stage_name=\"PRE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = name,\n Description = name,\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n var exampleApp = new AliCloud.ApiGateway.App(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleAppAttachment = new AliCloud.ApiGateway.AppAttachment(\"example\", new()\n {\n ApiId = exampleApi.ApiId,\n GroupId = example.Id,\n AppId = exampleApp.Id,\n StageName = \"PRE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApi, err := apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApp, err := apigateway.NewApp(ctx, \"example\", \u0026apigateway.AppArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAppAttachment(ctx, \"example\", \u0026apigateway.AppAttachmentArgs{\n\t\t\tApiId: exampleApi.ApiId,\n\t\t\tGroupId: example.ID(),\n\t\t\tAppId: exampleApp.ID(),\n\t\t\tStageName: pulumi.String(\"PRE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport com.pulumi.alicloud.apigateway.App;\nimport com.pulumi.alicloud.apigateway.AppArgs;\nimport com.pulumi.alicloud.apigateway.AppAttachment;\nimport com.pulumi.alicloud.apigateway.AppAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Group(\"example\", GroupArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(name)\n .description(name)\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n var exampleApp = new App(\"exampleApp\", AppArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleAppAttachment = new AppAttachment(\"exampleAppAttachment\", AppAttachmentArgs.builder()\n .apiId(exampleApi.apiId())\n .groupId(example.id())\n .appId(exampleApp.id())\n .stageName(\"PRE\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: ${name}\n description: ${name}\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: ${name}\n description: ${name}\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n exampleApp:\n type: alicloud:apigateway:App\n name: example\n properties:\n name: ${name}\n description: ${name}\n exampleAppAttachment:\n type: alicloud:apigateway:AppAttachment\n name: example\n properties:\n apiId: ${exampleApi.apiId}\n groupId: ${example.id}\n appId: ${exampleApp.id}\n stageName: PRE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: name,\n description: name,\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: name,\n description: name,\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\nconst exampleApp = new alicloud.apigateway.App(\"example\", {\n name: name,\n description: name,\n});\nconst exampleAppAttachment = new alicloud.apigateway.AppAttachment(\"example\", {\n apiId: exampleApi.apiId,\n groupId: example.id,\n appId: exampleApp.id,\n stageName: \"PRE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.apigateway.Group(\"example\",\n name=name,\n description=name)\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=name,\n description=name,\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\nexample_app = alicloud.apigateway.App(\"example\",\n name=name,\n description=name)\nexample_app_attachment = alicloud.apigateway.AppAttachment(\"example\",\n api_id=example_api.api_id,\n group_id=example.id,\n app_id=example_app.id,\n stage_name=\"PRE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = name,\n Description = name,\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n var exampleApp = new AliCloud.ApiGateway.App(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleAppAttachment = new AliCloud.ApiGateway.AppAttachment(\"example\", new()\n {\n ApiId = exampleApi.ApiId,\n GroupId = example.Id,\n AppId = exampleApp.Id,\n StageName = \"PRE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApi, err := apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApp, err := apigateway.NewApp(ctx, \"example\", \u0026apigateway.AppArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAppAttachment(ctx, \"example\", \u0026apigateway.AppAttachmentArgs{\n\t\t\tApiId: exampleApi.ApiId,\n\t\t\tGroupId: example.ID(),\n\t\t\tAppId: exampleApp.ID(),\n\t\t\tStageName: pulumi.String(\"PRE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport com.pulumi.alicloud.apigateway.App;\nimport com.pulumi.alicloud.apigateway.AppArgs;\nimport com.pulumi.alicloud.apigateway.AppAttachment;\nimport com.pulumi.alicloud.apigateway.AppAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Group(\"example\", GroupArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(name)\n .description(name)\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n var exampleApp = new App(\"exampleApp\", AppArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleAppAttachment = new AppAttachment(\"exampleAppAttachment\", AppAttachmentArgs.builder()\n .apiId(exampleApi.apiId())\n .groupId(example.id())\n .appId(exampleApp.id())\n .stageName(\"PRE\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: ${name}\n description: ${name}\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: ${name}\n description: ${name}\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n exampleApp:\n type: alicloud:apigateway:App\n name: example\n properties:\n name: ${name}\n description: ${name}\n exampleAppAttachment:\n type: alicloud:apigateway:AppAttachment\n name: example\n properties:\n apiId: ${exampleApi.apiId}\n groupId: ${example.id}\n appId: ${exampleApp.id}\n stageName: PRE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"apiId": {
"type": "string",
@@ -105085,7 +106938,7 @@
}
},
"alicloud:apigateway/backend:Backend": {
- "description": "Provides a Api Gateway Backend resource.\n\nFor information about Api Gateway Backend and how to use it, see [What is Backend](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createbackend).\n\n\u003e **NOTE:** Available since v1.181.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new alicloud.apigateway.Backend(\"default\", {\n backendName: name,\n description: name,\n backendType: \"HTTP\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.apigateway.Backend(\"default\",\n backend_name=name,\n description=name,\n backend_type=\"HTTP\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new AliCloud.ApiGateway.Backend(\"default\", new()\n {\n BackendName = name,\n Description = name,\n BackendType = \"HTTP\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewBackend(ctx, \"default\", \u0026apigateway.BackendArgs{\n\t\t\tBackendName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tBackendType: pulumi.String(\"HTTP\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Backend;\nimport com.pulumi.alicloud.apigateway.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Backend(\"default\", BackendArgs.builder()\n .backendName(name)\n .description(name)\n .backendType(\"HTTP\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: alicloud:apigateway:Backend\n properties:\n backendName: ${name}\n description: ${name}\n backendType: HTTP\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Backend can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/backend:Backend example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Backend resource.\n\nFor information about Api Gateway Backend and how to use it, see [What is Backend](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createbackend).\n\n\u003e **NOTE:** Available since v1.181.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new alicloud.apigateway.Backend(\"default\", {\n backendName: name,\n description: name,\n backendType: \"HTTP\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.apigateway.Backend(\"default\",\n backend_name=name,\n description=name,\n backend_type=\"HTTP\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new AliCloud.ApiGateway.Backend(\"default\", new()\n {\n BackendName = name,\n Description = name,\n BackendType = \"HTTP\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewBackend(ctx, \"default\", \u0026apigateway.BackendArgs{\n\t\t\tBackendName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tBackendType: pulumi.String(\"HTTP\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Backend;\nimport com.pulumi.alicloud.apigateway.BackendArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Backend(\"default\", BackendArgs.builder()\n .backendName(name)\n .description(name)\n .backendType(\"HTTP\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: alicloud:apigateway:Backend\n properties:\n backendName: ${name}\n description: ${name}\n backendType: HTTP\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Backend can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/backend:Backend example \u003cid\u003e\n```\n\n",
"properties": {
"backendName": {
"type": "string",
@@ -105157,7 +107010,7 @@
}
},
"alicloud:apigateway/group:Group": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.apigateway.Group(\"default\", {\n name: \"tf_example\",\n description: \"tf_example\",\n basePath: \"/\",\n userLogConfig: {\n requestBody: true,\n responseBody: true,\n queryString: \"*\",\n requestHeaders: \"*\",\n responseHeaders: \"*\",\n jwtClaims: \"*\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.apigateway.Group(\"default\",\n name=\"tf_example\",\n description=\"tf_example\",\n base_path=\"/\",\n user_log_config={\n \"request_body\": True,\n \"response_body\": True,\n \"query_string\": \"*\",\n \"request_headers\": \"*\",\n \"response_headers\": \"*\",\n \"jwt_claims\": \"*\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.ApiGateway.Group(\"default\", new()\n {\n Name = \"tf_example\",\n Description = \"tf_example\",\n BasePath = \"/\",\n UserLogConfig = new AliCloud.ApiGateway.Inputs.GroupUserLogConfigArgs\n {\n RequestBody = true,\n ResponseBody = true,\n QueryString = \"*\",\n RequestHeaders = \"*\",\n ResponseHeaders = \"*\",\n JwtClaims = \"*\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewGroup(ctx, \"default\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tBasePath: pulumi.String(\"/\"),\n\t\t\tUserLogConfig: \u0026apigateway.GroupUserLogConfigArgs{\n\t\t\t\tRequestBody: pulumi.Bool(true),\n\t\t\t\tResponseBody: pulumi.Bool(true),\n\t\t\t\tQueryString: pulumi.String(\"*\"),\n\t\t\t\tRequestHeaders: pulumi.String(\"*\"),\n\t\t\t\tResponseHeaders: pulumi.String(\"*\"),\n\t\t\t\tJwtClaims: pulumi.String(\"*\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.inputs.GroupUserLogConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Group(\"default\", GroupArgs.builder()\n .name(\"tf_example\")\n .description(\"tf_example\")\n .basePath(\"/\")\n .userLogConfig(GroupUserLogConfigArgs.builder()\n .requestBody(true)\n .responseBody(true)\n .queryString(\"*\")\n .requestHeaders(\"*\")\n .responseHeaders(\"*\")\n .jwtClaims(\"*\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:apigateway:Group\n properties:\n name: tf_example\n description: tf_example\n basePath: /\n userLogConfig:\n requestBody: true\n responseBody: true\n queryString: '*'\n requestHeaders: '*'\n responseHeaders: '*'\n jwtClaims: '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi gateway group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/group:Group example \"ab2351f2ce904edaa8d92a0510832b91\"\n```\n\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.apigateway.Group(\"default\", {\n name: \"tf_example\",\n description: \"tf_example\",\n basePath: \"/\",\n userLogConfig: {\n requestBody: true,\n responseBody: true,\n queryString: \"*\",\n requestHeaders: \"*\",\n responseHeaders: \"*\",\n jwtClaims: \"*\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.apigateway.Group(\"default\",\n name=\"tf_example\",\n description=\"tf_example\",\n base_path=\"/\",\n user_log_config={\n \"request_body\": True,\n \"response_body\": True,\n \"query_string\": \"*\",\n \"request_headers\": \"*\",\n \"response_headers\": \"*\",\n \"jwt_claims\": \"*\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.ApiGateway.Group(\"default\", new()\n {\n Name = \"tf_example\",\n Description = \"tf_example\",\n BasePath = \"/\",\n UserLogConfig = new AliCloud.ApiGateway.Inputs.GroupUserLogConfigArgs\n {\n RequestBody = true,\n ResponseBody = true,\n QueryString = \"*\",\n RequestHeaders = \"*\",\n ResponseHeaders = \"*\",\n JwtClaims = \"*\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := apigateway.NewGroup(ctx, \"default\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tBasePath: pulumi.String(\"/\"),\n\t\t\tUserLogConfig: \u0026apigateway.GroupUserLogConfigArgs{\n\t\t\t\tRequestBody: pulumi.Bool(true),\n\t\t\t\tResponseBody: pulumi.Bool(true),\n\t\t\t\tQueryString: pulumi.String(\"*\"),\n\t\t\t\tRequestHeaders: pulumi.String(\"*\"),\n\t\t\t\tResponseHeaders: pulumi.String(\"*\"),\n\t\t\t\tJwtClaims: pulumi.String(\"*\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.inputs.GroupUserLogConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Group(\"default\", GroupArgs.builder()\n .name(\"tf_example\")\n .description(\"tf_example\")\n .basePath(\"/\")\n .userLogConfig(GroupUserLogConfigArgs.builder()\n .requestBody(true)\n .responseBody(true)\n .queryString(\"*\")\n .requestHeaders(\"*\")\n .responseHeaders(\"*\")\n .jwtClaims(\"*\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:apigateway:Group\n properties:\n name: tf_example\n description: tf_example\n basePath: /\n userLogConfig:\n requestBody: true\n responseBody: true\n queryString: '*'\n requestHeaders: '*'\n responseHeaders: '*'\n jwtClaims: '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi gateway group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/group:Group example \"ab2351f2ce904edaa8d92a0510832b91\"\n```\n\n",
"properties": {
"basePath": {
"type": "string",
@@ -105267,7 +107120,7 @@
}
},
"alicloud:apigateway/instance:Instance": {
- "description": "Provides a Api Gateway Instance resource. \n\nFor information about Api Gateway Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/api-gateway/product-overview/dedicated-instances).\n\n\u003e **NOTE:** Available since v1.218.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.apigateway.Instance(\"default\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6(i,j,k)\",\n paymentType: \"PayAsYouGo\",\n instanceType: \"normal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.apigateway.Instance(\"default\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6(i,j,k)\",\n payment_type=\"PayAsYouGo\",\n instance_type=\"normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.ApiGateway.Instance(\"default\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6(i,j,k)\",\n PaymentType = \"PayAsYouGo\",\n InstanceType = \"normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewInstance(ctx, \"default\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6(i,j,k)\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceType: pulumi.String(\"normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6(i,j,k)\")\n .paymentType(\"PayAsYouGo\")\n .instanceType(\"normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6(i,j,k)\n paymentType: PayAsYouGo\n instanceType: normal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst vswitch1 = new alicloud.vpc.Switch(\"vswitch_1\", {\n vpcId: vpc.id,\n cidrBlock: \"172.16.0.0/16\",\n zoneId: \"cn-hangzhou-j\",\n vswitchName: `${name}_1`,\n});\nconst vswitch2 = new alicloud.vpc.Switch(\"vswitch_2\", {\n vpcId: vpc.id,\n cidrBlock: \"172.17.0.0/16\",\n zoneId: \"cn-hangzhou-k\",\n vswitchName: `${name}_2`,\n});\nconst securityGroup = new alicloud.ecs.SecurityGroup(\"security_group\", {\n vpcId: vpc.id,\n securityGroupName: name,\n});\nconst vpcIntegrationInstance = new alicloud.apigateway.Instance(\"vpc_integration_instance\", {\n instanceName: name,\n httpsPolicy: \"HTTPS2_TLS1_0\",\n instanceSpec: \"api.s1.small\",\n instanceType: \"vpc_connect\",\n paymentType: \"PayAsYouGo\",\n userVpcId: vpc.id,\n instanceCidr: \"192.168.0.0/16\",\n zoneVswitchSecurityGroups: [\n {\n zoneId: vswitch1.zoneId,\n vswitchId: vswitch1.id,\n cidrBlock: vswitch1.cidrBlock,\n securityGroup: securityGroup.id,\n },\n {\n zoneId: vswitch2.zoneId,\n vswitchId: vswitch2.id,\n cidrBlock: vswitch2.cidrBlock,\n securityGroup: securityGroup.id,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvpc = alicloud.vpc.Network(\"vpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\nvswitch1 = alicloud.vpc.Switch(\"vswitch_1\",\n vpc_id=vpc.id,\n cidr_block=\"172.16.0.0/16\",\n zone_id=\"cn-hangzhou-j\",\n vswitch_name=f\"{name}_1\")\nvswitch2 = alicloud.vpc.Switch(\"vswitch_2\",\n vpc_id=vpc.id,\n cidr_block=\"172.17.0.0/16\",\n zone_id=\"cn-hangzhou-k\",\n vswitch_name=f\"{name}_2\")\nsecurity_group = alicloud.ecs.SecurityGroup(\"security_group\",\n vpc_id=vpc.id,\n security_group_name=name)\nvpc_integration_instance = alicloud.apigateway.Instance(\"vpc_integration_instance\",\n instance_name=name,\n https_policy=\"HTTPS2_TLS1_0\",\n instance_spec=\"api.s1.small\",\n instance_type=\"vpc_connect\",\n payment_type=\"PayAsYouGo\",\n user_vpc_id=vpc.id,\n instance_cidr=\"192.168.0.0/16\",\n zone_vswitch_security_groups=[\n {\n \"zone_id\": vswitch1.zone_id,\n \"vswitch_id\": vswitch1.id,\n \"cidr_block\": vswitch1.cidr_block,\n \"security_group\": security_group.id,\n },\n {\n \"zone_id\": vswitch2.zone_id,\n \"vswitch_id\": vswitch2.id,\n \"cidr_block\": vswitch2.cidr_block,\n \"security_group\": security_group.id,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var vswitch1 = new AliCloud.Vpc.Switch(\"vswitch_1\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.16.0.0/16\",\n ZoneId = \"cn-hangzhou-j\",\n VswitchName = $\"{name}_1\",\n });\n\n var vswitch2 = new AliCloud.Vpc.Switch(\"vswitch_2\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.17.0.0/16\",\n ZoneId = \"cn-hangzhou-k\",\n VswitchName = $\"{name}_2\",\n });\n\n var securityGroup = new AliCloud.Ecs.SecurityGroup(\"security_group\", new()\n {\n VpcId = vpc.Id,\n SecurityGroupName = name,\n });\n\n var vpcIntegrationInstance = new AliCloud.ApiGateway.Instance(\"vpc_integration_instance\", new()\n {\n InstanceName = name,\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n InstanceSpec = \"api.s1.small\",\n InstanceType = \"vpc_connect\",\n PaymentType = \"PayAsYouGo\",\n UserVpcId = vpc.Id,\n InstanceCidr = \"192.168.0.0/16\",\n ZoneVswitchSecurityGroups = new[]\n {\n new AliCloud.ApiGateway.Inputs.InstanceZoneVswitchSecurityGroupArgs\n {\n ZoneId = vswitch1.ZoneId,\n VswitchId = vswitch1.Id,\n CidrBlock = vswitch1.CidrBlock,\n SecurityGroup = securityGroup.Id,\n },\n new AliCloud.ApiGateway.Inputs.InstanceZoneVswitchSecurityGroupArgs\n {\n ZoneId = vswitch2.ZoneId,\n VswitchId = vswitch2.Id,\n CidrBlock = vswitch2.CidrBlock,\n SecurityGroup = securityGroup.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitch1, err := vpc.NewSwitch(ctx, \"vswitch_1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-j\"),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_1\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitch2, err := vpc.NewSwitch(ctx, \"vswitch_2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.17.0.0/16\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_2\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecurityGroup, err := ecs.NewSecurityGroup(ctx, \"security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewInstance(ctx, \"vpc_integration_instance\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tInstanceType: pulumi.String(\"vpc_connect\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tUserVpcId: vpc.ID(),\n\t\t\tInstanceCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tZoneVswitchSecurityGroups: apigateway.InstanceZoneVswitchSecurityGroupArray{\n\t\t\t\t\u0026apigateway.InstanceZoneVswitchSecurityGroupArgs{\n\t\t\t\t\tZoneId: vswitch1.ZoneId,\n\t\t\t\t\tVswitchId: vswitch1.ID(),\n\t\t\t\t\tCidrBlock: vswitch1.CidrBlock,\n\t\t\t\t\tSecurityGroup: securityGroup.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026apigateway.InstanceZoneVswitchSecurityGroupArgs{\n\t\t\t\t\tZoneId: vswitch2.ZoneId,\n\t\t\t\t\tVswitchId: vswitch2.ID(),\n\t\t\t\t\tCidrBlock: vswitch2.CidrBlock,\n\t\t\t\t\tSecurityGroup: securityGroup.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.inputs.InstanceZoneVswitchSecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var vswitch1 = new Switch(\"vswitch1\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.16.0.0/16\")\n .zoneId(\"cn-hangzhou-j\")\n .vswitchName(String.format(\"%s_1\", name))\n .build());\n\n var vswitch2 = new Switch(\"vswitch2\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.17.0.0/16\")\n .zoneId(\"cn-hangzhou-k\")\n .vswitchName(String.format(\"%s_2\", name))\n .build());\n\n var securityGroup = new SecurityGroup(\"securityGroup\", SecurityGroupArgs.builder()\n .vpcId(vpc.id())\n .securityGroupName(name)\n .build());\n\n var vpcIntegrationInstance = new Instance(\"vpcIntegrationInstance\", InstanceArgs.builder()\n .instanceName(name)\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .instanceSpec(\"api.s1.small\")\n .instanceType(\"vpc_connect\")\n .paymentType(\"PayAsYouGo\")\n .userVpcId(vpc.id())\n .instanceCidr(\"192.168.0.0/16\")\n .zoneVswitchSecurityGroups( \n InstanceZoneVswitchSecurityGroupArgs.builder()\n .zoneId(vswitch1.zoneId())\n .vswitchId(vswitch1.id())\n .cidrBlock(vswitch1.cidrBlock())\n .securityGroup(securityGroup.id())\n .build(),\n InstanceZoneVswitchSecurityGroupArgs.builder()\n .zoneId(vswitch2.zoneId())\n .vswitchId(vswitch2.id())\n .cidrBlock(vswitch2.cidrBlock())\n .securityGroup(securityGroup.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n vswitch1:\n type: alicloud:vpc:Switch\n name: vswitch_1\n properties:\n vpcId: ${vpc.id}\n cidrBlock: 172.16.0.0/16\n zoneId: cn-hangzhou-j\n vswitchName: ${name}_1\n vswitch2:\n type: alicloud:vpc:Switch\n name: vswitch_2\n properties:\n vpcId: ${vpc.id}\n cidrBlock: 172.17.0.0/16\n zoneId: cn-hangzhou-k\n vswitchName: ${name}_2\n securityGroup:\n type: alicloud:ecs:SecurityGroup\n name: security_group\n properties:\n vpcId: ${vpc.id}\n securityGroupName: ${name}\n vpcIntegrationInstance:\n type: alicloud:apigateway:Instance\n name: vpc_integration_instance\n properties:\n instanceName: ${name}\n httpsPolicy: HTTPS2_TLS1_0\n instanceSpec: api.s1.small\n instanceType: vpc_connect\n paymentType: PayAsYouGo\n userVpcId: ${vpc.id}\n instanceCidr: 192.168.0.0/16\n zoneVswitchSecurityGroups:\n - zoneId: ${vswitch1.zoneId}\n vswitchId: ${vswitch1.id}\n cidrBlock: ${vswitch1.cidrBlock}\n securityGroup: ${securityGroup.id}\n - zoneId: ${vswitch2.zoneId}\n vswitchId: ${vswitch2.id}\n cidrBlock: ${vswitch2.cidrBlock}\n securityGroup: ${securityGroup.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Instance resource. \n\nFor information about Api Gateway Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/api-gateway/product-overview/dedicated-instances).\n\n\u003e **NOTE:** Available since v1.218.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.apigateway.Instance(\"default\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6(i,j,k)\",\n paymentType: \"PayAsYouGo\",\n instanceType: \"normal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.apigateway.Instance(\"default\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6(i,j,k)\",\n payment_type=\"PayAsYouGo\",\n instance_type=\"normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.ApiGateway.Instance(\"default\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6(i,j,k)\",\n PaymentType = \"PayAsYouGo\",\n InstanceType = \"normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := apigateway.NewInstance(ctx, \"default\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6(i,j,k)\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceType: pulumi.String(\"normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6(i,j,k)\")\n .paymentType(\"PayAsYouGo\")\n .instanceType(\"normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6(i,j,k)\n paymentType: PayAsYouGo\n instanceType: normal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst vswitch1 = new alicloud.vpc.Switch(\"vswitch_1\", {\n vpcId: vpc.id,\n cidrBlock: \"172.16.0.0/16\",\n zoneId: \"cn-hangzhou-j\",\n vswitchName: `${name}_1`,\n});\nconst vswitch2 = new alicloud.vpc.Switch(\"vswitch_2\", {\n vpcId: vpc.id,\n cidrBlock: \"172.17.0.0/16\",\n zoneId: \"cn-hangzhou-k\",\n vswitchName: `${name}_2`,\n});\nconst securityGroup = new alicloud.ecs.SecurityGroup(\"security_group\", {\n vpcId: vpc.id,\n securityGroupName: name,\n});\nconst vpcIntegrationInstance = new alicloud.apigateway.Instance(\"vpc_integration_instance\", {\n instanceName: name,\n httpsPolicy: \"HTTPS2_TLS1_0\",\n instanceSpec: \"api.s1.small\",\n instanceType: \"vpc_connect\",\n paymentType: \"PayAsYouGo\",\n userVpcId: vpc.id,\n instanceCidr: \"192.168.0.0/16\",\n zoneVswitchSecurityGroups: [\n {\n zoneId: vswitch1.zoneId,\n vswitchId: vswitch1.id,\n cidrBlock: vswitch1.cidrBlock,\n securityGroup: securityGroup.id,\n },\n {\n zoneId: vswitch2.zoneId,\n vswitchId: vswitch2.id,\n cidrBlock: vswitch2.cidrBlock,\n securityGroup: securityGroup.id,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvpc = alicloud.vpc.Network(\"vpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\nvswitch1 = alicloud.vpc.Switch(\"vswitch_1\",\n vpc_id=vpc.id,\n cidr_block=\"172.16.0.0/16\",\n zone_id=\"cn-hangzhou-j\",\n vswitch_name=f\"{name}_1\")\nvswitch2 = alicloud.vpc.Switch(\"vswitch_2\",\n vpc_id=vpc.id,\n cidr_block=\"172.17.0.0/16\",\n zone_id=\"cn-hangzhou-k\",\n vswitch_name=f\"{name}_2\")\nsecurity_group = alicloud.ecs.SecurityGroup(\"security_group\",\n vpc_id=vpc.id,\n security_group_name=name)\nvpc_integration_instance = alicloud.apigateway.Instance(\"vpc_integration_instance\",\n instance_name=name,\n https_policy=\"HTTPS2_TLS1_0\",\n instance_spec=\"api.s1.small\",\n instance_type=\"vpc_connect\",\n payment_type=\"PayAsYouGo\",\n user_vpc_id=vpc.id,\n instance_cidr=\"192.168.0.0/16\",\n zone_vswitch_security_groups=[\n {\n \"zone_id\": vswitch1.zone_id,\n \"vswitch_id\": vswitch1.id,\n \"cidr_block\": vswitch1.cidr_block,\n \"security_group\": security_group.id,\n },\n {\n \"zone_id\": vswitch2.zone_id,\n \"vswitch_id\": vswitch2.id,\n \"cidr_block\": vswitch2.cidr_block,\n \"security_group\": security_group.id,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var vswitch1 = new AliCloud.Vpc.Switch(\"vswitch_1\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.16.0.0/16\",\n ZoneId = \"cn-hangzhou-j\",\n VswitchName = $\"{name}_1\",\n });\n\n var vswitch2 = new AliCloud.Vpc.Switch(\"vswitch_2\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.17.0.0/16\",\n ZoneId = \"cn-hangzhou-k\",\n VswitchName = $\"{name}_2\",\n });\n\n var securityGroup = new AliCloud.Ecs.SecurityGroup(\"security_group\", new()\n {\n VpcId = vpc.Id,\n SecurityGroupName = name,\n });\n\n var vpcIntegrationInstance = new AliCloud.ApiGateway.Instance(\"vpc_integration_instance\", new()\n {\n InstanceName = name,\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n InstanceSpec = \"api.s1.small\",\n InstanceType = \"vpc_connect\",\n PaymentType = \"PayAsYouGo\",\n UserVpcId = vpc.Id,\n InstanceCidr = \"192.168.0.0/16\",\n ZoneVswitchSecurityGroups = new[]\n {\n new AliCloud.ApiGateway.Inputs.InstanceZoneVswitchSecurityGroupArgs\n {\n ZoneId = vswitch1.ZoneId,\n VswitchId = vswitch1.Id,\n CidrBlock = vswitch1.CidrBlock,\n SecurityGroup = securityGroup.Id,\n },\n new AliCloud.ApiGateway.Inputs.InstanceZoneVswitchSecurityGroupArgs\n {\n ZoneId = vswitch2.ZoneId,\n VswitchId = vswitch2.Id,\n CidrBlock = vswitch2.CidrBlock,\n SecurityGroup = securityGroup.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitch1, err := vpc.NewSwitch(ctx, \"vswitch_1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-j\"),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_1\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitch2, err := vpc.NewSwitch(ctx, \"vswitch_2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.17.0.0/16\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-k\"),\n\t\t\tVswitchName: pulumi.Sprintf(\"%v_2\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecurityGroup, err := ecs.NewSecurityGroup(ctx, \"security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewInstance(ctx, \"vpc_integration_instance\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tInstanceType: pulumi.String(\"vpc_connect\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tUserVpcId: vpc.ID(),\n\t\t\tInstanceCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tZoneVswitchSecurityGroups: apigateway.InstanceZoneVswitchSecurityGroupArray{\n\t\t\t\t\u0026apigateway.InstanceZoneVswitchSecurityGroupArgs{\n\t\t\t\t\tZoneId: vswitch1.ZoneId,\n\t\t\t\t\tVswitchId: vswitch1.ID(),\n\t\t\t\t\tCidrBlock: vswitch1.CidrBlock,\n\t\t\t\t\tSecurityGroup: securityGroup.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026apigateway.InstanceZoneVswitchSecurityGroupArgs{\n\t\t\t\t\tZoneId: vswitch2.ZoneId,\n\t\t\t\t\tVswitchId: vswitch2.ID(),\n\t\t\t\t\tCidrBlock: vswitch2.CidrBlock,\n\t\t\t\t\tSecurityGroup: securityGroup.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.inputs.InstanceZoneVswitchSecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var vswitch1 = new Switch(\"vswitch1\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.16.0.0/16\")\n .zoneId(\"cn-hangzhou-j\")\n .vswitchName(String.format(\"%s_1\", name))\n .build());\n\n var vswitch2 = new Switch(\"vswitch2\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.17.0.0/16\")\n .zoneId(\"cn-hangzhou-k\")\n .vswitchName(String.format(\"%s_2\", name))\n .build());\n\n var securityGroup = new SecurityGroup(\"securityGroup\", SecurityGroupArgs.builder()\n .vpcId(vpc.id())\n .securityGroupName(name)\n .build());\n\n var vpcIntegrationInstance = new Instance(\"vpcIntegrationInstance\", InstanceArgs.builder()\n .instanceName(name)\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .instanceSpec(\"api.s1.small\")\n .instanceType(\"vpc_connect\")\n .paymentType(\"PayAsYouGo\")\n .userVpcId(vpc.id())\n .instanceCidr(\"192.168.0.0/16\")\n .zoneVswitchSecurityGroups( \n InstanceZoneVswitchSecurityGroupArgs.builder()\n .zoneId(vswitch1.zoneId())\n .vswitchId(vswitch1.id())\n .cidrBlock(vswitch1.cidrBlock())\n .securityGroup(securityGroup.id())\n .build(),\n InstanceZoneVswitchSecurityGroupArgs.builder()\n .zoneId(vswitch2.zoneId())\n .vswitchId(vswitch2.id())\n .cidrBlock(vswitch2.cidrBlock())\n .securityGroup(securityGroup.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n vswitch1:\n type: alicloud:vpc:Switch\n name: vswitch_1\n properties:\n vpcId: ${vpc.id}\n cidrBlock: 172.16.0.0/16\n zoneId: cn-hangzhou-j\n vswitchName: ${name}_1\n vswitch2:\n type: alicloud:vpc:Switch\n name: vswitch_2\n properties:\n vpcId: ${vpc.id}\n cidrBlock: 172.17.0.0/16\n zoneId: cn-hangzhou-k\n vswitchName: ${name}_2\n securityGroup:\n type: alicloud:ecs:SecurityGroup\n name: security_group\n properties:\n vpcId: ${vpc.id}\n securityGroupName: ${name}\n vpcIntegrationInstance:\n type: alicloud:apigateway:Instance\n name: vpc_integration_instance\n properties:\n instanceName: ${name}\n httpsPolicy: HTTPS2_TLS1_0\n instanceSpec: api.s1.small\n instanceType: vpc_connect\n paymentType: PayAsYouGo\n userVpcId: ${vpc.id}\n instanceCidr: 192.168.0.0/16\n zoneVswitchSecurityGroups:\n - zoneId: ${vswitch1.zoneId}\n vswitchId: ${vswitch1.id}\n cidrBlock: ${vswitch1.cidrBlock}\n securityGroup: ${securityGroup.id}\n - zoneId: ${vswitch2.zoneId}\n vswitchId: ${vswitch2.id}\n cidrBlock: ${vswitch2.cidrBlock}\n securityGroup: ${securityGroup.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"connectCidrBlocks": {
"type": "string",
@@ -105592,7 +107445,7 @@
}
},
"alicloud:apigateway/instanceAclAttachment:InstanceAclAttachment": {
- "description": "Provides an Instance ACL attachment resource for attaching an ACL to a specific API Gateway instance.\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.Instance(\"default\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6\",\n paymentType: \"PayAsYouGo\",\n instanceType: \"normal\",\n});\nconst defaultAccessControlList = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\nconst defaultAclEntryAttachment = new alicloud.apigateway.AclEntryAttachment(\"default\", {\n aclId: defaultAccessControlList.id,\n entry: \"128.0.0.1/32\",\n comment: \"test comment\",\n});\nconst defaultInstanceAclAttachment = new alicloud.apigateway.InstanceAclAttachment(\"default\", {\n instanceId: _default.id,\n aclId: defaultAccessControlList.id,\n aclType: \"white\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.Instance(\"default\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6\",\n payment_type=\"PayAsYouGo\",\n instance_type=\"normal\")\ndefault_access_control_list = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\ndefault_acl_entry_attachment = alicloud.apigateway.AclEntryAttachment(\"default\",\n acl_id=default_access_control_list.id,\n entry=\"128.0.0.1/32\",\n comment=\"test comment\")\ndefault_instance_acl_attachment = alicloud.apigateway.InstanceAclAttachment(\"default\",\n instance_id=default.id,\n acl_id=default_access_control_list.id,\n acl_type=\"white\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.Instance(\"default\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6\",\n PaymentType = \"PayAsYouGo\",\n InstanceType = \"normal\",\n });\n\n var defaultAccessControlList = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n var defaultAclEntryAttachment = new AliCloud.ApiGateway.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAccessControlList.Id,\n Entry = \"128.0.0.1/32\",\n Comment = \"test comment\",\n });\n\n var defaultInstanceAclAttachment = new AliCloud.ApiGateway.InstanceAclAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n AclId = defaultAccessControlList.Id,\n AclType = \"white\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := apigateway.NewInstance(ctx, \"default\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceType: pulumi.String(\"normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccessControlList, err := apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAclEntryAttachment(ctx, \"default\", \u0026apigateway.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAccessControlList.ID(),\n\t\t\tEntry: pulumi.String(\"128.0.0.1/32\"),\n\t\t\tComment: pulumi.String(\"test comment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewInstanceAclAttachment(ctx, \"default\", \u0026apigateway.InstanceAclAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tAclId: defaultAccessControlList.ID(),\n\t\t\tAclType: pulumi.String(\"white\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachment;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachmentArgs;\nimport com.pulumi.alicloud.apigateway.InstanceAclAttachment;\nimport com.pulumi.alicloud.apigateway.InstanceAclAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6\")\n .paymentType(\"PayAsYouGo\")\n .instanceType(\"normal\")\n .build());\n\n var defaultAccessControlList = new AccessControlList(\"defaultAccessControlList\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAccessControlList.id())\n .entry(\"128.0.0.1/32\")\n .comment(\"test comment\")\n .build());\n\n var defaultInstanceAclAttachment = new InstanceAclAttachment(\"defaultInstanceAclAttachment\", InstanceAclAttachmentArgs.builder()\n .instanceId(default_.id())\n .aclId(defaultAccessControlList.id())\n .aclType(\"white\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6\n paymentType: PayAsYouGo\n instanceType: normal\n defaultAccessControlList:\n type: alicloud:apigateway:AccessControlList\n name: default\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n defaultAclEntryAttachment:\n type: alicloud:apigateway:AclEntryAttachment\n name: default\n properties:\n aclId: ${defaultAccessControlList.id}\n entry: 128.0.0.1/32\n comment: test comment\n defaultInstanceAclAttachment:\n type: alicloud:apigateway:InstanceAclAttachment\n name: default\n properties:\n instanceId: ${default.id}\n aclId: ${defaultAccessControlList.id}\n aclType: white\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Instance Acl Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/instanceAclAttachment:InstanceAclAttachment example \u003cinstance_id\u003e:\u003cacl_id\u003e:\u003cacl_type\u003e\n```\n\n",
+ "description": "Provides an Instance ACL attachment resource for attaching an ACL to a specific API Gateway instance.\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.Instance(\"default\", {\n instanceName: name,\n instanceSpec: \"api.s1.small\",\n httpsPolicy: \"HTTPS2_TLS1_0\",\n zoneId: \"cn-hangzhou-MAZ6\",\n paymentType: \"PayAsYouGo\",\n instanceType: \"normal\",\n});\nconst defaultAccessControlList = new alicloud.apigateway.AccessControlList(\"default\", {\n accessControlListName: name,\n addressIpVersion: \"ipv4\",\n});\nconst defaultAclEntryAttachment = new alicloud.apigateway.AclEntryAttachment(\"default\", {\n aclId: defaultAccessControlList.id,\n entry: \"128.0.0.1/32\",\n comment: \"test comment\",\n});\nconst defaultInstanceAclAttachment = new alicloud.apigateway.InstanceAclAttachment(\"default\", {\n instanceId: _default.id,\n aclId: defaultAccessControlList.id,\n aclType: \"white\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.Instance(\"default\",\n instance_name=name,\n instance_spec=\"api.s1.small\",\n https_policy=\"HTTPS2_TLS1_0\",\n zone_id=\"cn-hangzhou-MAZ6\",\n payment_type=\"PayAsYouGo\",\n instance_type=\"normal\")\ndefault_access_control_list = alicloud.apigateway.AccessControlList(\"default\",\n access_control_list_name=name,\n address_ip_version=\"ipv4\")\ndefault_acl_entry_attachment = alicloud.apigateway.AclEntryAttachment(\"default\",\n acl_id=default_access_control_list.id,\n entry=\"128.0.0.1/32\",\n comment=\"test comment\")\ndefault_instance_acl_attachment = alicloud.apigateway.InstanceAclAttachment(\"default\",\n instance_id=default.id,\n acl_id=default_access_control_list.id,\n acl_type=\"white\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.Instance(\"default\", new()\n {\n InstanceName = name,\n InstanceSpec = \"api.s1.small\",\n HttpsPolicy = \"HTTPS2_TLS1_0\",\n ZoneId = \"cn-hangzhou-MAZ6\",\n PaymentType = \"PayAsYouGo\",\n InstanceType = \"normal\",\n });\n\n var defaultAccessControlList = new AliCloud.ApiGateway.AccessControlList(\"default\", new()\n {\n AccessControlListName = name,\n AddressIpVersion = \"ipv4\",\n });\n\n var defaultAclEntryAttachment = new AliCloud.ApiGateway.AclEntryAttachment(\"default\", new()\n {\n AclId = defaultAccessControlList.Id,\n Entry = \"128.0.0.1/32\",\n Comment = \"test comment\",\n });\n\n var defaultInstanceAclAttachment = new AliCloud.ApiGateway.InstanceAclAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n AclId = defaultAccessControlList.Id,\n AclType = \"white\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := apigateway.NewInstance(ctx, \"default\", \u0026apigateway.InstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tInstanceSpec: pulumi.String(\"api.s1.small\"),\n\t\t\tHttpsPolicy: pulumi.String(\"HTTPS2_TLS1_0\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-MAZ6\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceType: pulumi.String(\"normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccessControlList, err := apigateway.NewAccessControlList(ctx, \"default\", \u0026apigateway.AccessControlListArgs{\n\t\t\tAccessControlListName: pulumi.String(name),\n\t\t\tAddressIpVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewAclEntryAttachment(ctx, \"default\", \u0026apigateway.AclEntryAttachmentArgs{\n\t\t\tAclId: defaultAccessControlList.ID(),\n\t\t\tEntry: pulumi.String(\"128.0.0.1/32\"),\n\t\t\tComment: pulumi.String(\"test comment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewInstanceAclAttachment(ctx, \"default\", \u0026apigateway.InstanceAclAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tAclId: defaultAccessControlList.ID(),\n\t\t\tAclType: pulumi.String(\"white\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Instance;\nimport com.pulumi.alicloud.apigateway.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.AccessControlList;\nimport com.pulumi.alicloud.apigateway.AccessControlListArgs;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachment;\nimport com.pulumi.alicloud.apigateway.AclEntryAttachmentArgs;\nimport com.pulumi.alicloud.apigateway.InstanceAclAttachment;\nimport com.pulumi.alicloud.apigateway.InstanceAclAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .instanceName(name)\n .instanceSpec(\"api.s1.small\")\n .httpsPolicy(\"HTTPS2_TLS1_0\")\n .zoneId(\"cn-hangzhou-MAZ6\")\n .paymentType(\"PayAsYouGo\")\n .instanceType(\"normal\")\n .build());\n\n var defaultAccessControlList = new AccessControlList(\"defaultAccessControlList\", AccessControlListArgs.builder()\n .accessControlListName(name)\n .addressIpVersion(\"ipv4\")\n .build());\n\n var defaultAclEntryAttachment = new AclEntryAttachment(\"defaultAclEntryAttachment\", AclEntryAttachmentArgs.builder()\n .aclId(defaultAccessControlList.id())\n .entry(\"128.0.0.1/32\")\n .comment(\"test comment\")\n .build());\n\n var defaultInstanceAclAttachment = new InstanceAclAttachment(\"defaultInstanceAclAttachment\", InstanceAclAttachmentArgs.builder()\n .instanceId(default_.id())\n .aclId(defaultAccessControlList.id())\n .aclType(\"white\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:Instance\n properties:\n instanceName: ${name}\n instanceSpec: api.s1.small\n httpsPolicy: HTTPS2_TLS1_0\n zoneId: cn-hangzhou-MAZ6\n paymentType: PayAsYouGo\n instanceType: normal\n defaultAccessControlList:\n type: alicloud:apigateway:AccessControlList\n name: default\n properties:\n accessControlListName: ${name}\n addressIpVersion: ipv4\n defaultAclEntryAttachment:\n type: alicloud:apigateway:AclEntryAttachment\n name: default\n properties:\n aclId: ${defaultAccessControlList.id}\n entry: 128.0.0.1/32\n comment: test comment\n defaultInstanceAclAttachment:\n type: alicloud:apigateway:InstanceAclAttachment\n name: default\n properties:\n instanceId: ${default.id}\n aclId: ${defaultAccessControlList.id}\n aclType: white\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Instance Acl Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/instanceAclAttachment:InstanceAclAttachment example \u003cinstance_id\u003e:\u003cacl_id\u003e:\u003cacl_type\u003e\n```\n\n",
"properties": {
"aclId": {
"type": "string",
@@ -105657,7 +107510,7 @@
}
},
"alicloud:apigateway/logConfig:LogConfig": {
- "description": "Provides a Api Gateway Log Config resource.\n\nFor information about Api Gateway Log Config and how to use it, see [What is Log Config](https://www.alibabacloud.com/help/en/api-gateway/latest/api-cloudapi-2016-07-14-createlogconfig).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst example = new alicloud.log.Project(\"example\", {\n projectName: `${name}-${_default.result}`,\n description: name,\n});\nconst exampleStore = new alicloud.log.Store(\"example\", {\n projectName: example.projectName,\n logstoreName: `${name}-${_default.result}`,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst exampleLogConfig = new alicloud.apigateway.LogConfig(\"example\", {\n slsProject: example.projectName,\n slsLogStore: exampleStore.logstoreName,\n logType: \"PROVIDER\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nexample = alicloud.log.Project(\"example\",\n project_name=f\"{name}-{default['result']}\",\n description=name)\nexample_store = alicloud.log.Store(\"example\",\n project_name=example.project_name,\n logstore_name=f\"{name}-{default['result']}\",\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\nexample_log_config = alicloud.apigateway.LogConfig(\"example\",\n sls_project=example.project_name,\n sls_log_store=example_store.logstore_name,\n log_type=\"PROVIDER\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var example = new AliCloud.Log.Project(\"example\", new()\n {\n ProjectName = $\"{name}-{@default.Result}\",\n Description = name,\n });\n\n var exampleStore = new AliCloud.Log.Store(\"example\", new()\n {\n ProjectName = example.ProjectName,\n LogstoreName = $\"{name}-{@default.Result}\",\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var exampleLogConfig = new AliCloud.ApiGateway.LogConfig(\"example\", new()\n {\n SlsProject = example.ProjectName,\n SlsLogStore = exampleStore.LogstoreName,\n LogType = \"PROVIDER\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := log.NewProject(ctx, \"example\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleStore, err := log.NewStore(ctx, \"example\", \u0026log.StoreArgs{\n\t\t\tProjectName: example.ProjectName,\n\t\t\tLogstoreName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewLogConfig(ctx, \"example\", \u0026apigateway.LogConfigArgs{\n\t\t\tSlsProject: example.ProjectName,\n\t\t\tSlsLogStore: exampleStore.LogstoreName,\n\t\t\tLogType: pulumi.String(\"PROVIDER\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.apigateway.LogConfig;\nimport com.pulumi.alicloud.apigateway.LogConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var example = new Project(\"example\", ProjectArgs.builder()\n .projectName(String.format(\"%s-%s\", name,default_.result()))\n .description(name)\n .build());\n\n var exampleStore = new Store(\"exampleStore\", StoreArgs.builder()\n .projectName(example.projectName())\n .logstoreName(String.format(\"%s-%s\", name,default_.result()))\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var exampleLogConfig = new LogConfig(\"exampleLogConfig\", LogConfigArgs.builder()\n .slsProject(example.projectName())\n .slsLogStore(exampleStore.logstoreName())\n .logType(\"PROVIDER\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n example:\n type: alicloud:log:Project\n properties:\n projectName: ${name}-${default.result}\n description: ${name}\n exampleStore:\n type: alicloud:log:Store\n name: example\n properties:\n projectName: ${example.projectName}\n logstoreName: ${name}-${default.result}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n exampleLogConfig:\n type: alicloud:apigateway:LogConfig\n name: example\n properties:\n slsProject: ${example.projectName}\n slsLogStore: ${exampleStore.logstoreName}\n logType: PROVIDER\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Log Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/logConfig:LogConfig example \u003clog_type\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Log Config resource.\n\nFor information about Api Gateway Log Config and how to use it, see [What is Log Config](https://www.alibabacloud.com/help/en/api-gateway/latest/api-cloudapi-2016-07-14-createlogconfig).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst example = new alicloud.log.Project(\"example\", {\n projectName: `${name}-${_default.result}`,\n description: name,\n});\nconst exampleStore = new alicloud.log.Store(\"example\", {\n projectName: example.projectName,\n logstoreName: `${name}-${_default.result}`,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst exampleLogConfig = new alicloud.apigateway.LogConfig(\"example\", {\n slsProject: example.projectName,\n slsLogStore: exampleStore.logstoreName,\n logType: \"PROVIDER\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nexample = alicloud.log.Project(\"example\",\n project_name=f\"{name}-{default['result']}\",\n description=name)\nexample_store = alicloud.log.Store(\"example\",\n project_name=example.project_name,\n logstore_name=f\"{name}-{default['result']}\",\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\nexample_log_config = alicloud.apigateway.LogConfig(\"example\",\n sls_project=example.project_name,\n sls_log_store=example_store.logstore_name,\n log_type=\"PROVIDER\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var example = new AliCloud.Log.Project(\"example\", new()\n {\n ProjectName = $\"{name}-{@default.Result}\",\n Description = name,\n });\n\n var exampleStore = new AliCloud.Log.Store(\"example\", new()\n {\n ProjectName = example.ProjectName,\n LogstoreName = $\"{name}-{@default.Result}\",\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var exampleLogConfig = new AliCloud.ApiGateway.LogConfig(\"example\", new()\n {\n SlsProject = example.ProjectName,\n SlsLogStore = exampleStore.LogstoreName,\n LogType = \"PROVIDER\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := log.NewProject(ctx, \"example\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleStore, err := log.NewStore(ctx, \"example\", \u0026log.StoreArgs{\n\t\t\tProjectName: example.ProjectName,\n\t\t\tLogstoreName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewLogConfig(ctx, \"example\", \u0026apigateway.LogConfigArgs{\n\t\t\tSlsProject: example.ProjectName,\n\t\t\tSlsLogStore: exampleStore.LogstoreName,\n\t\t\tLogType: pulumi.String(\"PROVIDER\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.apigateway.LogConfig;\nimport com.pulumi.alicloud.apigateway.LogConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var example = new Project(\"example\", ProjectArgs.builder()\n .projectName(String.format(\"%s-%s\", name,default_.result()))\n .description(name)\n .build());\n\n var exampleStore = new Store(\"exampleStore\", StoreArgs.builder()\n .projectName(example.projectName())\n .logstoreName(String.format(\"%s-%s\", name,default_.result()))\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var exampleLogConfig = new LogConfig(\"exampleLogConfig\", LogConfigArgs.builder()\n .slsProject(example.projectName())\n .slsLogStore(exampleStore.logstoreName())\n .logType(\"PROVIDER\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n example:\n type: alicloud:log:Project\n properties:\n projectName: ${name}-${default.result}\n description: ${name}\n exampleStore:\n type: alicloud:log:Store\n name: example\n properties:\n projectName: ${example.projectName}\n logstoreName: ${name}-${default.result}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n exampleLogConfig:\n type: alicloud:apigateway:LogConfig\n name: example\n properties:\n slsProject: ${example.projectName}\n slsLogStore: ${exampleStore.logstoreName}\n logType: PROVIDER\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Log Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/logConfig:LogConfig example \u003clog_type\u003e\n```\n\n",
"properties": {
"logType": {
"type": "string",
@@ -105718,7 +107571,7 @@
}
},
"alicloud:apigateway/model:Model": {
- "description": "Provides a Api Gateway Model resource.\n\nFor information about Api Gateway Model and how to use it, see [What is Model](https://www.alibabacloud.com/help/en/api-gateway/latest/api-cloudapi-2016-07-14-createmodel).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.apigateway.Group(\"default\", {\n name: \"example_value\",\n description: \"example_value\",\n});\nconst defaultModel = new alicloud.apigateway.Model(\"default\", {\n groupId: _default.id,\n modelName: \"example_value\",\n schema: \"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n description: \"example_value\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.apigateway.Group(\"default\",\n name=\"example_value\",\n description=\"example_value\")\ndefault_model = alicloud.apigateway.Model(\"default\",\n group_id=default.id,\n model_name=\"example_value\",\n schema=\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n description=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.ApiGateway.Group(\"default\", new()\n {\n Name = \"example_value\",\n Description = \"example_value\",\n });\n\n var defaultModel = new AliCloud.ApiGateway.Model(\"default\", new()\n {\n GroupId = @default.Id,\n ModelName = \"example_value\",\n Schema = \"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n Description = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := apigateway.NewGroup(ctx, \"default\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewModel(ctx, \"default\", \u0026apigateway.ModelArgs{\n\t\t\tGroupId: _default.ID(),\n\t\t\tModelName: pulumi.String(\"example_value\"),\n\t\t\tSchema: pulumi.String(\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Model;\nimport com.pulumi.alicloud.apigateway.ModelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Group(\"default\", GroupArgs.builder()\n .name(\"example_value\")\n .description(\"example_value\")\n .build());\n\n var defaultModel = new Model(\"defaultModel\", ModelArgs.builder()\n .groupId(default_.id())\n .modelName(\"example_value\")\n .schema(\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\")\n .description(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:apigateway:Group\n properties:\n name: example_value\n description: example_value\n defaultModel:\n type: alicloud:apigateway:Model\n name: default\n properties:\n groupId: ${default.id}\n modelName: example_value\n schema: '{\"type\":\"object\",\"properties\":{\"id\":{\"format\":\"int64\",\"maximum\":100,\"exclusiveMaximum\":true,\"type\":\"integer\"},\"name\":{\"maxLength\":10,\"type\":\"string\"}}}'\n description: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Model can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/model:Model example \u003cgroup_id\u003e:\u003cmodel_name\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Model resource.\n\nFor information about Api Gateway Model and how to use it, see [What is Model](https://www.alibabacloud.com/help/en/api-gateway/latest/api-cloudapi-2016-07-14-createmodel).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.apigateway.Group(\"default\", {\n name: \"example_value\",\n description: \"example_value\",\n});\nconst defaultModel = new alicloud.apigateway.Model(\"default\", {\n groupId: _default.id,\n modelName: \"example_value\",\n schema: \"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n description: \"example_value\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.apigateway.Group(\"default\",\n name=\"example_value\",\n description=\"example_value\")\ndefault_model = alicloud.apigateway.Model(\"default\",\n group_id=default.id,\n model_name=\"example_value\",\n schema=\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n description=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.ApiGateway.Group(\"default\", new()\n {\n Name = \"example_value\",\n Description = \"example_value\",\n });\n\n var defaultModel = new AliCloud.ApiGateway.Model(\"default\", new()\n {\n GroupId = @default.Id,\n ModelName = \"example_value\",\n Schema = \"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\",\n Description = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := apigateway.NewGroup(ctx, \"default\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewModel(ctx, \"default\", \u0026apigateway.ModelArgs{\n\t\t\tGroupId: _default.ID(),\n\t\t\tModelName: pulumi.String(\"example_value\"),\n\t\t\tSchema: pulumi.String(\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Model;\nimport com.pulumi.alicloud.apigateway.ModelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Group(\"default\", GroupArgs.builder()\n .name(\"example_value\")\n .description(\"example_value\")\n .build());\n\n var defaultModel = new Model(\"defaultModel\", ModelArgs.builder()\n .groupId(default_.id())\n .modelName(\"example_value\")\n .schema(\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"format\\\":\\\"int64\\\",\\\"maximum\\\":100,\\\"exclusiveMaximum\\\":true,\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"maxLength\\\":10,\\\"type\\\":\\\"string\\\"}}}\")\n .description(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:apigateway:Group\n properties:\n name: example_value\n description: example_value\n defaultModel:\n type: alicloud:apigateway:Model\n name: default\n properties:\n groupId: ${default.id}\n modelName: example_value\n schema: '{\"type\":\"object\",\"properties\":{\"id\":{\"format\":\"int64\",\"maximum\":100,\"exclusiveMaximum\":true,\"type\":\"integer\"},\"name\":{\"maxLength\":10,\"type\":\"string\"}}}'\n description: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Model can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/model:Model example \u003cgroup_id\u003e:\u003cmodel_name\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -105793,7 +107646,7 @@
}
},
"alicloud:apigateway/plugin:Plugin": {
- "description": "Provides a Api Gateway Plugin resource. \n\nFor information about Api Gateway Plugin and how to use it, see [What is Plugin](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createplugin).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.Plugin(\"default\", {\n description: name,\n pluginName: name,\n pluginData: JSON.stringify({\n routes: [\n {\n name: \"Vip\",\n condition: \"$CaAppId = 123456\",\n backend: {\n type: \"HTTP-VPC\",\n vpcAccessName: \"slbAccessForVip\",\n },\n },\n {\n name: \"MockForOldClient\",\n condition: \"$ClientVersion \u003c '2.0.5'\",\n backend: {\n type: \"MOCK\",\n statusCode: 400,\n mockBody: \"This version is not supported!!!\",\n },\n },\n {\n name: \"BlueGreenPercent05\",\n condition: \"1 = 1\",\n backend: {\n type: \"HTTP\",\n address: \"https://beta-version.api.foo.com\",\n },\n \"constant-parameters\": [{\n name: \"x-route-blue-green\",\n location: \"header\",\n value: \"route-blue-green\",\n }],\n },\n ],\n }),\n pluginType: \"routing\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.Plugin(\"default\",\n description=name,\n plugin_name=name,\n plugin_data=json.dumps({\n \"routes\": [\n {\n \"name\": \"Vip\",\n \"condition\": \"$CaAppId = 123456\",\n \"backend\": {\n \"type\": \"HTTP-VPC\",\n \"vpcAccessName\": \"slbAccessForVip\",\n },\n },\n {\n \"name\": \"MockForOldClient\",\n \"condition\": \"$ClientVersion \u003c '2.0.5'\",\n \"backend\": {\n \"type\": \"MOCK\",\n \"statusCode\": 400,\n \"mockBody\": \"This version is not supported!!!\",\n },\n },\n {\n \"name\": \"BlueGreenPercent05\",\n \"condition\": \"1 = 1\",\n \"backend\": {\n \"type\": \"HTTP\",\n \"address\": \"https://beta-version.api.foo.com\",\n },\n \"constant-parameters\": [{\n \"name\": \"x-route-blue-green\",\n \"location\": \"header\",\n \"value\": \"route-blue-green\",\n }],\n },\n ],\n }),\n plugin_type=\"routing\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.Plugin(\"default\", new()\n {\n Description = name,\n PluginName = name,\n PluginData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"routes\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Vip\",\n [\"condition\"] = \"$CaAppId = 123456\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"HTTP-VPC\",\n [\"vpcAccessName\"] = \"slbAccessForVip\",\n },\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"MockForOldClient\",\n [\"condition\"] = \"$ClientVersion \u003c '2.0.5'\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"MOCK\",\n [\"statusCode\"] = 400,\n [\"mockBody\"] = \"This version is not supported!!!\",\n },\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"BlueGreenPercent05\",\n [\"condition\"] = \"1 = 1\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"HTTP\",\n [\"address\"] = \"https://beta-version.api.foo.com\",\n },\n [\"constant-parameters\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"x-route-blue-green\",\n [\"location\"] = \"header\",\n [\"value\"] = \"route-blue-green\",\n },\n },\n },\n },\n }),\n PluginType = \"routing\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"routes\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"Vip\",\n\t\t\t\t\t\"condition\": \"$CaAppId = 123456\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"HTTP-VPC\",\n\t\t\t\t\t\t\"vpcAccessName\": \"slbAccessForVip\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"MockForOldClient\",\n\t\t\t\t\t\"condition\": \"$ClientVersion \u003c '2.0.5'\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"MOCK\",\n\t\t\t\t\t\t\"statusCode\": 400,\n\t\t\t\t\t\t\"mockBody\": \"This version is not supported!!!\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"BlueGreenPercent05\",\n\t\t\t\t\t\"condition\": \"1 = 1\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"HTTP\",\n\t\t\t\t\t\t\"address\": \"https://beta-version.api.foo.com\",\n\t\t\t\t\t},\n\t\t\t\t\t\"constant-parameters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"x-route-blue-green\",\n\t\t\t\t\t\t\t\"location\": \"header\",\n\t\t\t\t\t\t\t\"value\": \"route-blue-green\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = apigateway.NewPlugin(ctx, \"default\", \u0026apigateway.PluginArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPluginName: pulumi.String(name),\n\t\t\tPluginData: pulumi.String(json0),\n\t\t\tPluginType: pulumi.String(\"routing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Plugin;\nimport com.pulumi.alicloud.apigateway.PluginArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Plugin(\"default\", PluginArgs.builder()\n .description(name)\n .pluginName(name)\n .pluginData(serializeJson(\n jsonObject(\n jsonProperty(\"routes\", jsonArray(\n jsonObject(\n jsonProperty(\"name\", \"Vip\"),\n jsonProperty(\"condition\", \"$CaAppId = 123456\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"HTTP-VPC\"),\n jsonProperty(\"vpcAccessName\", \"slbAccessForVip\")\n ))\n ), \n jsonObject(\n jsonProperty(\"name\", \"MockForOldClient\"),\n jsonProperty(\"condition\", \"$ClientVersion \u003c '2.0.5'\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"MOCK\"),\n jsonProperty(\"statusCode\", 400),\n jsonProperty(\"mockBody\", \"This version is not supported!!!\")\n ))\n ), \n jsonObject(\n jsonProperty(\"name\", \"BlueGreenPercent05\"),\n jsonProperty(\"condition\", \"1 = 1\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"HTTP\"),\n jsonProperty(\"address\", \"https://beta-version.api.foo.com\")\n )),\n jsonProperty(\"constant-parameters\", jsonArray(jsonObject(\n jsonProperty(\"name\", \"x-route-blue-green\"),\n jsonProperty(\"location\", \"header\"),\n jsonProperty(\"value\", \"route-blue-green\")\n )))\n )\n ))\n )))\n .pluginType(\"routing\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:Plugin\n properties:\n description: ${name}\n pluginName: ${name}\n pluginData:\n fn::toJSON:\n routes:\n - name: Vip\n condition: $CaAppId = 123456\n backend:\n type: HTTP-VPC\n vpcAccessName: slbAccessForVip\n - name: MockForOldClient\n condition: $ClientVersion \u003c '2.0.5'\n backend:\n type: MOCK\n statusCode: 400\n mockBody: This version is not supported!!!\n - name: BlueGreenPercent05\n condition: 1 = 1\n backend:\n type: HTTP\n address: https://beta-version.api.foo.com\n constant-parameters:\n - name: x-route-blue-green\n location: header\n value: route-blue-green\n pluginType: routing\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi Gateway Plugin can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/plugin:Plugin example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Api Gateway Plugin resource. \n\nFor information about Api Gateway Plugin and how to use it, see [What is Plugin](https://www.alibabacloud.com/help/en/api-gateway/developer-reference/api-cloudapi-2016-07-14-createplugin).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new alicloud.apigateway.Plugin(\"default\", {\n description: name,\n pluginName: name,\n pluginData: JSON.stringify({\n routes: [\n {\n name: \"Vip\",\n condition: \"$CaAppId = 123456\",\n backend: {\n type: \"HTTP-VPC\",\n vpcAccessName: \"slbAccessForVip\",\n },\n },\n {\n name: \"MockForOldClient\",\n condition: \"$ClientVersion \u003c '2.0.5'\",\n backend: {\n type: \"MOCK\",\n statusCode: 400,\n mockBody: \"This version is not supported!!!\",\n },\n },\n {\n name: \"BlueGreenPercent05\",\n condition: \"1 = 1\",\n backend: {\n type: \"HTTP\",\n address: \"https://beta-version.api.foo.com\",\n },\n \"constant-parameters\": [{\n name: \"x-route-blue-green\",\n location: \"header\",\n value: \"route-blue-green\",\n }],\n },\n ],\n }),\n pluginType: \"routing\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.apigateway.Plugin(\"default\",\n description=name,\n plugin_name=name,\n plugin_data=json.dumps({\n \"routes\": [\n {\n \"name\": \"Vip\",\n \"condition\": \"$CaAppId = 123456\",\n \"backend\": {\n \"type\": \"HTTP-VPC\",\n \"vpcAccessName\": \"slbAccessForVip\",\n },\n },\n {\n \"name\": \"MockForOldClient\",\n \"condition\": \"$ClientVersion \u003c '2.0.5'\",\n \"backend\": {\n \"type\": \"MOCK\",\n \"statusCode\": 400,\n \"mockBody\": \"This version is not supported!!!\",\n },\n },\n {\n \"name\": \"BlueGreenPercent05\",\n \"condition\": \"1 = 1\",\n \"backend\": {\n \"type\": \"HTTP\",\n \"address\": \"https://beta-version.api.foo.com\",\n },\n \"constant-parameters\": [{\n \"name\": \"x-route-blue-green\",\n \"location\": \"header\",\n \"value\": \"route-blue-green\",\n }],\n },\n ],\n }),\n plugin_type=\"routing\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new AliCloud.ApiGateway.Plugin(\"default\", new()\n {\n Description = name,\n PluginName = name,\n PluginData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"routes\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Vip\",\n [\"condition\"] = \"$CaAppId = 123456\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"HTTP-VPC\",\n [\"vpcAccessName\"] = \"slbAccessForVip\",\n },\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"MockForOldClient\",\n [\"condition\"] = \"$ClientVersion \u003c '2.0.5'\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"MOCK\",\n [\"statusCode\"] = 400,\n [\"mockBody\"] = \"This version is not supported!!!\",\n },\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"BlueGreenPercent05\",\n [\"condition\"] = \"1 = 1\",\n [\"backend\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"type\"] = \"HTTP\",\n [\"address\"] = \"https://beta-version.api.foo.com\",\n },\n [\"constant-parameters\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"x-route-blue-green\",\n [\"location\"] = \"header\",\n [\"value\"] = \"route-blue-green\",\n },\n },\n },\n },\n }),\n PluginType = \"routing\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"routes\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"Vip\",\n\t\t\t\t\t\"condition\": \"$CaAppId = 123456\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"HTTP-VPC\",\n\t\t\t\t\t\t\"vpcAccessName\": \"slbAccessForVip\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"MockForOldClient\",\n\t\t\t\t\t\"condition\": \"$ClientVersion \u003c '2.0.5'\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"MOCK\",\n\t\t\t\t\t\t\"statusCode\": 400,\n\t\t\t\t\t\t\"mockBody\": \"This version is not supported!!!\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"BlueGreenPercent05\",\n\t\t\t\t\t\"condition\": \"1 = 1\",\n\t\t\t\t\t\"backend\": map[string]interface{}{\n\t\t\t\t\t\t\"type\": \"HTTP\",\n\t\t\t\t\t\t\"address\": \"https://beta-version.api.foo.com\",\n\t\t\t\t\t},\n\t\t\t\t\t\"constant-parameters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"x-route-blue-green\",\n\t\t\t\t\t\t\t\"location\": \"header\",\n\t\t\t\t\t\t\t\"value\": \"route-blue-green\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = apigateway.NewPlugin(ctx, \"default\", \u0026apigateway.PluginArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPluginName: pulumi.String(name),\n\t\t\tPluginData: pulumi.String(json0),\n\t\t\tPluginType: pulumi.String(\"routing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Plugin;\nimport com.pulumi.alicloud.apigateway.PluginArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Plugin(\"default\", PluginArgs.builder()\n .description(name)\n .pluginName(name)\n .pluginData(serializeJson(\n jsonObject(\n jsonProperty(\"routes\", jsonArray(\n jsonObject(\n jsonProperty(\"name\", \"Vip\"),\n jsonProperty(\"condition\", \"$CaAppId = 123456\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"HTTP-VPC\"),\n jsonProperty(\"vpcAccessName\", \"slbAccessForVip\")\n ))\n ), \n jsonObject(\n jsonProperty(\"name\", \"MockForOldClient\"),\n jsonProperty(\"condition\", \"$ClientVersion \u003c '2.0.5'\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"MOCK\"),\n jsonProperty(\"statusCode\", 400),\n jsonProperty(\"mockBody\", \"This version is not supported!!!\")\n ))\n ), \n jsonObject(\n jsonProperty(\"name\", \"BlueGreenPercent05\"),\n jsonProperty(\"condition\", \"1 = 1\"),\n jsonProperty(\"backend\", jsonObject(\n jsonProperty(\"type\", \"HTTP\"),\n jsonProperty(\"address\", \"https://beta-version.api.foo.com\")\n )),\n jsonProperty(\"constant-parameters\", jsonArray(jsonObject(\n jsonProperty(\"name\", \"x-route-blue-green\"),\n jsonProperty(\"location\", \"header\"),\n jsonProperty(\"value\", \"route-blue-green\")\n )))\n )\n ))\n )))\n .pluginType(\"routing\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: alicloud:apigateway:Plugin\n properties:\n description: ${name}\n pluginName: ${name}\n pluginData:\n fn::toJSON:\n routes:\n - name: Vip\n condition: $CaAppId = 123456\n backend:\n type: HTTP-VPC\n vpcAccessName: slbAccessForVip\n - name: MockForOldClient\n condition: $ClientVersion \u003c '2.0.5'\n backend:\n type: MOCK\n statusCode: 400\n mockBody: This version is not supported!!!\n - name: BlueGreenPercent05\n condition: 1 = 1\n backend:\n type: HTTP\n address: https://beta-version.api.foo.com\n constant-parameters:\n - name: x-route-blue-green\n location: header\n value: route-blue-green\n pluginType: routing\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi Gateway Plugin can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/plugin:Plugin example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -105896,7 +107749,7 @@
}
},
"alicloud:apigateway/pluginAttachment:PluginAttachment": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: name,\n description: name,\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: name,\n description: name,\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\nconst examplePlugin = new alicloud.apigateway.Plugin(\"example\", {\n description: \"tf_example\",\n pluginName: \"tf_example\",\n pluginData: JSON.stringify({\n allowOrigins: \"api.foo.com\",\n allowMethods: \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n allowHeaders: \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n exposeHeaders: \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n maxAge: 172800,\n allowCredentials: true,\n }),\n pluginType: \"cors\",\n});\nconst examplePluginAttachment = new alicloud.apigateway.PluginAttachment(\"example\", {\n apiId: exampleApi.apiId,\n groupId: example.id,\n pluginId: examplePlugin.id,\n stageName: \"RELEASE\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.apigateway.Group(\"example\",\n name=name,\n description=name)\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=name,\n description=name,\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\nexample_plugin = alicloud.apigateway.Plugin(\"example\",\n description=\"tf_example\",\n plugin_name=\"tf_example\",\n plugin_data=json.dumps({\n \"allowOrigins\": \"api.foo.com\",\n \"allowMethods\": \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n \"allowHeaders\": \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n \"exposeHeaders\": \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n \"maxAge\": 172800,\n \"allowCredentials\": True,\n }),\n plugin_type=\"cors\")\nexample_plugin_attachment = alicloud.apigateway.PluginAttachment(\"example\",\n api_id=example_api.api_id,\n group_id=example.id,\n plugin_id=example_plugin.id,\n stage_name=\"RELEASE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = name,\n Description = name,\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n var examplePlugin = new AliCloud.ApiGateway.Plugin(\"example\", new()\n {\n Description = \"tf_example\",\n PluginName = \"tf_example\",\n PluginData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"allowOrigins\"] = \"api.foo.com\",\n [\"allowMethods\"] = \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n [\"allowHeaders\"] = \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n [\"exposeHeaders\"] = \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n [\"maxAge\"] = 172800,\n [\"allowCredentials\"] = true,\n }),\n PluginType = \"cors\",\n });\n\n var examplePluginAttachment = new AliCloud.ApiGateway.PluginAttachment(\"example\", new()\n {\n ApiId = exampleApi.ApiId,\n GroupId = example.Id,\n PluginId = examplePlugin.Id,\n StageName = \"RELEASE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApi, err := apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"allowOrigins\": \"api.foo.com\",\n\t\t\t\"allowMethods\": \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n\t\t\t\"allowHeaders\": \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n\t\t\t\"exposeHeaders\": \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n\t\t\t\"maxAge\": 172800,\n\t\t\t\"allowCredentials\": true,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\texamplePlugin, err := apigateway.NewPlugin(ctx, \"example\", \u0026apigateway.PluginArgs{\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPluginName: pulumi.String(\"tf_example\"),\n\t\t\tPluginData: pulumi.String(json0),\n\t\t\tPluginType: pulumi.String(\"cors\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewPluginAttachment(ctx, \"example\", \u0026apigateway.PluginAttachmentArgs{\n\t\t\tApiId: exampleApi.ApiId,\n\t\t\tGroupId: example.ID(),\n\t\t\tPluginId: examplePlugin.ID(),\n\t\t\tStageName: pulumi.String(\"RELEASE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport com.pulumi.alicloud.apigateway.Plugin;\nimport com.pulumi.alicloud.apigateway.PluginArgs;\nimport com.pulumi.alicloud.apigateway.PluginAttachment;\nimport com.pulumi.alicloud.apigateway.PluginAttachmentArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Group(\"example\", GroupArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(name)\n .description(name)\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n var examplePlugin = new Plugin(\"examplePlugin\", PluginArgs.builder()\n .description(\"tf_example\")\n .pluginName(\"tf_example\")\n .pluginData(serializeJson(\n jsonObject(\n jsonProperty(\"allowOrigins\", \"api.foo.com\"),\n jsonProperty(\"allowMethods\", \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\"),\n jsonProperty(\"allowHeaders\", \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\"),\n jsonProperty(\"exposeHeaders\", \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\"),\n jsonProperty(\"maxAge\", 172800),\n jsonProperty(\"allowCredentials\", true)\n )))\n .pluginType(\"cors\")\n .build());\n\n var examplePluginAttachment = new PluginAttachment(\"examplePluginAttachment\", PluginAttachmentArgs.builder()\n .apiId(exampleApi.apiId())\n .groupId(example.id())\n .pluginId(examplePlugin.id())\n .stageName(\"RELEASE\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: ${name}\n description: ${name}\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: ${name}\n description: ${name}\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n examplePlugin:\n type: alicloud:apigateway:Plugin\n name: example\n properties:\n description: tf_example\n pluginName: tf_example\n pluginData:\n fn::toJSON:\n allowOrigins: api.foo.com\n allowMethods: GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\n allowHeaders: Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\n exposeHeaders: Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\n maxAge: 172800\n allowCredentials: true\n pluginType: cors\n examplePluginAttachment:\n type: alicloud:apigateway:PluginAttachment\n name: example\n properties:\n apiId: ${exampleApi.apiId}\n groupId: ${example.id}\n pluginId: ${examplePlugin.id}\n stageName: RELEASE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.apigateway.Group(\"example\", {\n name: name,\n description: name,\n});\nconst exampleApi = new alicloud.apigateway.Api(\"example\", {\n groupId: example.id,\n name: name,\n description: name,\n authType: \"APP\",\n forceNonceCheck: false,\n requestConfig: {\n protocol: \"HTTP\",\n method: \"GET\",\n path: \"/example/path\",\n mode: \"MAPPING\",\n },\n serviceType: \"HTTP\",\n httpServiceConfig: {\n address: \"http://apigateway-backend.alicloudapi.com:8080\",\n method: \"GET\",\n path: \"/web/cloudapi\",\n timeout: 12,\n aoneName: \"cloudapi-openapi\",\n },\n requestParameters: [{\n name: \"example\",\n type: \"STRING\",\n required: \"OPTIONAL\",\n \"in\": \"QUERY\",\n inService: \"QUERY\",\n nameService: \"exampleservice\",\n }],\n stageNames: [\n \"RELEASE\",\n \"TEST\",\n ],\n});\nconst examplePlugin = new alicloud.apigateway.Plugin(\"example\", {\n description: \"tf_example\",\n pluginName: \"tf_example\",\n pluginData: JSON.stringify({\n allowOrigins: \"api.foo.com\",\n allowMethods: \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n allowHeaders: \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n exposeHeaders: \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n maxAge: 172800,\n allowCredentials: true,\n }),\n pluginType: \"cors\",\n});\nconst examplePluginAttachment = new alicloud.apigateway.PluginAttachment(\"example\", {\n apiId: exampleApi.apiId,\n groupId: example.id,\n pluginId: examplePlugin.id,\n stageName: \"RELEASE\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.apigateway.Group(\"example\",\n name=name,\n description=name)\nexample_api = alicloud.apigateway.Api(\"example\",\n group_id=example.id,\n name=name,\n description=name,\n auth_type=\"APP\",\n force_nonce_check=False,\n request_config={\n \"protocol\": \"HTTP\",\n \"method\": \"GET\",\n \"path\": \"/example/path\",\n \"mode\": \"MAPPING\",\n },\n service_type=\"HTTP\",\n http_service_config={\n \"address\": \"http://apigateway-backend.alicloudapi.com:8080\",\n \"method\": \"GET\",\n \"path\": \"/web/cloudapi\",\n \"timeout\": 12,\n \"aone_name\": \"cloudapi-openapi\",\n },\n request_parameters=[{\n \"name\": \"example\",\n \"type\": \"STRING\",\n \"required\": \"OPTIONAL\",\n \"in_\": \"QUERY\",\n \"in_service\": \"QUERY\",\n \"name_service\": \"exampleservice\",\n }],\n stage_names=[\n \"RELEASE\",\n \"TEST\",\n ])\nexample_plugin = alicloud.apigateway.Plugin(\"example\",\n description=\"tf_example\",\n plugin_name=\"tf_example\",\n plugin_data=json.dumps({\n \"allowOrigins\": \"api.foo.com\",\n \"allowMethods\": \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n \"allowHeaders\": \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n \"exposeHeaders\": \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n \"maxAge\": 172800,\n \"allowCredentials\": True,\n }),\n plugin_type=\"cors\")\nexample_plugin_attachment = alicloud.apigateway.PluginAttachment(\"example\",\n api_id=example_api.api_id,\n group_id=example.id,\n plugin_id=example_plugin.id,\n stage_name=\"RELEASE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.ApiGateway.Group(\"example\", new()\n {\n Name = name,\n Description = name,\n });\n\n var exampleApi = new AliCloud.ApiGateway.Api(\"example\", new()\n {\n GroupId = example.Id,\n Name = name,\n Description = name,\n AuthType = \"APP\",\n ForceNonceCheck = false,\n RequestConfig = new AliCloud.ApiGateway.Inputs.ApiRequestConfigArgs\n {\n Protocol = \"HTTP\",\n Method = \"GET\",\n Path = \"/example/path\",\n Mode = \"MAPPING\",\n },\n ServiceType = \"HTTP\",\n HttpServiceConfig = new AliCloud.ApiGateway.Inputs.ApiHttpServiceConfigArgs\n {\n Address = \"http://apigateway-backend.alicloudapi.com:8080\",\n Method = \"GET\",\n Path = \"/web/cloudapi\",\n Timeout = 12,\n AoneName = \"cloudapi-openapi\",\n },\n RequestParameters = new[]\n {\n new AliCloud.ApiGateway.Inputs.ApiRequestParameterArgs\n {\n Name = \"example\",\n Type = \"STRING\",\n Required = \"OPTIONAL\",\n In = \"QUERY\",\n InService = \"QUERY\",\n NameService = \"exampleservice\",\n },\n },\n StageNames = new[]\n {\n \"RELEASE\",\n \"TEST\",\n },\n });\n\n var examplePlugin = new AliCloud.ApiGateway.Plugin(\"example\", new()\n {\n Description = \"tf_example\",\n PluginName = \"tf_example\",\n PluginData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"allowOrigins\"] = \"api.foo.com\",\n [\"allowMethods\"] = \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n [\"allowHeaders\"] = \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n [\"exposeHeaders\"] = \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n [\"maxAge\"] = 172800,\n [\"allowCredentials\"] = true,\n }),\n PluginType = \"cors\",\n });\n\n var examplePluginAttachment = new AliCloud.ApiGateway.PluginAttachment(\"example\", new()\n {\n ApiId = exampleApi.ApiId,\n GroupId = example.Id,\n PluginId = examplePlugin.Id,\n StageName = \"RELEASE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := apigateway.NewGroup(ctx, \"example\", \u0026apigateway.GroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleApi, err := apigateway.NewApi(ctx, \"example\", \u0026apigateway.ApiArgs{\n\t\t\tGroupId: example.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAuthType: pulumi.String(\"APP\"),\n\t\t\tForceNonceCheck: pulumi.Bool(false),\n\t\t\tRequestConfig: \u0026apigateway.ApiRequestConfigArgs{\n\t\t\t\tProtocol: pulumi.String(\"HTTP\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/example/path\"),\n\t\t\t\tMode: pulumi.String(\"MAPPING\"),\n\t\t\t},\n\t\t\tServiceType: pulumi.String(\"HTTP\"),\n\t\t\tHttpServiceConfig: \u0026apigateway.ApiHttpServiceConfigArgs{\n\t\t\t\tAddress: pulumi.String(\"http://apigateway-backend.alicloudapi.com:8080\"),\n\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\tPath: pulumi.String(\"/web/cloudapi\"),\n\t\t\t\tTimeout: pulumi.Int(12),\n\t\t\t\tAoneName: pulumi.String(\"cloudapi-openapi\"),\n\t\t\t},\n\t\t\tRequestParameters: apigateway.ApiRequestParameterArray{\n\t\t\t\t\u0026apigateway.ApiRequestParameterArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tType: pulumi.String(\"STRING\"),\n\t\t\t\t\tRequired: pulumi.String(\"OPTIONAL\"),\n\t\t\t\t\tIn: pulumi.String(\"QUERY\"),\n\t\t\t\t\tInService: pulumi.String(\"QUERY\"),\n\t\t\t\t\tNameService: pulumi.String(\"exampleservice\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStageNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RELEASE\"),\n\t\t\t\tpulumi.String(\"TEST\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"allowOrigins\": \"api.foo.com\",\n\t\t\t\"allowMethods\": \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\",\n\t\t\t\"allowHeaders\": \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\",\n\t\t\t\"exposeHeaders\": \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\",\n\t\t\t\"maxAge\": 172800,\n\t\t\t\"allowCredentials\": true,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\texamplePlugin, err := apigateway.NewPlugin(ctx, \"example\", \u0026apigateway.PluginArgs{\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPluginName: pulumi.String(\"tf_example\"),\n\t\t\tPluginData: pulumi.String(json0),\n\t\t\tPluginType: pulumi.String(\"cors\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewPluginAttachment(ctx, \"example\", \u0026apigateway.PluginAttachmentArgs{\n\t\t\tApiId: exampleApi.ApiId,\n\t\t\tGroupId: example.ID(),\n\t\t\tPluginId: examplePlugin.ID(),\n\t\t\tStageName: pulumi.String(\"RELEASE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.apigateway.Group;\nimport com.pulumi.alicloud.apigateway.GroupArgs;\nimport com.pulumi.alicloud.apigateway.Api;\nimport com.pulumi.alicloud.apigateway.ApiArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiHttpServiceConfigArgs;\nimport com.pulumi.alicloud.apigateway.inputs.ApiRequestParameterArgs;\nimport com.pulumi.alicloud.apigateway.Plugin;\nimport com.pulumi.alicloud.apigateway.PluginArgs;\nimport com.pulumi.alicloud.apigateway.PluginAttachment;\nimport com.pulumi.alicloud.apigateway.PluginAttachmentArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Group(\"example\", GroupArgs.builder()\n .name(name)\n .description(name)\n .build());\n\n var exampleApi = new Api(\"exampleApi\", ApiArgs.builder()\n .groupId(example.id())\n .name(name)\n .description(name)\n .authType(\"APP\")\n .forceNonceCheck(false)\n .requestConfig(ApiRequestConfigArgs.builder()\n .protocol(\"HTTP\")\n .method(\"GET\")\n .path(\"/example/path\")\n .mode(\"MAPPING\")\n .build())\n .serviceType(\"HTTP\")\n .httpServiceConfig(ApiHttpServiceConfigArgs.builder()\n .address(\"http://apigateway-backend.alicloudapi.com:8080\")\n .method(\"GET\")\n .path(\"/web/cloudapi\")\n .timeout(12)\n .aoneName(\"cloudapi-openapi\")\n .build())\n .requestParameters(ApiRequestParameterArgs.builder()\n .name(\"example\")\n .type(\"STRING\")\n .required(\"OPTIONAL\")\n .in(\"QUERY\")\n .inService(\"QUERY\")\n .nameService(\"exampleservice\")\n .build())\n .stageNames( \n \"RELEASE\",\n \"TEST\")\n .build());\n\n var examplePlugin = new Plugin(\"examplePlugin\", PluginArgs.builder()\n .description(\"tf_example\")\n .pluginName(\"tf_example\")\n .pluginData(serializeJson(\n jsonObject(\n jsonProperty(\"allowOrigins\", \"api.foo.com\"),\n jsonProperty(\"allowMethods\", \"GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\"),\n jsonProperty(\"allowHeaders\", \"Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\"),\n jsonProperty(\"exposeHeaders\", \"Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\"),\n jsonProperty(\"maxAge\", 172800),\n jsonProperty(\"allowCredentials\", true)\n )))\n .pluginType(\"cors\")\n .build());\n\n var examplePluginAttachment = new PluginAttachment(\"examplePluginAttachment\", PluginAttachmentArgs.builder()\n .apiId(exampleApi.apiId())\n .groupId(example.id())\n .pluginId(examplePlugin.id())\n .stageName(\"RELEASE\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:apigateway:Group\n properties:\n name: ${name}\n description: ${name}\n exampleApi:\n type: alicloud:apigateway:Api\n name: example\n properties:\n groupId: ${example.id}\n name: ${name}\n description: ${name}\n authType: APP\n forceNonceCheck: false\n requestConfig:\n protocol: HTTP\n method: GET\n path: /example/path\n mode: MAPPING\n serviceType: HTTP\n httpServiceConfig:\n address: http://apigateway-backend.alicloudapi.com:8080\n method: GET\n path: /web/cloudapi\n timeout: 12\n aoneName: cloudapi-openapi\n requestParameters:\n - name: example\n type: STRING\n required: OPTIONAL\n in: QUERY\n inService: QUERY\n nameService: exampleservice\n stageNames:\n - RELEASE\n - TEST\n examplePlugin:\n type: alicloud:apigateway:Plugin\n name: example\n properties:\n description: tf_example\n pluginName: tf_example\n pluginData:\n fn::toJSON:\n allowOrigins: api.foo.com\n allowMethods: GET,POST,PUT,DELETE,HEAD,OPTIONS,PATCH\n allowHeaders: Authorization,Accept,Accept-Ranges,Cache-Control,Range,Date,Content-Type,Content-Length,Content-MD5,User-Agent,X-Ca-Signature,X-Ca-Signature-Headers,X-Ca-Signature-Method,X-Ca-Key,X-Ca-Timestamp,X-Ca-Nonce,X-Ca-Stage,X-Ca-Request-Mode,x-ca-deviceid\n exposeHeaders: Content-MD5,Server,Date,Latency,X-Ca-Request-Id,X-Ca-Error-Code,X-Ca-Error-Message\n maxAge: 172800\n allowCredentials: true\n pluginType: cors\n examplePluginAttachment:\n type: alicloud:apigateway:PluginAttachment\n name: example\n properties:\n apiId: ${exampleApi.apiId}\n groupId: ${example.id}\n pluginId: ${examplePlugin.id}\n stageName: RELEASE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"apiId": {
"type": "string",
@@ -105977,7 +107830,7 @@
}
},
"alicloud:apigateway/vpcAccess:VpcAccess": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"10.4.0.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n description: \"New security group\",\n vpcId: exampleNetwork.id,\n});\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n});\nconst exampleVpcAccess = new alicloud.apigateway.VpcAccess(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n instanceId: exampleInstance.id,\n port: 8080,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n description=\"New security group\",\n vpc_id=example_network.id)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=\"terraform-example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id)\nexample_vpc_access = alicloud.apigateway.VpcAccess(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id,\n instance_id=example_instance.id,\n port=8080)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"10.4.0.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n Description = \"New security group\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = \"terraform-example\",\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleVpcAccess = new AliCloud.ApiGateway.VpcAccess(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n InstanceId = exampleInstance.Id,\n Port = 8080,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewVpcAccess(ctx, \"example\", \u0026apigateway.VpcAccessArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tPort: pulumi.Int(8080),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.VpcAccess;\nimport com.pulumi.alicloud.apigateway.VpcAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .description(\"New security group\")\n .vpcId(exampleNetwork.id())\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(\"terraform-example\")\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleVpcAccess = new VpcAccess(\"exampleVpcAccess\", VpcAccessArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .instanceId(exampleInstance.id())\n .port(8080)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 10.4.0.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n description: New security group\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: terraform-example\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n exampleVpcAccess:\n type: alicloud:apigateway:VpcAccess\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n instanceId: ${exampleInstance.id}\n port: 8080\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApi gateway app can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/vpcAccess:VpcAccess example \"APiGatewayVpc:vpc-aswcj19ajsz:i-ajdjfsdlf:8080\"\n```\n\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"10.4.0.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n description: \"New security group\",\n vpcId: exampleNetwork.id,\n});\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n});\nconst exampleVpcAccess = new alicloud.apigateway.VpcAccess(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n instanceId: exampleInstance.id,\n port: 8080,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n description=\"New security group\",\n vpc_id=example_network.id)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=\"terraform-example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id)\nexample_vpc_access = alicloud.apigateway.VpcAccess(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id,\n instance_id=example_instance.id,\n port=8080)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"10.4.0.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n Description = \"New security group\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = \"terraform-example\",\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleVpcAccess = new AliCloud.ApiGateway.VpcAccess(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n InstanceId = exampleInstance.Id,\n Port = 8080,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/apigateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apigateway.NewVpcAccess(ctx, \"example\", \u0026apigateway.VpcAccessArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tPort: pulumi.Int(8080),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.apigateway.VpcAccess;\nimport com.pulumi.alicloud.apigateway.VpcAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .description(\"New security group\")\n .vpcId(exampleNetwork.id())\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(\"terraform-example\")\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleVpcAccess = new VpcAccess(\"exampleVpcAccess\", VpcAccessArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .instanceId(exampleInstance.id())\n .port(8080)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 10.4.0.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n description: New security group\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: terraform-example\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n exampleVpcAccess:\n type: alicloud:apigateway:VpcAccess\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n instanceId: ${exampleInstance.id}\n port: 8080\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApi gateway app can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:apigateway/vpcAccess:VpcAccess example \"APiGatewayVpc:vpc-aswcj19ajsz:i-ajdjfsdlf:8080\"\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -106057,7 +107910,7 @@
}
},
"alicloud:arms/addonRelease:AddonRelease": {
- "description": "Provides a ARMS Addon Release resource. Release package of observability addon.\n\nFor information about ARMS Addon Release and how to use it, see [What is Addon Release](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-installaddon).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultAddonRelease = new alicloud.arms.AddonRelease(\"default\", {\n aliyunLang: \"zh\",\n addonName: \"mysql\",\n environmentId: defaultEnvironment.id,\n addonVersion: \"0.0.1\",\n values: JSON.stringify({\n host: \"mysql-service.default\",\n password: \"roots\",\n port: 3306,\n username: \"root\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_addon_release = alicloud.arms.AddonRelease(\"default\",\n aliyun_lang=\"zh\",\n addon_name=\"mysql\",\n environment_id=default_environment.id,\n addon_version=\"0.0.1\",\n values=json.dumps({\n \"host\": \"mysql-service.default\",\n \"password\": \"roots\",\n \"port\": 3306,\n \"username\": \"root\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultAddonRelease = new AliCloud.Arms.AddonRelease(\"default\", new()\n {\n AliyunLang = \"zh\",\n AddonName = \"mysql\",\n EnvironmentId = defaultEnvironment.Id,\n AddonVersion = \"0.0.1\",\n Values = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"mysql-service.default\",\n [\"password\"] = \"roots\",\n [\"port\"] = 3306,\n [\"username\"] = \"root\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ntmpJSON0, err := json.Marshal(map[string]interface{}{\n\"host\": \"mysql-service.default\",\n\"password\": \"roots\",\n\"port\": 3306,\n\"username\": \"root\",\n})\nif err != nil {\nreturn err\n}\njson0 := string(tmpJSON0)\n_, err = arms.NewAddonRelease(ctx, \"default\", \u0026arms.AddonReleaseArgs{\nAliyunLang: pulumi.String(\"zh\"),\nAddonName: pulumi.String(\"mysql\"),\nEnvironmentId: defaultEnvironment.ID(),\nAddonVersion: pulumi.String(\"0.0.1\"),\nValues: pulumi.String(json0),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.AddonRelease;\nimport com.pulumi.alicloud.arms.AddonReleaseArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultAddonRelease = new AddonRelease(\"defaultAddonRelease\", AddonReleaseArgs.builder()\n .aliyunLang(\"zh\")\n .addonName(\"mysql\")\n .environmentId(defaultEnvironment.id())\n .addonVersion(\"0.0.1\")\n .values(serializeJson(\n jsonObject(\n jsonProperty(\"host\", \"mysql-service.default\"),\n jsonProperty(\"password\", \"roots\"),\n jsonProperty(\"port\", 3306),\n jsonProperty(\"username\", \"root\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultAddonRelease:\n type: alicloud:arms:AddonRelease\n name: default\n properties:\n aliyunLang: zh\n addonName: mysql\n environmentId: ${defaultEnvironment.id}\n addonVersion: 0.0.1\n values:\n fn::toJSON:\n host: mysql-service.default\n password: roots\n port: 3306\n username: root\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Addon Release can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/addonRelease:AddonRelease example \u003cenvironment_id\u003e:\u003caddon_release_name\u003e\n```\n\n",
+ "description": "Provides a ARMS Addon Release resource. Release package of observability addon.\n\nFor information about ARMS Addon Release and how to use it, see [What is Addon Release](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-installaddon).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultAddonRelease = new alicloud.arms.AddonRelease(\"default\", {\n aliyunLang: \"zh\",\n addonName: \"mysql\",\n environmentId: defaultEnvironment.id,\n addonVersion: \"0.0.1\",\n values: JSON.stringify({\n host: \"mysql-service.default\",\n password: \"roots\",\n port: 3306,\n username: \"root\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_addon_release = alicloud.arms.AddonRelease(\"default\",\n aliyun_lang=\"zh\",\n addon_name=\"mysql\",\n environment_id=default_environment.id,\n addon_version=\"0.0.1\",\n values=json.dumps({\n \"host\": \"mysql-service.default\",\n \"password\": \"roots\",\n \"port\": 3306,\n \"username\": \"root\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultAddonRelease = new AliCloud.Arms.AddonRelease(\"default\", new()\n {\n AliyunLang = \"zh\",\n AddonName = \"mysql\",\n EnvironmentId = defaultEnvironment.Id,\n AddonVersion = \"0.0.1\",\n Values = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"mysql-service.default\",\n [\"password\"] = \"roots\",\n [\"port\"] = 3306,\n [\"username\"] = \"root\",\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ntmpJSON0, err := json.Marshal(map[string]interface{}{\n\"host\": \"mysql-service.default\",\n\"password\": \"roots\",\n\"port\": 3306,\n\"username\": \"root\",\n})\nif err != nil {\nreturn err\n}\njson0 := string(tmpJSON0)\n_, err = arms.NewAddonRelease(ctx, \"default\", \u0026arms.AddonReleaseArgs{\nAliyunLang: pulumi.String(\"zh\"),\nAddonName: pulumi.String(\"mysql\"),\nEnvironmentId: defaultEnvironment.ID(),\nAddonVersion: pulumi.String(\"0.0.1\"),\nValues: pulumi.String(json0),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.AddonRelease;\nimport com.pulumi.alicloud.arms.AddonReleaseArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultAddonRelease = new AddonRelease(\"defaultAddonRelease\", AddonReleaseArgs.builder()\n .aliyunLang(\"zh\")\n .addonName(\"mysql\")\n .environmentId(defaultEnvironment.id())\n .addonVersion(\"0.0.1\")\n .values(serializeJson(\n jsonObject(\n jsonProperty(\"host\", \"mysql-service.default\"),\n jsonProperty(\"password\", \"roots\"),\n jsonProperty(\"port\", 3306),\n jsonProperty(\"username\", \"root\")\n )))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultAddonRelease:\n type: alicloud:arms:AddonRelease\n name: default\n properties:\n aliyunLang: zh\n addonName: mysql\n environmentId: ${defaultEnvironment.id}\n addonVersion: 0.0.1\n values:\n fn::toJSON:\n host: mysql-service.default\n password: roots\n port: 3306\n username: root\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Addon Release can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/addonRelease:AddonRelease example \u003cenvironment_id\u003e:\u003caddon_release_name\u003e\n```\n\n",
"properties": {
"addonName": {
"type": "string",
@@ -106171,7 +108024,7 @@
}
},
"alicloud:arms/alertContact:AlertContact": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Contact resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Contact and how to use it, see [What is Alert Contact](https://next.api.aliyun.com/api/ARMS/2019-08-08/CreateAlertContact).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.arms.AlertContact(\"example\", {\n alertContactName: \"example_value\",\n dingRobotWebhookUrl: \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email: \"someone@example.com\",\n phoneNum: \"1381111****\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.arms.AlertContact(\"example\",\n alert_contact_name=\"example_value\",\n ding_robot_webhook_url=\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email=\"someone@example.com\",\n phone_num=\"1381111****\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Arms.AlertContact(\"example\", new()\n {\n AlertContactName = \"example_value\",\n DingRobotWebhookUrl = \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n Email = \"someone@example.com\",\n PhoneNum = \"1381111****\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := arms.NewAlertContact(ctx, \"example\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tDingRobotWebhookUrl: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\"),\n\t\t\tEmail: pulumi.String(\"someone@example.com\"),\n\t\t\tPhoneNum: pulumi.String(\"1381111****\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlertContact(\"example\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .dingRobotWebhookUrl(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\")\n .email(\"someone@example.com\")\n .phoneNum(\"1381111****\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n dingRobotWebhookUrl: https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\n email: someone@example.com\n phoneNum: 1381111****\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertContact:AlertContact example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Contact resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Contact and how to use it, see [What is Alert Contact](https://next.api.aliyun.com/api/ARMS/2019-08-08/CreateAlertContact).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.arms.AlertContact(\"example\", {\n alertContactName: \"example_value\",\n dingRobotWebhookUrl: \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email: \"someone@example.com\",\n phoneNum: \"1381111****\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.arms.AlertContact(\"example\",\n alert_contact_name=\"example_value\",\n ding_robot_webhook_url=\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email=\"someone@example.com\",\n phone_num=\"1381111****\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Arms.AlertContact(\"example\", new()\n {\n AlertContactName = \"example_value\",\n DingRobotWebhookUrl = \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n Email = \"someone@example.com\",\n PhoneNum = \"1381111****\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := arms.NewAlertContact(ctx, \"example\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tDingRobotWebhookUrl: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\"),\n\t\t\tEmail: pulumi.String(\"someone@example.com\"),\n\t\t\tPhoneNum: pulumi.String(\"1381111****\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlertContact(\"example\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .dingRobotWebhookUrl(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\")\n .email(\"someone@example.com\")\n .phoneNum(\"1381111****\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n dingRobotWebhookUrl: https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\n email: someone@example.com\n phoneNum: 1381111****\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertContact:AlertContact example \u003cid\u003e\n```\n\n",
"properties": {
"alertContactName": {
"type": "string",
@@ -106244,7 +108097,7 @@
}
},
"alicloud:arms/alertContactGroup:AlertContactGroup": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Contact Group resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Contact Group and how to use it, see [What is Alert Contact Group](https://next.api.aliyun.com/api/ARMS/2019-08-08/CreateAlertContactGroup).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.arms.AlertContact(\"example\", {\n alertContactName: \"example_value\",\n dingRobotWebhookUrl: \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email: \"someone@example.com\",\n phoneNum: \"1381111****\",\n});\nconst exampleAlertContactGroup = new alicloud.arms.AlertContactGroup(\"example\", {\n alertContactGroupName: \"example_value\",\n contactIds: [example.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.arms.AlertContact(\"example\",\n alert_contact_name=\"example_value\",\n ding_robot_webhook_url=\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email=\"someone@example.com\",\n phone_num=\"1381111****\")\nexample_alert_contact_group = alicloud.arms.AlertContactGroup(\"example\",\n alert_contact_group_name=\"example_value\",\n contact_ids=[example.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Arms.AlertContact(\"example\", new()\n {\n AlertContactName = \"example_value\",\n DingRobotWebhookUrl = \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n Email = \"someone@example.com\",\n PhoneNum = \"1381111****\",\n });\n\n var exampleAlertContactGroup = new AliCloud.Arms.AlertContactGroup(\"example\", new()\n {\n AlertContactGroupName = \"example_value\",\n ContactIds = new[]\n {\n example.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := arms.NewAlertContact(ctx, \"example\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tDingRobotWebhookUrl: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\"),\n\t\t\tEmail: pulumi.String(\"someone@example.com\"),\n\t\t\tPhoneNum: pulumi.String(\"1381111****\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertContactGroup(ctx, \"example\", \u0026arms.AlertContactGroupArgs{\n\t\t\tAlertContactGroupName: pulumi.String(\"example_value\"),\n\t\t\tContactIds: pulumi.StringArray{\n\t\t\t\texample.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport com.pulumi.alicloud.arms.AlertContactGroup;\nimport com.pulumi.alicloud.arms.AlertContactGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlertContact(\"example\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .dingRobotWebhookUrl(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\")\n .email(\"someone@example.com\")\n .phoneNum(\"1381111****\")\n .build());\n\n var exampleAlertContactGroup = new AlertContactGroup(\"exampleAlertContactGroup\", AlertContactGroupArgs.builder()\n .alertContactGroupName(\"example_value\")\n .contactIds(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n dingRobotWebhookUrl: https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\n email: someone@example.com\n phoneNum: 1381111****\n exampleAlertContactGroup:\n type: alicloud:arms:AlertContactGroup\n name: example\n properties:\n alertContactGroupName: example_value\n contactIds:\n - ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertContactGroup:AlertContactGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Contact Group resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Contact Group and how to use it, see [What is Alert Contact Group](https://next.api.aliyun.com/api/ARMS/2019-08-08/CreateAlertContactGroup).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.arms.AlertContact(\"example\", {\n alertContactName: \"example_value\",\n dingRobotWebhookUrl: \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email: \"someone@example.com\",\n phoneNum: \"1381111****\",\n});\nconst exampleAlertContactGroup = new alicloud.arms.AlertContactGroup(\"example\", {\n alertContactGroupName: \"example_value\",\n contactIds: [example.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.arms.AlertContact(\"example\",\n alert_contact_name=\"example_value\",\n ding_robot_webhook_url=\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n email=\"someone@example.com\",\n phone_num=\"1381111****\")\nexample_alert_contact_group = alicloud.arms.AlertContactGroup(\"example\",\n alert_contact_group_name=\"example_value\",\n contact_ids=[example.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Arms.AlertContact(\"example\", new()\n {\n AlertContactName = \"example_value\",\n DingRobotWebhookUrl = \"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\",\n Email = \"someone@example.com\",\n PhoneNum = \"1381111****\",\n });\n\n var exampleAlertContactGroup = new AliCloud.Arms.AlertContactGroup(\"example\", new()\n {\n AlertContactGroupName = \"example_value\",\n ContactIds = new[]\n {\n example.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := arms.NewAlertContact(ctx, \"example\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tDingRobotWebhookUrl: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\"),\n\t\t\tEmail: pulumi.String(\"someone@example.com\"),\n\t\t\tPhoneNum: pulumi.String(\"1381111****\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertContactGroup(ctx, \"example\", \u0026arms.AlertContactGroupArgs{\n\t\t\tAlertContactGroupName: pulumi.String(\"example_value\"),\n\t\t\tContactIds: pulumi.StringArray{\n\t\t\t\texample.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport com.pulumi.alicloud.arms.AlertContactGroup;\nimport com.pulumi.alicloud.arms.AlertContactGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlertContact(\"example\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .dingRobotWebhookUrl(\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\")\n .email(\"someone@example.com\")\n .phoneNum(\"1381111****\")\n .build());\n\n var exampleAlertContactGroup = new AlertContactGroup(\"exampleAlertContactGroup\", AlertContactGroupArgs.builder()\n .alertContactGroupName(\"example_value\")\n .contactIds(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n dingRobotWebhookUrl: https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\n email: someone@example.com\n phoneNum: 1381111****\n exampleAlertContactGroup:\n type: alicloud:arms:AlertContactGroup\n name: example\n properties:\n alertContactGroupName: example_value\n contactIds:\n - ${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertContactGroup:AlertContactGroup example \u003cid\u003e\n```\n\n",
"properties": {
"alertContactGroupName": {
"type": "string",
@@ -106296,7 +108149,7 @@
}
},
"alicloud:arms/alertRobot:AlertRobot": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Robot resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Robot and how to use it, see [What is Alert Robot](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateOrUpdateIMRobot).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst wechat = new alicloud.arms.AlertRobot(\"wechat\", {\n alertRobotName: \"example_wechat\",\n robotType: \"wechat\",\n robotAddr: \"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\nconst dingding = new alicloud.arms.AlertRobot(\"dingding\", {\n alertRobotName: \"example_dingding\",\n robotType: \"dingding\",\n robotAddr: \"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\nconst feishu = new alicloud.arms.AlertRobot(\"feishu\", {\n alertRobotName: \"example_feishu\",\n robotType: \"feishu\",\n robotAddr: \"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nwechat = alicloud.arms.AlertRobot(\"wechat\",\n alert_robot_name=\"example_wechat\",\n robot_type=\"wechat\",\n robot_addr=\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\ndingding = alicloud.arms.AlertRobot(\"dingding\",\n alert_robot_name=\"example_dingding\",\n robot_type=\"dingding\",\n robot_addr=\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\nfeishu = alicloud.arms.AlertRobot(\"feishu\",\n alert_robot_name=\"example_feishu\",\n robot_type=\"feishu\",\n robot_addr=\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wechat = new AliCloud.Arms.AlertRobot(\"wechat\", new()\n {\n AlertRobotName = \"example_wechat\",\n RobotType = \"wechat\",\n RobotAddr = \"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n var dingding = new AliCloud.Arms.AlertRobot(\"dingding\", new()\n {\n AlertRobotName = \"example_dingding\",\n RobotType = \"dingding\",\n RobotAddr = \"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n var feishu = new AliCloud.Arms.AlertRobot(\"feishu\", new()\n {\n AlertRobotName = \"example_feishu\",\n RobotType = \"feishu\",\n RobotAddr = \"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := arms.NewAlertRobot(ctx, \"wechat\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_wechat\"),\n\t\t\tRobotType: pulumi.String(\"wechat\"),\n\t\t\tRobotAddr: pulumi.String(\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertRobot(ctx, \"dingding\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_dingding\"),\n\t\t\tRobotType: pulumi.String(\"dingding\"),\n\t\t\tRobotAddr: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertRobot(ctx, \"feishu\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_feishu\"),\n\t\t\tRobotType: pulumi.String(\"feishu\"),\n\t\t\tRobotAddr: pulumi.String(\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertRobot;\nimport com.pulumi.alicloud.arms.AlertRobotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var wechat = new AlertRobot(\"wechat\", AlertRobotArgs.builder()\n .alertRobotName(\"example_wechat\")\n .robotType(\"wechat\")\n .robotAddr(\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n var dingding = new AlertRobot(\"dingding\", AlertRobotArgs.builder()\n .alertRobotName(\"example_dingding\")\n .robotType(\"dingding\")\n .robotAddr(\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n var feishu = new AlertRobot(\"feishu\", AlertRobotArgs.builder()\n .alertRobotName(\"example_feishu\")\n .robotType(\"feishu\")\n .robotAddr(\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n wechat:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_wechat\n robotType: wechat\n robotAddr: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n dingding:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_dingding\n robotType: dingding\n robotAddr: https://oapi.dingtalk.com/robot/send?access_token=1c704e23\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n feishu:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_feishu\n robotType: feishu\n robotAddr: https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Robot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertRobot:AlertRobot example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Robot resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Robot and how to use it, see [What is Alert Robot](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateOrUpdateIMRobot).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst wechat = new alicloud.arms.AlertRobot(\"wechat\", {\n alertRobotName: \"example_wechat\",\n robotType: \"wechat\",\n robotAddr: \"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\nconst dingding = new alicloud.arms.AlertRobot(\"dingding\", {\n alertRobotName: \"example_dingding\",\n robotType: \"dingding\",\n robotAddr: \"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\nconst feishu = new alicloud.arms.AlertRobot(\"feishu\", {\n alertRobotName: \"example_feishu\",\n robotType: \"feishu\",\n robotAddr: \"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n dailyNoc: true,\n dailyNocTime: \"09:30,17:00\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nwechat = alicloud.arms.AlertRobot(\"wechat\",\n alert_robot_name=\"example_wechat\",\n robot_type=\"wechat\",\n robot_addr=\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\ndingding = alicloud.arms.AlertRobot(\"dingding\",\n alert_robot_name=\"example_dingding\",\n robot_type=\"dingding\",\n robot_addr=\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\nfeishu = alicloud.arms.AlertRobot(\"feishu\",\n alert_robot_name=\"example_feishu\",\n robot_type=\"feishu\",\n robot_addr=\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n daily_noc=True,\n daily_noc_time=\"09:30,17:00\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var wechat = new AliCloud.Arms.AlertRobot(\"wechat\", new()\n {\n AlertRobotName = \"example_wechat\",\n RobotType = \"wechat\",\n RobotAddr = \"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n var dingding = new AliCloud.Arms.AlertRobot(\"dingding\", new()\n {\n AlertRobotName = \"example_dingding\",\n RobotType = \"dingding\",\n RobotAddr = \"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n var feishu = new AliCloud.Arms.AlertRobot(\"feishu\", new()\n {\n AlertRobotName = \"example_feishu\",\n RobotType = \"feishu\",\n RobotAddr = \"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\",\n DailyNoc = true,\n DailyNocTime = \"09:30,17:00\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := arms.NewAlertRobot(ctx, \"wechat\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_wechat\"),\n\t\t\tRobotType: pulumi.String(\"wechat\"),\n\t\t\tRobotAddr: pulumi.String(\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertRobot(ctx, \"dingding\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_dingding\"),\n\t\t\tRobotType: pulumi.String(\"dingding\"),\n\t\t\tRobotAddr: pulumi.String(\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewAlertRobot(ctx, \"feishu\", \u0026arms.AlertRobotArgs{\n\t\t\tAlertRobotName: pulumi.String(\"example_feishu\"),\n\t\t\tRobotType: pulumi.String(\"feishu\"),\n\t\t\tRobotAddr: pulumi.String(\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\"),\n\t\t\tDailyNoc: pulumi.Bool(true),\n\t\t\tDailyNocTime: pulumi.String(\"09:30,17:00\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertRobot;\nimport com.pulumi.alicloud.arms.AlertRobotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var wechat = new AlertRobot(\"wechat\", AlertRobotArgs.builder()\n .alertRobotName(\"example_wechat\")\n .robotType(\"wechat\")\n .robotAddr(\"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n var dingding = new AlertRobot(\"dingding\", AlertRobotArgs.builder()\n .alertRobotName(\"example_dingding\")\n .robotType(\"dingding\")\n .robotAddr(\"https://oapi.dingtalk.com/robot/send?access_token=1c704e23\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n var feishu = new AlertRobot(\"feishu\", AlertRobotArgs.builder()\n .alertRobotName(\"example_feishu\")\n .robotType(\"feishu\")\n .robotAddr(\"https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\")\n .dailyNoc(true)\n .dailyNocTime(\"09:30,17:00\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n wechat:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_wechat\n robotType: wechat\n robotAddr: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1c704e23\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n dingding:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_dingding\n robotType: dingding\n robotAddr: https://oapi.dingtalk.com/robot/send?access_token=1c704e23\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n feishu:\n type: alicloud:arms:AlertRobot\n properties:\n alertRobotName: example_feishu\n robotType: feishu\n robotAddr: https://open.feishu.cn/open-apis/bot/v2/hook/a48efa01\n dailyNoc: true\n dailyNocTime: 09:30,17:00\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Robot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/alertRobot:AlertRobot example \u003cid\u003e\n```\n\n",
"properties": {
"alertRobotName": {
"type": "string",
@@ -106381,7 +108234,7 @@
}
},
"alicloud:arms/dispatchRule:DispatchRule": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Dispatch Rule resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Dispatch Rule and how to use it, see [What is Alert Dispatch_Rule](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateDispatchRule).\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.arms.AlertContact(\"default\", {\n alertContactName: \"example_value\",\n email: \"example_value@aaa.com\",\n});\nconst defaultAlertContactGroup = new alicloud.arms.AlertContactGroup(\"default\", {\n alertContactGroupName: \"example_value\",\n contactIds: [_default.id],\n});\nconst defaultDispatchRule = new alicloud.arms.DispatchRule(\"default\", {\n dispatchRuleName: \"example_value\",\n dispatchType: \"CREATE_ALERT\",\n groupRules: [{\n groupWaitTime: 5,\n groupInterval: 15,\n repeatInterval: 100,\n groupingFields: [\"alertname\"],\n }],\n labelMatchExpressionGrids: [{\n labelMatchExpressionGroups: [{\n labelMatchExpressions: [{\n key: \"_aliyun_arms_involvedObject_kind\",\n value: \"app\",\n operator: \"eq\",\n }],\n }],\n }],\n notifyRules: [{\n notifyObjects: [\n {\n notifyObjectId: _default.id,\n notifyType: \"ARMS_CONTACT\",\n name: \"example_value\",\n },\n {\n notifyObjectId: defaultAlertContactGroup.id,\n notifyType: \"ARMS_CONTACT_GROUP\",\n name: \"example_value\",\n },\n ],\n notifyChannels: [\n \"dingTalk\",\n \"wechat\",\n ],\n notifyStartTime: \"10:00\",\n notifyEndTime: \"23:00\",\n }],\n notifyTemplates: [{\n emailTitle: \"example_email_title\",\n emailContent: \"example_email_content\",\n emailRecoverTitle: \"example_email_recover_title\",\n emailRecoverContent: \"example_email_recover_content\",\n smsContent: \"example_sms_content\",\n smsRecoverContent: \"example_sms_recover_content\",\n ttsContent: \"example_tts_content\",\n ttsRecoverContent: \"example_tts_recover_content\",\n robotContent: \"example_robot_content\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.arms.AlertContact(\"default\",\n alert_contact_name=\"example_value\",\n email=\"example_value@aaa.com\")\ndefault_alert_contact_group = alicloud.arms.AlertContactGroup(\"default\",\n alert_contact_group_name=\"example_value\",\n contact_ids=[default.id])\ndefault_dispatch_rule = alicloud.arms.DispatchRule(\"default\",\n dispatch_rule_name=\"example_value\",\n dispatch_type=\"CREATE_ALERT\",\n group_rules=[{\n \"group_wait_time\": 5,\n \"group_interval\": 15,\n \"repeat_interval\": 100,\n \"grouping_fields\": [\"alertname\"],\n }],\n label_match_expression_grids=[{\n \"label_match_expression_groups\": [{\n \"label_match_expressions\": [{\n \"key\": \"_aliyun_arms_involvedObject_kind\",\n \"value\": \"app\",\n \"operator\": \"eq\",\n }],\n }],\n }],\n notify_rules=[{\n \"notify_objects\": [\n {\n \"notify_object_id\": default.id,\n \"notify_type\": \"ARMS_CONTACT\",\n \"name\": \"example_value\",\n },\n {\n \"notify_object_id\": default_alert_contact_group.id,\n \"notify_type\": \"ARMS_CONTACT_GROUP\",\n \"name\": \"example_value\",\n },\n ],\n \"notify_channels\": [\n \"dingTalk\",\n \"wechat\",\n ],\n \"notify_start_time\": \"10:00\",\n \"notify_end_time\": \"23:00\",\n }],\n notify_templates=[{\n \"email_title\": \"example_email_title\",\n \"email_content\": \"example_email_content\",\n \"email_recover_title\": \"example_email_recover_title\",\n \"email_recover_content\": \"example_email_recover_content\",\n \"sms_content\": \"example_sms_content\",\n \"sms_recover_content\": \"example_sms_recover_content\",\n \"tts_content\": \"example_tts_content\",\n \"tts_recover_content\": \"example_tts_recover_content\",\n \"robot_content\": \"example_robot_content\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Arms.AlertContact(\"default\", new()\n {\n AlertContactName = \"example_value\",\n Email = \"example_value@aaa.com\",\n });\n\n var defaultAlertContactGroup = new AliCloud.Arms.AlertContactGroup(\"default\", new()\n {\n AlertContactGroupName = \"example_value\",\n ContactIds = new[]\n {\n @default.Id,\n },\n });\n\n var defaultDispatchRule = new AliCloud.Arms.DispatchRule(\"default\", new()\n {\n DispatchRuleName = \"example_value\",\n DispatchType = \"CREATE_ALERT\",\n GroupRules = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleGroupRuleArgs\n {\n GroupWaitTime = 5,\n GroupInterval = 15,\n RepeatInterval = 100,\n GroupingFields = new[]\n {\n \"alertname\",\n },\n },\n },\n LabelMatchExpressionGrids = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridArgs\n {\n LabelMatchExpressionGroups = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs\n {\n LabelMatchExpressions = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs\n {\n Key = \"_aliyun_arms_involvedObject_kind\",\n Value = \"app\",\n Operator = \"eq\",\n },\n },\n },\n },\n },\n },\n NotifyRules = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleArgs\n {\n NotifyObjects = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleNotifyObjectArgs\n {\n NotifyObjectId = @default.Id,\n NotifyType = \"ARMS_CONTACT\",\n Name = \"example_value\",\n },\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleNotifyObjectArgs\n {\n NotifyObjectId = defaultAlertContactGroup.Id,\n NotifyType = \"ARMS_CONTACT_GROUP\",\n Name = \"example_value\",\n },\n },\n NotifyChannels = new[]\n {\n \"dingTalk\",\n \"wechat\",\n },\n NotifyStartTime = \"10:00\",\n NotifyEndTime = \"23:00\",\n },\n },\n NotifyTemplates = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyTemplateArgs\n {\n EmailTitle = \"example_email_title\",\n EmailContent = \"example_email_content\",\n EmailRecoverTitle = \"example_email_recover_title\",\n EmailRecoverContent = \"example_email_recover_content\",\n SmsContent = \"example_sms_content\",\n SmsRecoverContent = \"example_sms_recover_content\",\n TtsContent = \"example_tts_content\",\n TtsRecoverContent = \"example_tts_recover_content\",\n RobotContent = \"example_robot_content\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := arms.NewAlertContact(ctx, \"default\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tEmail: pulumi.String(\"example_value@aaa.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlertContactGroup, err := arms.NewAlertContactGroup(ctx, \"default\", \u0026arms.AlertContactGroupArgs{\n\t\t\tAlertContactGroupName: pulumi.String(\"example_value\"),\n\t\t\tContactIds: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewDispatchRule(ctx, \"default\", \u0026arms.DispatchRuleArgs{\n\t\t\tDispatchRuleName: pulumi.String(\"example_value\"),\n\t\t\tDispatchType: pulumi.String(\"CREATE_ALERT\"),\n\t\t\tGroupRules: arms.DispatchRuleGroupRuleArray{\n\t\t\t\t\u0026arms.DispatchRuleGroupRuleArgs{\n\t\t\t\t\tGroupWaitTime: pulumi.Int(5),\n\t\t\t\t\tGroupInterval: pulumi.Int(15),\n\t\t\t\t\tRepeatInterval: pulumi.Int(100),\n\t\t\t\t\tGroupingFields: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"alertname\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLabelMatchExpressionGrids: arms.DispatchRuleLabelMatchExpressionGridArray{\n\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridArgs{\n\t\t\t\t\tLabelMatchExpressionGroups: arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArray{\n\t\t\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs{\n\t\t\t\t\t\t\tLabelMatchExpressions: arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArray{\n\t\t\t\t\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs{\n\t\t\t\t\t\t\t\t\tKey: pulumi.String(\"_aliyun_arms_involvedObject_kind\"),\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"app\"),\n\t\t\t\t\t\t\t\t\tOperator: pulumi.String(\"eq\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNotifyRules: arms.DispatchRuleNotifyRuleArray{\n\t\t\t\t\u0026arms.DispatchRuleNotifyRuleArgs{\n\t\t\t\t\tNotifyObjects: arms.DispatchRuleNotifyRuleNotifyObjectArray{\n\t\t\t\t\t\t\u0026arms.DispatchRuleNotifyRuleNotifyObjectArgs{\n\t\t\t\t\t\t\tNotifyObjectId: _default.ID(),\n\t\t\t\t\t\t\tNotifyType: pulumi.String(\"ARMS_CONTACT\"),\n\t\t\t\t\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.DispatchRuleNotifyRuleNotifyObjectArgs{\n\t\t\t\t\t\t\tNotifyObjectId: defaultAlertContactGroup.ID(),\n\t\t\t\t\t\t\tNotifyType: pulumi.String(\"ARMS_CONTACT_GROUP\"),\n\t\t\t\t\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tNotifyChannels: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dingTalk\"),\n\t\t\t\t\t\tpulumi.String(\"wechat\"),\n\t\t\t\t\t},\n\t\t\t\t\tNotifyStartTime: pulumi.String(\"10:00\"),\n\t\t\t\t\tNotifyEndTime: pulumi.String(\"23:00\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNotifyTemplates: arms.DispatchRuleNotifyTemplateArray{\n\t\t\t\t\u0026arms.DispatchRuleNotifyTemplateArgs{\n\t\t\t\t\tEmailTitle: pulumi.String(\"example_email_title\"),\n\t\t\t\t\tEmailContent: pulumi.String(\"example_email_content\"),\n\t\t\t\t\tEmailRecoverTitle: pulumi.String(\"example_email_recover_title\"),\n\t\t\t\t\tEmailRecoverContent: pulumi.String(\"example_email_recover_content\"),\n\t\t\t\t\tSmsContent: pulumi.String(\"example_sms_content\"),\n\t\t\t\t\tSmsRecoverContent: pulumi.String(\"example_sms_recover_content\"),\n\t\t\t\t\tTtsContent: pulumi.String(\"example_tts_content\"),\n\t\t\t\t\tTtsRecoverContent: pulumi.String(\"example_tts_recover_content\"),\n\t\t\t\t\tRobotContent: pulumi.String(\"example_robot_content\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport com.pulumi.alicloud.arms.AlertContactGroup;\nimport com.pulumi.alicloud.arms.AlertContactGroupArgs;\nimport com.pulumi.alicloud.arms.DispatchRule;\nimport com.pulumi.alicloud.arms.DispatchRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleGroupRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleLabelMatchExpressionGridArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleNotifyRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleNotifyTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new AlertContact(\"default\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .email(\"example_value@aaa.com\")\n .build());\n\n var defaultAlertContactGroup = new AlertContactGroup(\"defaultAlertContactGroup\", AlertContactGroupArgs.builder()\n .alertContactGroupName(\"example_value\")\n .contactIds(default_.id())\n .build());\n\n var defaultDispatchRule = new DispatchRule(\"defaultDispatchRule\", DispatchRuleArgs.builder()\n .dispatchRuleName(\"example_value\")\n .dispatchType(\"CREATE_ALERT\")\n .groupRules(DispatchRuleGroupRuleArgs.builder()\n .groupWaitTime(5)\n .groupInterval(15)\n .repeatInterval(100)\n .groupingFields(\"alertname\")\n .build())\n .labelMatchExpressionGrids(DispatchRuleLabelMatchExpressionGridArgs.builder()\n .labelMatchExpressionGroups(DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs.builder()\n .labelMatchExpressions(DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs.builder()\n .key(\"_aliyun_arms_involvedObject_kind\")\n .value(\"app\")\n .operator(\"eq\")\n .build())\n .build())\n .build())\n .notifyRules(DispatchRuleNotifyRuleArgs.builder()\n .notifyObjects( \n DispatchRuleNotifyRuleNotifyObjectArgs.builder()\n .notifyObjectId(default_.id())\n .notifyType(\"ARMS_CONTACT\")\n .name(\"example_value\")\n .build(),\n DispatchRuleNotifyRuleNotifyObjectArgs.builder()\n .notifyObjectId(defaultAlertContactGroup.id())\n .notifyType(\"ARMS_CONTACT_GROUP\")\n .name(\"example_value\")\n .build())\n .notifyChannels( \n \"dingTalk\",\n \"wechat\")\n .notifyStartTime(\"10:00\")\n .notifyEndTime(\"23:00\")\n .build())\n .notifyTemplates(DispatchRuleNotifyTemplateArgs.builder()\n .emailTitle(\"example_email_title\")\n .emailContent(\"example_email_content\")\n .emailRecoverTitle(\"example_email_recover_title\")\n .emailRecoverContent(\"example_email_recover_content\")\n .smsContent(\"example_sms_content\")\n .smsRecoverContent(\"example_sms_recover_content\")\n .ttsContent(\"example_tts_content\")\n .ttsRecoverContent(\"example_tts_recover_content\")\n .robotContent(\"example_robot_content\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n email: example_value@aaa.com\n defaultAlertContactGroup:\n type: alicloud:arms:AlertContactGroup\n name: default\n properties:\n alertContactGroupName: example_value\n contactIds:\n - ${default.id}\n defaultDispatchRule:\n type: alicloud:arms:DispatchRule\n name: default\n properties:\n dispatchRuleName: example_value\n dispatchType: CREATE_ALERT\n groupRules:\n - groupWaitTime: 5\n groupInterval: 15\n repeatInterval: 100\n groupingFields:\n - alertname\n labelMatchExpressionGrids:\n - labelMatchExpressionGroups:\n - labelMatchExpressions:\n - key: _aliyun_arms_involvedObject_kind\n value: app\n operator: eq\n notifyRules:\n - notifyObjects:\n - notifyObjectId: ${default.id}\n notifyType: ARMS_CONTACT\n name: example_value\n - notifyObjectId: ${defaultAlertContactGroup.id}\n notifyType: ARMS_CONTACT_GROUP\n name: example_value\n notifyChannels:\n - dingTalk\n - wechat\n notifyStartTime: 10:00\n notifyEndTime: 23:00\n notifyTemplates:\n - emailTitle: example_email_title\n emailContent: example_email_content\n emailRecoverTitle: example_email_recover_title\n emailRecoverContent: example_email_recover_content\n smsContent: example_sms_content\n smsRecoverContent: example_sms_recover_content\n ttsContent: example_tts_content\n ttsRecoverContent: example_tts_recover_content\n robotContent: example_robot_content\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/dispatchRule:DispatchRule example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Alert Dispatch Rule resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Alert Dispatch Rule and how to use it, see [What is Alert Dispatch_Rule](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateDispatchRule).\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.arms.AlertContact(\"default\", {\n alertContactName: \"example_value\",\n email: \"example_value@aaa.com\",\n});\nconst defaultAlertContactGroup = new alicloud.arms.AlertContactGroup(\"default\", {\n alertContactGroupName: \"example_value\",\n contactIds: [_default.id],\n});\nconst defaultDispatchRule = new alicloud.arms.DispatchRule(\"default\", {\n dispatchRuleName: \"example_value\",\n dispatchType: \"CREATE_ALERT\",\n groupRules: [{\n groupWaitTime: 5,\n groupInterval: 15,\n repeatInterval: 100,\n groupingFields: [\"alertname\"],\n }],\n labelMatchExpressionGrids: [{\n labelMatchExpressionGroups: [{\n labelMatchExpressions: [{\n key: \"_aliyun_arms_involvedObject_kind\",\n value: \"app\",\n operator: \"eq\",\n }],\n }],\n }],\n notifyRules: [{\n notifyObjects: [\n {\n notifyObjectId: _default.id,\n notifyType: \"ARMS_CONTACT\",\n name: \"example_value\",\n },\n {\n notifyObjectId: defaultAlertContactGroup.id,\n notifyType: \"ARMS_CONTACT_GROUP\",\n name: \"example_value\",\n },\n ],\n notifyChannels: [\n \"dingTalk\",\n \"wechat\",\n ],\n notifyStartTime: \"10:00\",\n notifyEndTime: \"23:00\",\n }],\n notifyTemplates: [{\n emailTitle: \"example_email_title\",\n emailContent: \"example_email_content\",\n emailRecoverTitle: \"example_email_recover_title\",\n emailRecoverContent: \"example_email_recover_content\",\n smsContent: \"example_sms_content\",\n smsRecoverContent: \"example_sms_recover_content\",\n ttsContent: \"example_tts_content\",\n ttsRecoverContent: \"example_tts_recover_content\",\n robotContent: \"example_robot_content\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.arms.AlertContact(\"default\",\n alert_contact_name=\"example_value\",\n email=\"example_value@aaa.com\")\ndefault_alert_contact_group = alicloud.arms.AlertContactGroup(\"default\",\n alert_contact_group_name=\"example_value\",\n contact_ids=[default.id])\ndefault_dispatch_rule = alicloud.arms.DispatchRule(\"default\",\n dispatch_rule_name=\"example_value\",\n dispatch_type=\"CREATE_ALERT\",\n group_rules=[{\n \"group_wait_time\": 5,\n \"group_interval\": 15,\n \"repeat_interval\": 100,\n \"grouping_fields\": [\"alertname\"],\n }],\n label_match_expression_grids=[{\n \"label_match_expression_groups\": [{\n \"label_match_expressions\": [{\n \"key\": \"_aliyun_arms_involvedObject_kind\",\n \"value\": \"app\",\n \"operator\": \"eq\",\n }],\n }],\n }],\n notify_rules=[{\n \"notify_objects\": [\n {\n \"notify_object_id\": default.id,\n \"notify_type\": \"ARMS_CONTACT\",\n \"name\": \"example_value\",\n },\n {\n \"notify_object_id\": default_alert_contact_group.id,\n \"notify_type\": \"ARMS_CONTACT_GROUP\",\n \"name\": \"example_value\",\n },\n ],\n \"notify_channels\": [\n \"dingTalk\",\n \"wechat\",\n ],\n \"notify_start_time\": \"10:00\",\n \"notify_end_time\": \"23:00\",\n }],\n notify_templates=[{\n \"email_title\": \"example_email_title\",\n \"email_content\": \"example_email_content\",\n \"email_recover_title\": \"example_email_recover_title\",\n \"email_recover_content\": \"example_email_recover_content\",\n \"sms_content\": \"example_sms_content\",\n \"sms_recover_content\": \"example_sms_recover_content\",\n \"tts_content\": \"example_tts_content\",\n \"tts_recover_content\": \"example_tts_recover_content\",\n \"robot_content\": \"example_robot_content\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Arms.AlertContact(\"default\", new()\n {\n AlertContactName = \"example_value\",\n Email = \"example_value@aaa.com\",\n });\n\n var defaultAlertContactGroup = new AliCloud.Arms.AlertContactGroup(\"default\", new()\n {\n AlertContactGroupName = \"example_value\",\n ContactIds = new[]\n {\n @default.Id,\n },\n });\n\n var defaultDispatchRule = new AliCloud.Arms.DispatchRule(\"default\", new()\n {\n DispatchRuleName = \"example_value\",\n DispatchType = \"CREATE_ALERT\",\n GroupRules = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleGroupRuleArgs\n {\n GroupWaitTime = 5,\n GroupInterval = 15,\n RepeatInterval = 100,\n GroupingFields = new[]\n {\n \"alertname\",\n },\n },\n },\n LabelMatchExpressionGrids = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridArgs\n {\n LabelMatchExpressionGroups = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs\n {\n LabelMatchExpressions = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs\n {\n Key = \"_aliyun_arms_involvedObject_kind\",\n Value = \"app\",\n Operator = \"eq\",\n },\n },\n },\n },\n },\n },\n NotifyRules = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleArgs\n {\n NotifyObjects = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleNotifyObjectArgs\n {\n NotifyObjectId = @default.Id,\n NotifyType = \"ARMS_CONTACT\",\n Name = \"example_value\",\n },\n new AliCloud.Arms.Inputs.DispatchRuleNotifyRuleNotifyObjectArgs\n {\n NotifyObjectId = defaultAlertContactGroup.Id,\n NotifyType = \"ARMS_CONTACT_GROUP\",\n Name = \"example_value\",\n },\n },\n NotifyChannels = new[]\n {\n \"dingTalk\",\n \"wechat\",\n },\n NotifyStartTime = \"10:00\",\n NotifyEndTime = \"23:00\",\n },\n },\n NotifyTemplates = new[]\n {\n new AliCloud.Arms.Inputs.DispatchRuleNotifyTemplateArgs\n {\n EmailTitle = \"example_email_title\",\n EmailContent = \"example_email_content\",\n EmailRecoverTitle = \"example_email_recover_title\",\n EmailRecoverContent = \"example_email_recover_content\",\n SmsContent = \"example_sms_content\",\n SmsRecoverContent = \"example_sms_recover_content\",\n TtsContent = \"example_tts_content\",\n TtsRecoverContent = \"example_tts_recover_content\",\n RobotContent = \"example_robot_content\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := arms.NewAlertContact(ctx, \"default\", \u0026arms.AlertContactArgs{\n\t\t\tAlertContactName: pulumi.String(\"example_value\"),\n\t\t\tEmail: pulumi.String(\"example_value@aaa.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlertContactGroup, err := arms.NewAlertContactGroup(ctx, \"default\", \u0026arms.AlertContactGroupArgs{\n\t\t\tAlertContactGroupName: pulumi.String(\"example_value\"),\n\t\t\tContactIds: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewDispatchRule(ctx, \"default\", \u0026arms.DispatchRuleArgs{\n\t\t\tDispatchRuleName: pulumi.String(\"example_value\"),\n\t\t\tDispatchType: pulumi.String(\"CREATE_ALERT\"),\n\t\t\tGroupRules: arms.DispatchRuleGroupRuleArray{\n\t\t\t\t\u0026arms.DispatchRuleGroupRuleArgs{\n\t\t\t\t\tGroupWaitTime: pulumi.Int(5),\n\t\t\t\t\tGroupInterval: pulumi.Int(15),\n\t\t\t\t\tRepeatInterval: pulumi.Int(100),\n\t\t\t\t\tGroupingFields: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"alertname\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLabelMatchExpressionGrids: arms.DispatchRuleLabelMatchExpressionGridArray{\n\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridArgs{\n\t\t\t\t\tLabelMatchExpressionGroups: arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArray{\n\t\t\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs{\n\t\t\t\t\t\t\tLabelMatchExpressions: arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArray{\n\t\t\t\t\t\t\t\t\u0026arms.DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs{\n\t\t\t\t\t\t\t\t\tKey: pulumi.String(\"_aliyun_arms_involvedObject_kind\"),\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"app\"),\n\t\t\t\t\t\t\t\t\tOperator: pulumi.String(\"eq\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNotifyRules: arms.DispatchRuleNotifyRuleArray{\n\t\t\t\t\u0026arms.DispatchRuleNotifyRuleArgs{\n\t\t\t\t\tNotifyObjects: arms.DispatchRuleNotifyRuleNotifyObjectArray{\n\t\t\t\t\t\t\u0026arms.DispatchRuleNotifyRuleNotifyObjectArgs{\n\t\t\t\t\t\t\tNotifyObjectId: _default.ID(),\n\t\t\t\t\t\t\tNotifyType: pulumi.String(\"ARMS_CONTACT\"),\n\t\t\t\t\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.DispatchRuleNotifyRuleNotifyObjectArgs{\n\t\t\t\t\t\t\tNotifyObjectId: defaultAlertContactGroup.ID(),\n\t\t\t\t\t\t\tNotifyType: pulumi.String(\"ARMS_CONTACT_GROUP\"),\n\t\t\t\t\t\t\tName: pulumi.String(\"example_value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tNotifyChannels: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dingTalk\"),\n\t\t\t\t\t\tpulumi.String(\"wechat\"),\n\t\t\t\t\t},\n\t\t\t\t\tNotifyStartTime: pulumi.String(\"10:00\"),\n\t\t\t\t\tNotifyEndTime: pulumi.String(\"23:00\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNotifyTemplates: arms.DispatchRuleNotifyTemplateArray{\n\t\t\t\t\u0026arms.DispatchRuleNotifyTemplateArgs{\n\t\t\t\t\tEmailTitle: pulumi.String(\"example_email_title\"),\n\t\t\t\t\tEmailContent: pulumi.String(\"example_email_content\"),\n\t\t\t\t\tEmailRecoverTitle: pulumi.String(\"example_email_recover_title\"),\n\t\t\t\t\tEmailRecoverContent: pulumi.String(\"example_email_recover_content\"),\n\t\t\t\t\tSmsContent: pulumi.String(\"example_sms_content\"),\n\t\t\t\t\tSmsRecoverContent: pulumi.String(\"example_sms_recover_content\"),\n\t\t\t\t\tTtsContent: pulumi.String(\"example_tts_content\"),\n\t\t\t\t\tTtsRecoverContent: pulumi.String(\"example_tts_recover_content\"),\n\t\t\t\t\tRobotContent: pulumi.String(\"example_robot_content\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.arms.AlertContact;\nimport com.pulumi.alicloud.arms.AlertContactArgs;\nimport com.pulumi.alicloud.arms.AlertContactGroup;\nimport com.pulumi.alicloud.arms.AlertContactGroupArgs;\nimport com.pulumi.alicloud.arms.DispatchRule;\nimport com.pulumi.alicloud.arms.DispatchRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleGroupRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleLabelMatchExpressionGridArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleNotifyRuleArgs;\nimport com.pulumi.alicloud.arms.inputs.DispatchRuleNotifyTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new AlertContact(\"default\", AlertContactArgs.builder()\n .alertContactName(\"example_value\")\n .email(\"example_value@aaa.com\")\n .build());\n\n var defaultAlertContactGroup = new AlertContactGroup(\"defaultAlertContactGroup\", AlertContactGroupArgs.builder()\n .alertContactGroupName(\"example_value\")\n .contactIds(default_.id())\n .build());\n\n var defaultDispatchRule = new DispatchRule(\"defaultDispatchRule\", DispatchRuleArgs.builder()\n .dispatchRuleName(\"example_value\")\n .dispatchType(\"CREATE_ALERT\")\n .groupRules(DispatchRuleGroupRuleArgs.builder()\n .groupWaitTime(5)\n .groupInterval(15)\n .repeatInterval(100)\n .groupingFields(\"alertname\")\n .build())\n .labelMatchExpressionGrids(DispatchRuleLabelMatchExpressionGridArgs.builder()\n .labelMatchExpressionGroups(DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupArgs.builder()\n .labelMatchExpressions(DispatchRuleLabelMatchExpressionGridLabelMatchExpressionGroupLabelMatchExpressionArgs.builder()\n .key(\"_aliyun_arms_involvedObject_kind\")\n .value(\"app\")\n .operator(\"eq\")\n .build())\n .build())\n .build())\n .notifyRules(DispatchRuleNotifyRuleArgs.builder()\n .notifyObjects( \n DispatchRuleNotifyRuleNotifyObjectArgs.builder()\n .notifyObjectId(default_.id())\n .notifyType(\"ARMS_CONTACT\")\n .name(\"example_value\")\n .build(),\n DispatchRuleNotifyRuleNotifyObjectArgs.builder()\n .notifyObjectId(defaultAlertContactGroup.id())\n .notifyType(\"ARMS_CONTACT_GROUP\")\n .name(\"example_value\")\n .build())\n .notifyChannels( \n \"dingTalk\",\n \"wechat\")\n .notifyStartTime(\"10:00\")\n .notifyEndTime(\"23:00\")\n .build())\n .notifyTemplates(DispatchRuleNotifyTemplateArgs.builder()\n .emailTitle(\"example_email_title\")\n .emailContent(\"example_email_content\")\n .emailRecoverTitle(\"example_email_recover_title\")\n .emailRecoverContent(\"example_email_recover_content\")\n .smsContent(\"example_sms_content\")\n .smsRecoverContent(\"example_sms_recover_content\")\n .ttsContent(\"example_tts_content\")\n .ttsRecoverContent(\"example_tts_recover_content\")\n .robotContent(\"example_robot_content\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:arms:AlertContact\n properties:\n alertContactName: example_value\n email: example_value@aaa.com\n defaultAlertContactGroup:\n type: alicloud:arms:AlertContactGroup\n name: default\n properties:\n alertContactGroupName: example_value\n contactIds:\n - ${default.id}\n defaultDispatchRule:\n type: alicloud:arms:DispatchRule\n name: default\n properties:\n dispatchRuleName: example_value\n dispatchType: CREATE_ALERT\n groupRules:\n - groupWaitTime: 5\n groupInterval: 15\n repeatInterval: 100\n groupingFields:\n - alertname\n labelMatchExpressionGrids:\n - labelMatchExpressionGroups:\n - labelMatchExpressions:\n - key: _aliyun_arms_involvedObject_kind\n value: app\n operator: eq\n notifyRules:\n - notifyObjects:\n - notifyObjectId: ${default.id}\n notifyType: ARMS_CONTACT\n name: example_value\n - notifyObjectId: ${defaultAlertContactGroup.id}\n notifyType: ARMS_CONTACT_GROUP\n name: example_value\n notifyChannels:\n - dingTalk\n - wechat\n notifyStartTime: 10:00\n notifyEndTime: 23:00\n notifyTemplates:\n - emailTitle: example_email_title\n emailContent: example_email_content\n emailRecoverTitle: example_email_recover_title\n emailRecoverContent: example_email_recover_content\n smsContent: example_sms_content\n smsRecoverContent: example_sms_recover_content\n ttsContent: example_tts_content\n ttsRecoverContent: example_tts_recover_content\n robotContent: example_robot_content\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Alert Contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/dispatchRule:DispatchRule example \u003cid\u003e\n```\n\n",
"properties": {
"dispatchRuleName": {
"type": "string",
@@ -106535,7 +108388,7 @@
}
},
"alicloud:arms/envCustomJob:EnvCustomJob": {
- "description": "Provides a ARMS Env Custom Job resource. Custom jobs in the arms environment.\n\nFor information about ARMS Env Custom Job and how to use it, see [What is Env Custom Job](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvcustomjob).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst env_ecs = new alicloud.arms.Environment(\"env-ecs\", {\n environmentType: \"ECS\",\n environmentName: `terraform-example-${_default.result}`,\n bindResourceId: vpc.id,\n environmentSubType: \"ECS\",\n});\nconst defaultEnvCustomJob = new alicloud.arms.EnvCustomJob(\"default\", {\n status: \"run\",\n environmentId: env_ecs.id,\n envCustomJobName: name,\n configYaml: `scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n`,\n aliyunLang: \"en\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\nenv_ecs = alicloud.arms.Environment(\"env-ecs\",\n environment_type=\"ECS\",\n environment_name=f\"terraform-example-{default['result']}\",\n bind_resource_id=vpc.id,\n environment_sub_type=\"ECS\")\ndefault_env_custom_job = alicloud.arms.EnvCustomJob(\"default\",\n status=\"run\",\n environment_id=env_ecs.id,\n env_custom_job_name=name,\n config_yaml=\"\"\"scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n\"\"\",\n aliyun_lang=\"en\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var env_ecs = new AliCloud.Arms.Environment(\"env-ecs\", new()\n {\n EnvironmentType = \"ECS\",\n EnvironmentName = $\"terraform-example-{@default.Result}\",\n BindResourceId = vpc.Id,\n EnvironmentSubType = \"ECS\",\n });\n\n var defaultEnvCustomJob = new AliCloud.Arms.EnvCustomJob(\"default\", new()\n {\n Status = \"run\",\n EnvironmentId = env_ecs.Id,\n EnvCustomJobName = name,\n ConfigYaml = @\"scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n\",\n AliyunLang = \"en\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tenv_ecs, err := arms.NewEnvironment(ctx, \"env-ecs\", \u0026arms.EnvironmentArgs{\n\t\t\tEnvironmentType: pulumi.String(\"ECS\"),\n\t\t\tEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t\tBindResourceId: vpc.ID(),\n\t\t\tEnvironmentSubType: pulumi.String(\"ECS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewEnvCustomJob(ctx, \"default\", \u0026arms.EnvCustomJobArgs{\n\t\t\tStatus: pulumi.String(\"run\"),\n\t\t\tEnvironmentId: env_ecs.ID(),\n\t\t\tEnvCustomJobName: pulumi.String(name),\n\t\t\tConfigYaml: pulumi.String(`scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n`),\n\t\t\tAliyunLang: pulumi.String(\"en\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvCustomJob;\nimport com.pulumi.alicloud.arms.EnvCustomJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var env_ecs = new Environment(\"env-ecs\", EnvironmentArgs.builder()\n .environmentType(\"ECS\")\n .environmentName(String.format(\"terraform-example-%s\", default_.result()))\n .bindResourceId(vpc.id())\n .environmentSubType(\"ECS\")\n .build());\n\n var defaultEnvCustomJob = new EnvCustomJob(\"defaultEnvCustomJob\", EnvCustomJobArgs.builder()\n .status(\"run\")\n .environmentId(env_ecs.id())\n .envCustomJobName(name)\n .configYaml(\"\"\"\nscrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n \"\"\")\n .aliyunLang(\"en\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n env-ecs:\n type: alicloud:arms:Environment\n properties:\n environmentType: ECS\n environmentName: terraform-example-${default.result}\n bindResourceId: ${vpc.id}\n environmentSubType: ECS\n defaultEnvCustomJob:\n type: alicloud:arms:EnvCustomJob\n name: default\n properties:\n status: run\n environmentId: ${[\"env-ecs\"].id}\n envCustomJobName: ${name}\n configYaml: |\n scrape_configs:\n - job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n aliyunLang: en\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Env Custom Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envCustomJob:EnvCustomJob example \u003cenvironment_id\u003e:\u003cenv_custom_job_name\u003e\n```\n\n",
+ "description": "Provides a ARMS Env Custom Job resource. Custom jobs in the arms environment.\n\nFor information about ARMS Env Custom Job and how to use it, see [What is Env Custom Job](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvcustomjob).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst env_ecs = new alicloud.arms.Environment(\"env-ecs\", {\n environmentType: \"ECS\",\n environmentName: `terraform-example-${_default.result}`,\n bindResourceId: vpc.id,\n environmentSubType: \"ECS\",\n});\nconst defaultEnvCustomJob = new alicloud.arms.EnvCustomJob(\"default\", {\n status: \"run\",\n environmentId: env_ecs.id,\n envCustomJobName: name,\n configYaml: `scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n`,\n aliyunLang: \"en\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\nenv_ecs = alicloud.arms.Environment(\"env-ecs\",\n environment_type=\"ECS\",\n environment_name=f\"terraform-example-{default['result']}\",\n bind_resource_id=vpc.id,\n environment_sub_type=\"ECS\")\ndefault_env_custom_job = alicloud.arms.EnvCustomJob(\"default\",\n status=\"run\",\n environment_id=env_ecs.id,\n env_custom_job_name=name,\n config_yaml=\"\"\"scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n\"\"\",\n aliyun_lang=\"en\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var env_ecs = new AliCloud.Arms.Environment(\"env-ecs\", new()\n {\n EnvironmentType = \"ECS\",\n EnvironmentName = $\"terraform-example-{@default.Result}\",\n BindResourceId = vpc.Id,\n EnvironmentSubType = \"ECS\",\n });\n\n var defaultEnvCustomJob = new AliCloud.Arms.EnvCustomJob(\"default\", new()\n {\n Status = \"run\",\n EnvironmentId = env_ecs.Id,\n EnvCustomJobName = name,\n ConfigYaml = @\"scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n\",\n AliyunLang = \"en\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tenv_ecs, err := arms.NewEnvironment(ctx, \"env-ecs\", \u0026arms.EnvironmentArgs{\n\t\t\tEnvironmentType: pulumi.String(\"ECS\"),\n\t\t\tEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t\tBindResourceId: vpc.ID(),\n\t\t\tEnvironmentSubType: pulumi.String(\"ECS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewEnvCustomJob(ctx, \"default\", \u0026arms.EnvCustomJobArgs{\n\t\t\tStatus: pulumi.String(\"run\"),\n\t\t\tEnvironmentId: env_ecs.ID(),\n\t\t\tEnvCustomJobName: pulumi.String(name),\n\t\t\tConfigYaml: pulumi.String(`scrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n`),\n\t\t\tAliyunLang: pulumi.String(\"en\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvCustomJob;\nimport com.pulumi.alicloud.arms.EnvCustomJobArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var env_ecs = new Environment(\"env-ecs\", EnvironmentArgs.builder()\n .environmentType(\"ECS\")\n .environmentName(String.format(\"terraform-example-%s\", default_.result()))\n .bindResourceId(vpc.id())\n .environmentSubType(\"ECS\")\n .build());\n\n var defaultEnvCustomJob = new EnvCustomJob(\"defaultEnvCustomJob\", EnvCustomJobArgs.builder()\n .status(\"run\")\n .environmentId(env_ecs.id())\n .envCustomJobName(name)\n .configYaml(\"\"\"\nscrape_configs:\n- job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n \"\"\")\n .aliyunLang(\"en\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n env-ecs:\n type: alicloud:arms:Environment\n properties:\n environmentType: ECS\n environmentName: terraform-example-${default.result}\n bindResourceId: ${vpc.id}\n environmentSubType: ECS\n defaultEnvCustomJob:\n type: alicloud:arms:EnvCustomJob\n name: default\n properties:\n status: run\n environmentId: ${[\"env-ecs\"].id}\n envCustomJobName: ${name}\n configYaml: |\n scrape_configs:\n - job_name: job-demo1\n honor_timestamps: false\n honor_labels: false\n scrape_interval: 30s\n scheme: http\n metrics_path: /metric\n static_configs:\n - targets:\n - 127.0.0.1:9090\n aliyunLang: en\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Env Custom Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envCustomJob:EnvCustomJob example \u003cenvironment_id\u003e:\u003cenv_custom_job_name\u003e\n```\n\n",
"properties": {
"aliyunLang": {
"type": "string",
@@ -106623,7 +108476,7 @@
}
},
"alicloud:arms/envFeature:EnvFeature": {
- "description": "Provides a ARMS Env Feature resource. Feature of the arms environment.\n\nFor information about ARMS Env Feature and how to use it, see [What is Env Feature](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-installenvironmentfeature).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `${name}-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultEnvFeature = new alicloud.arms.EnvFeature(\"default\", {\n envFeatureName: \"metric-agent\",\n environmentId: defaultEnvironment.id,\n featureVersion: \"1.1.17\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"{name}-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_env_feature = alicloud.arms.EnvFeature(\"default\",\n env_feature_name=\"metric-agent\",\n environment_id=default_environment.id,\n feature_version=\"1.1.17\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultEnvFeature = new AliCloud.Arms.EnvFeature(\"default\", new()\n {\n EnvFeatureName = \"metric-agent\",\n EnvironmentId = defaultEnvironment.Id,\n FeatureVersion = \"1.1.17\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvFeature(ctx, \"default\", \u0026arms.EnvFeatureArgs{\nEnvFeatureName: pulumi.String(\"metric-agent\"),\nEnvironmentId: defaultEnvironment.ID(),\nFeatureVersion: pulumi.String(\"1.1.17\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvFeature;\nimport com.pulumi.alicloud.arms.EnvFeatureArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultEnvFeature = new EnvFeature(\"defaultEnvFeature\", EnvFeatureArgs.builder()\n .envFeatureName(\"metric-agent\")\n .environmentId(defaultEnvironment.id())\n .featureVersion(\"1.1.17\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultEnvFeature:\n type: alicloud:arms:EnvFeature\n name: default\n properties:\n envFeatureName: metric-agent\n environmentId: ${defaultEnvironment.id}\n featureVersion: 1.1.17\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Env Feature can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envFeature:EnvFeature example \u003cenvironment_id\u003e:\u003cenv_feature_name\u003e\n```\n\n",
+ "description": "Provides a ARMS Env Feature resource. Feature of the arms environment.\n\nFor information about ARMS Env Feature and how to use it, see [What is Env Feature](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-installenvironmentfeature).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `${name}-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultEnvFeature = new alicloud.arms.EnvFeature(\"default\", {\n envFeatureName: \"metric-agent\",\n environmentId: defaultEnvironment.id,\n featureVersion: \"1.1.17\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"{name}-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_env_feature = alicloud.arms.EnvFeature(\"default\",\n env_feature_name=\"metric-agent\",\n environment_id=default_environment.id,\n feature_version=\"1.1.17\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultEnvFeature = new AliCloud.Arms.EnvFeature(\"default\", new()\n {\n EnvFeatureName = \"metric-agent\",\n EnvironmentId = defaultEnvironment.Id,\n FeatureVersion = \"1.1.17\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvFeature(ctx, \"default\", \u0026arms.EnvFeatureArgs{\nEnvFeatureName: pulumi.String(\"metric-agent\"),\nEnvironmentId: defaultEnvironment.ID(),\nFeatureVersion: pulumi.String(\"1.1.17\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvFeature;\nimport com.pulumi.alicloud.arms.EnvFeatureArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultEnvFeature = new EnvFeature(\"defaultEnvFeature\", EnvFeatureArgs.builder()\n .envFeatureName(\"metric-agent\")\n .environmentId(defaultEnvironment.id())\n .featureVersion(\"1.1.17\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultEnvFeature:\n type: alicloud:arms:EnvFeature\n name: default\n properties:\n envFeatureName: metric-agent\n environmentId: ${defaultEnvironment.id}\n featureVersion: 1.1.17\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Env Feature can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envFeature:EnvFeature example \u003cenvironment_id\u003e:\u003cenv_feature_name\u003e\n```\n\n",
"properties": {
"envFeatureName": {
"type": "string",
@@ -106704,7 +108557,7 @@
}
},
"alicloud:arms/envPodMonitor:EnvPodMonitor": {
- "description": "Provides a ARMS Env Pod Monitor resource. PodMonitor for the arms environment.\n\nFor information about ARMS Env Pod Monitor and how to use it, see [What is Env Pod Monitor](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvpodmonitor).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.n1\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyName,\n desiredSize: \"2\",\n});\nconst environment_cs = new alicloud.arms.Environment(\"environment-cs\", {\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ACK\",\n});\nconst defaultEnvPodMonitor = new alicloud.arms.EnvPodMonitor(\"default\", {\n aliyunLang: \"en\",\n environmentId: environment_cs.id,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.n1\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_name,\n desired_size=\"2\")\nenvironment_cs = alicloud.arms.Environment(\"environment-cs\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ACK\")\ndefault_env_pod_monitor = alicloud.arms.EnvPodMonitor(\"default\",\n aliyun_lang=\"en\",\n environment_id=environment_cs.id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.n1\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyName,\n DesiredSize = \"2\",\n });\n\n var environment_cs = new AliCloud.Arms.Environment(\"environment-cs\", new()\n {\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ACK\",\n });\n\n var defaultEnvPodMonitor = new AliCloud.Arms.EnvPodMonitor(\"default\", new()\n {\n AliyunLang = \"en\",\n EnvironmentId = environment_cs.Id,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.n1\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\nenvironment_cs, err := arms.NewEnvironment(ctx, \"environment-cs\", \u0026arms.EnvironmentArgs{\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ACK\"),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvPodMonitor(ctx, \"default\", \u0026arms.EnvPodMonitorArgs{\nAliyunLang: pulumi.String(\"en\"),\nEnvironmentId: environment_cs.ID(),\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n`),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvPodMonitor;\nimport com.pulumi.alicloud.arms.EnvPodMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.n1\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyName())\n .desiredSize(\"2\")\n .build());\n\n var environment_cs = new Environment(\"environment-cs\", EnvironmentArgs.builder()\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ACK\")\n .build());\n\n var defaultEnvPodMonitor = new EnvPodMonitor(\"defaultEnvPodMonitor\", EnvPodMonitorArgs.builder()\n .aliyunLang(\"en\")\n .environmentId(environment_cs.id())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyName}\n desiredSize: 2\n environment-cs:\n type: alicloud:arms:Environment\n properties:\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ACK\n defaultEnvPodMonitor:\n type: alicloud:arms:EnvPodMonitor\n name: default\n properties:\n aliyunLang: en\n environmentId: ${[\"environment-cs\"].id}\n configYaml: \"apiVersion: monitoring.coreos.com/v1\\nkind: PodMonitor\\nmetadata:\\n name: arms-admin-pm1\\n namespace: arms-prom\\n annotations:\\n arms.prometheus.io/discovery: 'true'\\n o11y.aliyun.com/addon-name: mysql\\n o11y.aliyun.com/addon-version: 1.0.2\\n o11y.aliyun.com/release-name: mysql2\\nspec:\\n selector:\\n matchLabels:\\n app: arms-prometheus-ack-arms-prometheus\\n release: arms-prometheus\\n namespaceSelector:\\n any: true \\n podMetricsEndpoints:\\n - interval: 30s\\n targetPort: 9335\\n path: /metrics\\n - interval: 11s\\n targetPort: 9335\\n path: /metric\\n\"\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.n1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Env Pod Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envPodMonitor:EnvPodMonitor example \u003cenvironment_id\u003e:\u003cnamespace\u003e:\u003cenv_pod_monitor_name\u003e\n```\n\n",
+ "description": "Provides a ARMS Env Pod Monitor resource. PodMonitor for the arms environment.\n\nFor information about ARMS Env Pod Monitor and how to use it, see [What is Env Pod Monitor](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvpodmonitor).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.n1\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyName,\n desiredSize: \"2\",\n});\nconst environment_cs = new alicloud.arms.Environment(\"environment-cs\", {\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ACK\",\n});\nconst defaultEnvPodMonitor = new alicloud.arms.EnvPodMonitor(\"default\", {\n aliyunLang: \"en\",\n environmentId: environment_cs.id,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.n1\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_name,\n desired_size=\"2\")\nenvironment_cs = alicloud.arms.Environment(\"environment-cs\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ACK\")\ndefault_env_pod_monitor = alicloud.arms.EnvPodMonitor(\"default\",\n aliyun_lang=\"en\",\n environment_id=environment_cs.id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.n1\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyName,\n DesiredSize = \"2\",\n });\n\n var environment_cs = new AliCloud.Arms.Environment(\"environment-cs\", new()\n {\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ACK\",\n });\n\n var defaultEnvPodMonitor = new AliCloud.Arms.EnvPodMonitor(\"default\", new()\n {\n AliyunLang = \"en\",\n EnvironmentId = environment_cs.Id,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.n1\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\nenvironment_cs, err := arms.NewEnvironment(ctx, \"environment-cs\", \u0026arms.EnvironmentArgs{\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ACK\"),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvPodMonitor(ctx, \"default\", \u0026arms.EnvPodMonitorArgs{\nAliyunLang: pulumi.String(\"en\"),\nEnvironmentId: environment_cs.ID(),\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n`),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvPodMonitor;\nimport com.pulumi.alicloud.arms.EnvPodMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.n1\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyName())\n .desiredSize(\"2\")\n .build());\n\n var environment_cs = new Environment(\"environment-cs\", EnvironmentArgs.builder()\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ACK\")\n .build());\n\n var defaultEnvPodMonitor = new EnvPodMonitor(\"defaultEnvPodMonitor\", EnvPodMonitorArgs.builder()\n .aliyunLang(\"en\")\n .environmentId(environment_cs.id())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: PodMonitor\nmetadata:\n name: arms-admin-pm1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.2\n o11y.aliyun.com/release-name: mysql2\nspec:\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n release: arms-prometheus\n namespaceSelector:\n any: true \n podMetricsEndpoints:\n - interval: 30s\n targetPort: 9335\n path: /metrics\n - interval: 11s\n targetPort: 9335\n path: /metric\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyName}\n desiredSize: 2\n environment-cs:\n type: alicloud:arms:Environment\n properties:\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ACK\n defaultEnvPodMonitor:\n type: alicloud:arms:EnvPodMonitor\n name: default\n properties:\n aliyunLang: en\n environmentId: ${[\"environment-cs\"].id}\n configYaml: \"apiVersion: monitoring.coreos.com/v1\\nkind: PodMonitor\\nmetadata:\\n name: arms-admin-pm1\\n namespace: arms-prom\\n annotations:\\n arms.prometheus.io/discovery: 'true'\\n o11y.aliyun.com/addon-name: mysql\\n o11y.aliyun.com/addon-version: 1.0.2\\n o11y.aliyun.com/release-name: mysql2\\nspec:\\n selector:\\n matchLabels:\\n app: arms-prometheus-ack-arms-prometheus\\n release: arms-prometheus\\n namespaceSelector:\\n any: true \\n podMetricsEndpoints:\\n - interval: 30s\\n targetPort: 9335\\n path: /metrics\\n - interval: 11s\\n targetPort: 9335\\n path: /metric\\n\"\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.n1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Env Pod Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envPodMonitor:EnvPodMonitor example \u003cenvironment_id\u003e:\u003cnamespace\u003e:\u003cenv_pod_monitor_name\u003e\n```\n\n",
"properties": {
"aliyunLang": {
"type": "string",
@@ -106790,7 +108643,7 @@
}
},
"alicloud:arms/envServiceMonitor:EnvServiceMonitor": {
- "description": "Provides a ARMS Env Service Monitor resource. ServiceMonitor for the arms environment.\n\nFor information about ARMS Env Service Monitor and how to use it, see [What is Env Service Monitor](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvservicemonitor).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.n1\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultEnvServiceMonitor = new alicloud.arms.EnvServiceMonitor(\"default\", {\n environmentId: defaultEnvironment.id,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n`,\n aliyunLang: \"zh\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.n1\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_env_service_monitor = alicloud.arms.EnvServiceMonitor(\"default\",\n environment_id=default_environment.id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n\"\"\",\n aliyun_lang=\"zh\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.n1\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultEnvServiceMonitor = new AliCloud.Arms.EnvServiceMonitor(\"default\", new()\n {\n EnvironmentId = defaultEnvironment.Id,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n\",\n AliyunLang = \"zh\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.n1\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvServiceMonitor(ctx, \"default\", \u0026arms.EnvServiceMonitorArgs{\nEnvironmentId: defaultEnvironment.ID(),\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n`),\nAliyunLang: pulumi.String(\"zh\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvServiceMonitor;\nimport com.pulumi.alicloud.arms.EnvServiceMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.n1\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultEnvServiceMonitor = new EnvServiceMonitor(\"defaultEnvServiceMonitor\", EnvServiceMonitorArgs.builder()\n .environmentId(defaultEnvironment.id())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n \"\"\")\n .aliyunLang(\"zh\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultEnvServiceMonitor:\n type: alicloud:arms:EnvServiceMonitor\n name: default\n properties:\n environmentId: ${defaultEnvironment.id}\n configYaml: |\n apiVersion: monitoring.coreos.com/v1\n kind: ServiceMonitor\n metadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\n spec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n aliyunLang: zh\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.n1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Env Service Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envServiceMonitor:EnvServiceMonitor example \u003cenvironment_id\u003e:\u003cnamespace\u003e:\u003cenv_service_monitor_name\u003e\n```\n\n",
+ "description": "Provides a ARMS Env Service Monitor resource. ServiceMonitor for the arms environment.\n\nFor information about ARMS Env Service Monitor and how to use it, see [What is Env Service Monitor](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvservicemonitor).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.n1\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\nconst defaultEnvServiceMonitor = new alicloud.arms.EnvServiceMonitor(\"default\", {\n environmentId: defaultEnvironment.id,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n`,\n aliyunLang: \"zh\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.n1\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\ndefault_env_service_monitor = alicloud.arms.EnvServiceMonitor(\"default\",\n environment_id=default_environment.id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n\"\"\",\n aliyun_lang=\"zh\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.n1\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultEnvServiceMonitor = new AliCloud.Arms.EnvServiceMonitor(\"default\", new()\n {\n EnvironmentId = defaultEnvironment.Id,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n\",\n AliyunLang = \"zh\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.n1\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultEnvironment, err := arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvServiceMonitor(ctx, \"default\", \u0026arms.EnvServiceMonitorArgs{\nEnvironmentId: defaultEnvironment.ID(),\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n`),\nAliyunLang: pulumi.String(\"zh\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport com.pulumi.alicloud.arms.EnvServiceMonitor;\nimport com.pulumi.alicloud.arms.EnvServiceMonitorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.n1\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultEnvServiceMonitor = new EnvServiceMonitor(\"defaultEnvServiceMonitor\", EnvServiceMonitorArgs.builder()\n .environmentId(defaultEnvironment.id())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\nspec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n \"\"\")\n .aliyunLang(\"zh\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\n defaultEnvServiceMonitor:\n type: alicloud:arms:EnvServiceMonitor\n name: default\n properties:\n environmentId: ${defaultEnvironment.id}\n configYaml: |\n apiVersion: monitoring.coreos.com/v1\n kind: ServiceMonitor\n metadata:\n name: arms-admin1\n namespace: arms-prom\n annotations:\n arms.prometheus.io/discovery: 'true'\n o11y.aliyun.com/addon-name: mysql\n o11y.aliyun.com/addon-version: 1.0.1\n o11y.aliyun.com/release-name: mysql1\n spec:\n endpoints:\n - interval: 30s\n port: operator\n path: /metrics\n - interval: 10s\n port: operator1\n path: /metrics\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: arms-prometheus-ack-arms-prometheus\n aliyunLang: zh\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.n1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Env Service Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/envServiceMonitor:EnvServiceMonitor example \u003cenvironment_id\u003e:\u003cnamespace\u003e:\u003cenv_service_monitor_name\u003e\n```\n\n",
"properties": {
"aliyunLang": {
"type": "string",
@@ -106876,7 +108729,7 @@
}
},
"alicloud:arms/environment:Environment": {
- "description": "Provides a ARMS Environment resource. The arms environment.\n\nFor information about ARMS Environment and how to use it, see [What is Environment](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvironment).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Environment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/environment:Environment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ARMS Environment resource. The arms environment.\n\nFor information about ARMS Environment and how to use it, see [What is Environment](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createenvironment).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n description: name,\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n description: name,\n vpcId: vpc.id,\n vswitchName: name,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n cidrBlock: vpc.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst _default = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `terraform-example-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [_default.apply(_default =\u003e _default.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultEnvironment = new alicloud.arms.Environment(\"default\", {\n bindResourceId: defaultNodePool.clusterId,\n environmentSubType: \"ManagedKubernetes\",\n environmentType: \"CS\",\n environmentName: `terraform-example-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nvpc = alicloud.vpc.Network(\"vpc\",\n description=name,\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n description=name,\n vpc_id=vpc.id,\n vswitch_name=name,\n zone_id=enhanced.zones[0].zone_id,\n cidr_block=vpc.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result))\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"terraform-example-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_environment = alicloud.arms.Environment(\"default\",\n bind_resource_id=default_node_pool.cluster_id,\n environment_sub_type=\"ManagedKubernetes\",\n environment_type=\"CS\",\n environment_name=f\"terraform-example-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n Description = name,\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n Description = name,\n VpcId = vpc.Id,\n VswitchName = name,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CidrBlock = vpc.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"terraform-example-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultEnvironment = new AliCloud.Arms.Environment(\"default\", new()\n {\n BindResourceId = defaultNodePool.ClusterId,\n EnvironmentSubType = \"ManagedKubernetes\",\n EnvironmentType = \"CS\",\n EnvironmentName = $\"terraform-example-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nDescription: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nDescription: pulumi.String(name),\nVpcId: vpc.ID(),\nVswitchName: pulumi.String(name),\nZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\nCidrBlock: pulumi.String(vpc.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\n_default := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(_default.ApplyT(func(_default ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026default.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewEnvironment(ctx, \"default\", \u0026arms.EnvironmentArgs{\nBindResourceId: defaultNodePool.ClusterId,\nEnvironmentSubType: pulumi.String(\"ManagedKubernetes\"),\nEnvironmentType: pulumi.String(\"CS\"),\nEnvironmentName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Environment;\nimport com.pulumi.alicloud.arms.EnvironmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .description(name)\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .description(name)\n .vpcId(vpc.id())\n .vswitchName(name)\n .zoneId(enhanced.zones()[0].zoneId())\n .cidrBlock(vpc.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var default = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(default_.applyValue(_default_ -\u003e _default_.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultEnvironment = new Environment(\"defaultEnvironment\", EnvironmentArgs.builder()\n .bindResourceId(defaultNodePool.clusterId())\n .environmentSubType(\"ManagedKubernetes\")\n .environmentType(\"CS\")\n .environmentName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n vpc:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${vpc.id}\n vswitchName: ${name}\n zoneId: ${enhanced.zones[0].zoneId}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${vpc.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: terraform-example-${defaultInteger.result}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${default.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultEnvironment:\n type: alicloud:arms:Environment\n name: default\n properties:\n bindResourceId: ${defaultNodePool.clusterId}\n environmentSubType: ManagedKubernetes\n environmentType: CS\n environmentName: terraform-example-${defaultInteger.result}\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Environment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/environment:Environment example \u003cid\u003e\n```\n\n",
"properties": {
"aliyunLang": {
"type": "string",
@@ -107033,7 +108886,7 @@
}
},
"alicloud:arms/grafanaWorkspace:GrafanaWorkspace": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Grafana Workspace resource.\n\n\n\nFor information about Application Real-Time Monitoring Service (ARMS) Grafana Workspace and how to use it, see [What is Grafana Workspace](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/ListGrafanaWorkspace).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGrafanaWorkspace = new alicloud.arms.GrafanaWorkspace(\"default\", {\n grafanaVersion: \"9.0.x\",\n description: name,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n grafanaWorkspaceEdition: \"standard\",\n grafanaWorkspaceName: name,\n tags: {\n Created: \"tf\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_grafana_workspace = alicloud.arms.GrafanaWorkspace(\"default\",\n grafana_version=\"9.0.x\",\n description=name,\n resource_group_id=default.ids[0],\n grafana_workspace_edition=\"standard\",\n grafana_workspace_name=name,\n tags={\n \"Created\": \"tf\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGrafanaWorkspace = new AliCloud.Arms.GrafanaWorkspace(\"default\", new()\n {\n GrafanaVersion = \"9.0.x\",\n Description = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n GrafanaWorkspaceEdition = \"standard\",\n GrafanaWorkspaceName = name,\n Tags = \n {\n { \"Created\", \"tf\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewGrafanaWorkspace(ctx, \"default\", \u0026arms.GrafanaWorkspaceArgs{\n\t\t\tGrafanaVersion: pulumi.String(\"9.0.x\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tGrafanaWorkspaceEdition: pulumi.String(\"standard\"),\n\t\t\tGrafanaWorkspaceName: pulumi.String(name),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"tf\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.GrafanaWorkspace;\nimport com.pulumi.alicloud.arms.GrafanaWorkspaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultGrafanaWorkspace = new GrafanaWorkspace(\"defaultGrafanaWorkspace\", GrafanaWorkspaceArgs.builder()\n .grafanaVersion(\"9.0.x\")\n .description(name)\n .resourceGroupId(default_.ids()[0])\n .grafanaWorkspaceEdition(\"standard\")\n .grafanaWorkspaceName(name)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"tf\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultGrafanaWorkspace:\n type: alicloud:arms:GrafanaWorkspace\n name: default\n properties:\n grafanaVersion: 9.0.x\n description: ${name}\n resourceGroupId: ${default.ids[0]}\n grafanaWorkspaceEdition: standard\n grafanaWorkspaceName: ${name}\n tags:\n Created: tf\n For: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Grafana Workspace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/grafanaWorkspace:GrafanaWorkspace example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Grafana Workspace resource.\n\n\n\nFor information about Application Real-Time Monitoring Service (ARMS) Grafana Workspace and how to use it, see [What is Grafana Workspace](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/ListGrafanaWorkspace).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGrafanaWorkspace = new alicloud.arms.GrafanaWorkspace(\"default\", {\n grafanaVersion: \"9.0.x\",\n description: name,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n grafanaWorkspaceEdition: \"standard\",\n grafanaWorkspaceName: name,\n tags: {\n Created: \"tf\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_grafana_workspace = alicloud.arms.GrafanaWorkspace(\"default\",\n grafana_version=\"9.0.x\",\n description=name,\n resource_group_id=default.ids[0],\n grafana_workspace_edition=\"standard\",\n grafana_workspace_name=name,\n tags={\n \"Created\": \"tf\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGrafanaWorkspace = new AliCloud.Arms.GrafanaWorkspace(\"default\", new()\n {\n GrafanaVersion = \"9.0.x\",\n Description = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n GrafanaWorkspaceEdition = \"standard\",\n GrafanaWorkspaceName = name,\n Tags = \n {\n { \"Created\", \"tf\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewGrafanaWorkspace(ctx, \"default\", \u0026arms.GrafanaWorkspaceArgs{\n\t\t\tGrafanaVersion: pulumi.String(\"9.0.x\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tGrafanaWorkspaceEdition: pulumi.String(\"standard\"),\n\t\t\tGrafanaWorkspaceName: pulumi.String(name),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"tf\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.GrafanaWorkspace;\nimport com.pulumi.alicloud.arms.GrafanaWorkspaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultGrafanaWorkspace = new GrafanaWorkspace(\"defaultGrafanaWorkspace\", GrafanaWorkspaceArgs.builder()\n .grafanaVersion(\"9.0.x\")\n .description(name)\n .resourceGroupId(default_.ids()[0])\n .grafanaWorkspaceEdition(\"standard\")\n .grafanaWorkspaceName(name)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"tf\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultGrafanaWorkspace:\n type: alicloud:arms:GrafanaWorkspace\n name: default\n properties:\n grafanaVersion: 9.0.x\n description: ${name}\n resourceGroupId: ${default.ids[0]}\n grafanaWorkspaceEdition: standard\n grafanaWorkspaceName: ${name}\n tags:\n Created: tf\n For: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Grafana Workspace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/grafanaWorkspace:GrafanaWorkspace example \u003cid\u003e\n```\n\n",
"properties": {
"accountNumber": {
"type": "string",
@@ -107247,7 +109100,7 @@
}
},
"alicloud:arms/integrationExporter:IntegrationExporter": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Integration Exporter resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Integration Exporter and how to use it, see [What is Integration Exporter](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-addprometheusintegration).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\nconst defaultIntegrationExporter = new alicloud.arms.IntegrationExporter(\"default\", {\n clusterId: defaultPrometheus.id,\n integrationType: \"kafka\",\n param: \"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\ndefault_integration_exporter = alicloud.arms.IntegrationExporter(\"default\",\n cluster_id=default_prometheus.id,\n integration_type=\"kafka\",\n param=\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n var defaultIntegrationExporter = new AliCloud.Arms.IntegrationExporter(\"default\", new()\n {\n ClusterId = defaultPrometheus.Id,\n IntegrationType = \"kafka\",\n Param = \"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewIntegrationExporter(ctx, \"default\", \u0026arms.IntegrationExporterArgs{\n\t\t\tClusterId: defaultPrometheus.ID(),\n\t\t\tIntegrationType: pulumi.String(\"kafka\"),\n\t\t\tParam: pulumi.String(\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.IntegrationExporter;\nimport com.pulumi.alicloud.arms.IntegrationExporterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n var defaultIntegrationExporter = new IntegrationExporter(\"defaultIntegrationExporter\", IntegrationExporterArgs.builder()\n .clusterId(defaultPrometheus.id())\n .integrationType(\"kafka\")\n .param(\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Integration Exporter can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/integrationExporter:IntegrationExporter example \u003ccluster_id\u003e:\u003cintegration_type\u003e:\u003cinstance_id\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Integration Exporter resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Integration Exporter and how to use it, see [What is Integration Exporter](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-addprometheusintegration).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\nconst defaultIntegrationExporter = new alicloud.arms.IntegrationExporter(\"default\", {\n clusterId: defaultPrometheus.id,\n integrationType: \"kafka\",\n param: \"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\ndefault_integration_exporter = alicloud.arms.IntegrationExporter(\"default\",\n cluster_id=default_prometheus.id,\n integration_type=\"kafka\",\n param=\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n var defaultIntegrationExporter = new AliCloud.Arms.IntegrationExporter(\"default\", new()\n {\n ClusterId = defaultPrometheus.Id,\n IntegrationType = \"kafka\",\n Param = \"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewIntegrationExporter(ctx, \"default\", \u0026arms.IntegrationExporterArgs{\n\t\t\tClusterId: defaultPrometheus.ID(),\n\t\t\tIntegrationType: pulumi.String(\"kafka\"),\n\t\t\tParam: pulumi.String(\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.IntegrationExporter;\nimport com.pulumi.alicloud.arms.IntegrationExporterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n var defaultIntegrationExporter = new IntegrationExporter(\"defaultIntegrationExporter\", IntegrationExporterArgs.builder()\n .clusterId(defaultPrometheus.id())\n .integrationType(\"kafka\")\n .param(\"{\\\"tls_insecure-skip-tls-verify\\\":\\\"none=tls.insecure-skip-tls-verify\\\",\\\"tls_enabled\\\":\\\"none=tls.enabled\\\",\\\"sasl_mechanism\\\":\\\"\\\",\\\"name\\\":\\\"kafka1\\\",\\\"sasl_enabled\\\":\\\"none=sasl.enabled\\\",\\\"ip_ports\\\":\\\"abc:888\\\",\\\"scrape_interval\\\":30,\\\"version\\\":\\\"0.10.1.0\\\"}\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Integration Exporter can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/integrationExporter:IntegrationExporter example \u003ccluster_id\u003e:\u003cintegration_type\u003e:\u003cinstance_id\u003e\n```\n\n",
"properties": {
"clusterId": {
"type": "string",
@@ -107319,7 +109172,7 @@
}
},
"alicloud:arms/prometheus:Prometheus": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Prometheus resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Prometheus and how to use it, see [What is Prometheus](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createprometheusinstance).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Prometheus can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheus:Prometheus example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Prometheus resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Prometheus and how to use it, see [What is Prometheus](https://www.alibabacloud.com/help/en/arms/developer-reference/api-arms-2019-08-08-createprometheusinstance).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Prometheus can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheus:Prometheus example \u003cid\u003e\n```\n\n",
"properties": {
"clusterId": {
"type": "string",
@@ -107484,7 +109337,7 @@
}
},
"alicloud:arms/prometheusAlertRule:PrometheusAlertRule": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Prometheus Alert Rule resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Prometheus Alert Rule and how to use it, see [What is Prometheus Alert Rule](https://www.alibabacloud.com/help/en/arms/prometheus-monitoring/api-arms-2019-08-08-createprometheusalertrule).\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"remote-write\",\n clusterName: `${name}-${_default.result}`,\n grafanaInstanceId: \"free\",\n});\nconst example = new alicloud.arms.PrometheusAlertRule(\"example\", {\n clusterId: defaultPrometheus.clusterId,\n duration: \"1\",\n expression: \"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n message: \"node available memory is less than 10%\",\n prometheusAlertRuleName: name,\n notifyType: \"ALERT_MANAGER\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"remote-write\",\n cluster_name=f\"{name}-{default['result']}\",\n grafana_instance_id=\"free\")\nexample = alicloud.arms.PrometheusAlertRule(\"example\",\n cluster_id=default_prometheus.cluster_id,\n duration=\"1\",\n expression=\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n message=\"node available memory is less than 10%\",\n prometheus_alert_rule_name=name,\n notify_type=\"ALERT_MANAGER\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"remote-write\",\n ClusterName = $\"{name}-{@default.Result}\",\n GrafanaInstanceId = \"free\",\n });\n\n var example = new AliCloud.Arms.PrometheusAlertRule(\"example\", new()\n {\n ClusterId = defaultPrometheus.ClusterId,\n Duration = \"1\",\n Expression = \"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n Message = \"node available memory is less than 10%\",\n PrometheusAlertRuleName = name,\n NotifyType = \"ALERT_MANAGER\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"remote-write\"),\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewPrometheusAlertRule(ctx, \"example\", \u0026arms.PrometheusAlertRuleArgs{\n\t\t\tClusterId: defaultPrometheus.ClusterId,\n\t\t\tDuration: pulumi.String(\"1\"),\n\t\t\tExpression: pulumi.String(\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\"),\n\t\t\tMessage: pulumi.String(\"node available memory is less than 10%\"),\n\t\t\tPrometheusAlertRuleName: pulumi.String(name),\n\t\t\tNotifyType: pulumi.String(\"ALERT_MANAGER\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.PrometheusAlertRule;\nimport com.pulumi.alicloud.arms.PrometheusAlertRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"remote-write\")\n .clusterName(String.format(\"%s-%s\", name,default_.result()))\n .grafanaInstanceId(\"free\")\n .build());\n\n var example = new PrometheusAlertRule(\"example\", PrometheusAlertRuleArgs.builder()\n .clusterId(defaultPrometheus.clusterId())\n .duration(\"1\")\n .expression(\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\")\n .message(\"node available memory is less than 10%\")\n .prometheusAlertRuleName(name)\n .notifyType(\"ALERT_MANAGER\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultPrometheus:\n type: alicloud:arms:Prometheus\n name: default\n properties:\n clusterType: remote-write\n clusterName: ${name}-${default.result}\n grafanaInstanceId: free\n example:\n type: alicloud:arms:PrometheusAlertRule\n properties:\n clusterId: ${defaultPrometheus.clusterId}\n duration: 1\n expression: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\n message: node available memory is less than 10%\n prometheusAlertRuleName: ${name}\n notifyType: ALERT_MANAGER\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Prometheus Alert Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheusAlertRule:PrometheusAlertRule example \u003ccluster_id\u003e:\u003cprometheus_alert_rule_id\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Prometheus Alert Rule resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Prometheus Alert Rule and how to use it, see [What is Prometheus Alert Rule](https://www.alibabacloud.com/help/en/arms/prometheus-monitoring/api-arms-2019-08-08-createprometheusalertrule).\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"remote-write\",\n clusterName: `${name}-${_default.result}`,\n grafanaInstanceId: \"free\",\n});\nconst example = new alicloud.arms.PrometheusAlertRule(\"example\", {\n clusterId: defaultPrometheus.clusterId,\n duration: \"1\",\n expression: \"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n message: \"node available memory is less than 10%\",\n prometheusAlertRuleName: name,\n notifyType: \"ALERT_MANAGER\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"remote-write\",\n cluster_name=f\"{name}-{default['result']}\",\n grafana_instance_id=\"free\")\nexample = alicloud.arms.PrometheusAlertRule(\"example\",\n cluster_id=default_prometheus.cluster_id,\n duration=\"1\",\n expression=\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n message=\"node available memory is less than 10%\",\n prometheus_alert_rule_name=name,\n notify_type=\"ALERT_MANAGER\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"remote-write\",\n ClusterName = $\"{name}-{@default.Result}\",\n GrafanaInstanceId = \"free\",\n });\n\n var example = new AliCloud.Arms.PrometheusAlertRule(\"example\", new()\n {\n ClusterId = defaultPrometheus.ClusterId,\n Duration = \"1\",\n Expression = \"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\",\n Message = \"node available memory is less than 10%\",\n PrometheusAlertRuleName = name,\n NotifyType = \"ALERT_MANAGER\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"remote-write\"),\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewPrometheusAlertRule(ctx, \"example\", \u0026arms.PrometheusAlertRuleArgs{\n\t\t\tClusterId: defaultPrometheus.ClusterId,\n\t\t\tDuration: pulumi.String(\"1\"),\n\t\t\tExpression: pulumi.String(\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\"),\n\t\t\tMessage: pulumi.String(\"node available memory is less than 10%\"),\n\t\t\tPrometheusAlertRuleName: pulumi.String(name),\n\t\t\tNotifyType: pulumi.String(\"ALERT_MANAGER\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.PrometheusAlertRule;\nimport com.pulumi.alicloud.arms.PrometheusAlertRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"remote-write\")\n .clusterName(String.format(\"%s-%s\", name,default_.result()))\n .grafanaInstanceId(\"free\")\n .build());\n\n var example = new PrometheusAlertRule(\"example\", PrometheusAlertRuleArgs.builder()\n .clusterId(defaultPrometheus.clusterId())\n .duration(\"1\")\n .expression(\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\")\n .message(\"node available memory is less than 10%\")\n .prometheusAlertRuleName(name)\n .notifyType(\"ALERT_MANAGER\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultPrometheus:\n type: alicloud:arms:Prometheus\n name: default\n properties:\n clusterType: remote-write\n clusterName: ${name}-${default.result}\n grafanaInstanceId: free\n example:\n type: alicloud:arms:PrometheusAlertRule\n properties:\n clusterId: ${defaultPrometheus.clusterId}\n duration: 1\n expression: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 \u003c 10\n message: node available memory is less than 10%\n prometheusAlertRuleName: ${name}\n notifyType: ALERT_MANAGER\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Prometheus Alert Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheusAlertRule:PrometheusAlertRule example \u003ccluster_id\u003e:\u003cprometheus_alert_rule_id\u003e\n```\n\n",
"properties": {
"annotations": {
"type": "array",
@@ -107680,7 +109533,7 @@
}
},
"alicloud:arms/prometheusMonitoring:PrometheusMonitoring": {
- "description": "Provides a ARMS Prometheus Monitoring resource. Including serviceMonitor, podMonitor, customJob, probe and other four types of monitoring.\n\nFor information about ARMS Prometheus Monitoring and how to use it, see [What is Prometheus Monitoring](https://www.alibabacloud.com/help/en/arms/prometheus-monitoring/api-arms-2019-08-08-createprometheusmonitoring).\n\n\u003e **NOTE:** Available since v1.209.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n vpcId: defaultNetwork.id,\n cidrBlock: defaultNetwork.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst defaultGetInstanceTypes = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `${name}-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [defaultGetInstanceTypes.apply(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"aliyun-cs\",\n grafanaInstanceId: \"free\",\n clusterId: defaultNodePool.clusterId,\n});\nconst defaultPrometheusMonitoring = new alicloud.arms.PrometheusMonitoring(\"default\", {\n status: \"run\",\n type: \"serviceMonitor\",\n clusterId: defaultPrometheus.clusterId,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n vpc_id=default_network.id,\n cidr_block=default_network.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result),\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault_get_instance_types = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"{name}-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"aliyun-cs\",\n grafana_instance_id=\"free\",\n cluster_id=default_node_pool.cluster_id)\ndefault_prometheus_monitoring = alicloud.arms.PrometheusMonitoring(\"default\",\n status=\"run\",\n type=\"serviceMonitor\",\n cluster_id=default_prometheus.cluster_id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = defaultNetwork.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"aliyun-cs\",\n GrafanaInstanceId = \"free\",\n ClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultPrometheusMonitoring = new AliCloud.Arms.PrometheusMonitoring(\"default\", new()\n {\n Status = \"run\",\n Type = \"serviceMonitor\",\n ClusterId = defaultPrometheus.ClusterId,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\n_, err = resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(defaultNetwork.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.String(name),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(defaultGetInstanceTypes.ApplyT(func(defaultGetInstanceTypes ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026defaultGetInstanceTypes.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\nClusterType: pulumi.String(\"aliyun-cs\"),\nGrafanaInstanceId: pulumi.String(\"free\"),\nClusterId: defaultNodePool.ClusterId,\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewPrometheusMonitoring(ctx, \"default\", \u0026arms.PrometheusMonitoringArgs{\nStatus: pulumi.String(\"run\"),\nType: pulumi.String(\"serviceMonitor\"),\nClusterId: defaultPrometheus.ClusterId,\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n`),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.PrometheusMonitoring;\nimport com.pulumi.alicloud.arms.PrometheusMonitoringArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(defaultNetwork.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var defaultGetInstanceTypes = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(defaultGetInstanceTypes.applyValue(_defaultGetInstanceTypes -\u003e _defaultGetInstanceTypes.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"aliyun-cs\")\n .grafanaInstanceId(\"free\")\n .clusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultPrometheusMonitoring = new PrometheusMonitoring(\"defaultPrometheusMonitoring\", PrometheusMonitoringArgs.builder()\n .status(\"run\")\n .type(\"serviceMonitor\")\n .clusterId(defaultPrometheus.clusterId())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${defaultNetwork.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: ${name}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultPrometheus:\n type: alicloud:arms:Prometheus\n name: default\n properties:\n clusterType: aliyun-cs\n grafanaInstanceId: free\n clusterId: ${defaultNodePool.clusterId}\n defaultPrometheusMonitoring:\n type: alicloud:arms:PrometheusMonitoring\n name: default\n properties:\n status: run\n type: serviceMonitor\n clusterId: ${defaultPrometheus.clusterId}\n configYaml: |\n apiVersion: monitoring.coreos.com/v1\n kind: ServiceMonitor\n metadata:\n name: tomcat-demo\n namespace: default\n spec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Prometheus Monitoring can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheusMonitoring:PrometheusMonitoring example \u003ccluster_id\u003e:\u003cmonitoring_name\u003e:\u003ctype\u003e\n```\n\n",
+ "description": "Provides a ARMS Prometheus Monitoring resource. Including serviceMonitor, podMonitor, customJob, probe and other four types of monitoring.\n\nFor information about ARMS Prometheus Monitoring and how to use it, see [What is Prometheus Monitoring](https://www.alibabacloud.com/help/en/arms/prometheus-monitoring/api-arms-2019-08-08-createprometheusmonitoring).\n\n\u003e **NOTE:** Available since v1.209.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: name,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n vpcId: defaultNetwork.id,\n cidrBlock: defaultNetwork.cidrBlock.apply(cidrBlock =\u003e std.cidrsubnetOutput({\n input: cidrBlock,\n newbits: 8,\n netnum: 8,\n })).apply(invoke =\u003e invoke.result),\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSnapshotPolicy = new alicloud.ecs.SnapshotPolicy(\"default\", {\n name: name,\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst defaultGetInstanceTypes = vswitch.zoneId.apply(zoneId =\u003e alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: zoneId,\n cpuCoreCount: 2,\n memorySize: 4,\n kubernetesNodeRole: \"Worker\",\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n version: \"1.24.6-aliyun.1\",\n newNatGateway: true,\n nodeCidrMask: 26,\n proxyMode: \"ipvs\",\n serviceCidr: \"172.23.0.0/16\",\n podCidr: \"10.95.0.0/16\",\n workerVswitchIds: [vswitch.id],\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `${name}-${defaultInteger.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [vswitch.id],\n instanceTypes: [defaultGetInstanceTypes.apply(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"2\",\n});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"aliyun-cs\",\n grafanaInstanceId: \"free\",\n clusterId: defaultNodePool.clusterId,\n});\nconst defaultPrometheusMonitoring = new alicloud.arms.PrometheusMonitoring(\"default\", {\n status: \"run\",\n type: \"serviceMonitor\",\n clusterId: defaultPrometheus.clusterId,\n configYaml: `apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=name)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n vpc_id=default_network.id,\n cidr_block=default_network.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,\n newbits=8,\n netnum=8)).apply(lambda invoke: invoke.result),\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_snapshot_policy = alicloud.ecs.SnapshotPolicy(\"default\",\n name=name,\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\ndefault_get_instance_types = vswitch.zone_id.apply(lambda zone_id: alicloud.ecs.get_instance_types_output(availability_zone=zone_id,\n cpu_core_count=2,\n memory_size=4,\n kubernetes_node_role=\"Worker\",\n instance_type_family=\"ecs.sn1ne\"))\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n version=\"1.24.6-aliyun.1\",\n new_nat_gateway=True,\n node_cidr_mask=26,\n proxy_mode=\"ipvs\",\n service_cidr=\"172.23.0.0/16\",\n pod_cidr=\"10.95.0.0/16\",\n worker_vswitch_ids=[vswitch.id])\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"{name}-{default_integer['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[vswitch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"2\")\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"aliyun-cs\",\n grafana_instance_id=\"free\",\n cluster_id=default_node_pool.cluster_id)\ndefault_prometheus_monitoring = alicloud.arms.PrometheusMonitoring(\"default\",\n status=\"run\",\n type=\"serviceMonitor\",\n cluster_id=default_prometheus.cluster_id,\n config_yaml=\"\"\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = name,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = defaultNetwork.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrsubnet.Invoke(new()\n {\n Input = cidrBlock,\n Newbits = 8,\n Netnum = 8,\n })).Apply(invoke =\u003e invoke.Result),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSnapshotPolicy = new AliCloud.Ecs.SnapshotPolicy(\"default\", new()\n {\n Name = name,\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = vswitch.ZoneId,\n CpuCoreCount = 2,\n MemorySize = 4,\n KubernetesNodeRole = \"Worker\",\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n Version = \"1.24.6-aliyun.1\",\n NewNatGateway = true,\n NodeCidrMask = 26,\n ProxyMode = \"ipvs\",\n ServiceCidr = \"172.23.0.0/16\",\n PodCidr = \"10.95.0.0/16\",\n WorkerVswitchIds = new[]\n {\n vswitch.Id,\n },\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n vswitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"2\",\n });\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"aliyun-cs\",\n GrafanaInstanceId = \"free\",\n ClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultPrometheusMonitoring = new AliCloud.Arms.PrometheusMonitoring(\"default\", new()\n {\n Status = \"run\",\n Type = \"serviceMonitor\",\n ClusterId = defaultPrometheus.ClusterId,\n ConfigYaml = @\"apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\n_, err = resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\nVpcName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\nInput: cidrBlock,\nNewbits: 8,\nNetnum: 8,\n}, nil)\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(defaultNetwork.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewSnapshotPolicy(ctx, \"default\", \u0026ecs.SnapshotPolicyArgs{\nName: pulumi.String(name),\nRepeatWeekdays: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"2\"),\npulumi.String(\"3\"),\n},\nRetentionDays: pulumi.Int(-1),\nTimePoints: pulumi.StringArray{\npulumi.String(\"1\"),\npulumi.String(\"22\"),\npulumi.String(\"23\"),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes := vswitch.ZoneId.ApplyT(func(zoneId string) (ecs.GetInstanceTypesResult, error) {\nreturn ecs.GetInstanceTypesResult(interface{}(ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(pulumi.StringRef(zoneId)),\nCpuCoreCount: pulumi.IntRef(pulumi.IntRef(int(2))),\nMemorySize: pulumi.Float64Ref(pulumi.Float64Ref(4)),\nKubernetesNodeRole: pulumi.StringRef(pulumi.StringRef(\"Worker\")),\nInstanceTypeFamily: pulumi.StringRef(pulumi.StringRef(\"ecs.sn1ne\")),\n}, nil))), nil\n}).(ecs.GetInstanceTypesResultOutput)\ndefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\nName: pulumi.String(name),\nClusterSpec: pulumi.String(\"ack.pro.small\"),\nVersion: pulumi.String(\"1.24.6-aliyun.1\"),\nNewNatGateway: pulumi.Bool(true),\nNodeCidrMask: pulumi.Int(26),\nProxyMode: pulumi.String(\"ipvs\"),\nServiceCidr: pulumi.String(\"172.23.0.0/16\"),\nPodCidr: pulumi.String(\"10.95.0.0/16\"),\nWorkerVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\n})\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMax: 99999,\nMin: 10000,\n})\nif err != nil {\nreturn err\n}\ndefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\nKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\nNodePoolName: pulumi.String(\"desired_size\"),\nClusterId: defaultManagedKubernetes.ID(),\nVswitchIds: pulumi.StringArray{\nvswitch.ID(),\n},\nInstanceTypes: pulumi.StringArray{\npulumi.String(defaultGetInstanceTypes.ApplyT(func(defaultGetInstanceTypes ecs.GetInstanceTypesResult) (*string, error) {\nreturn \u0026defaultGetInstanceTypes.InstanceTypes[0].Id, nil\n}).(pulumi.StringPtrOutput)),\n},\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(40),\nKeyName: defaultKeyPair.KeyPairName,\nDesiredSize: pulumi.String(\"2\"),\n})\nif err != nil {\nreturn err\n}\ndefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\nClusterType: pulumi.String(\"aliyun-cs\"),\nGrafanaInstanceId: pulumi.String(\"free\"),\nClusterId: defaultNodePool.ClusterId,\n})\nif err != nil {\nreturn err\n}\n_, err = arms.NewPrometheusMonitoring(ctx, \"default\", \u0026arms.PrometheusMonitoringArgs{\nStatus: pulumi.String(\"run\"),\nType: pulumi.String(\"serviceMonitor\"),\nClusterId: defaultPrometheus.ClusterId,\nConfigYaml: pulumi.String(`apiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n`),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.PrometheusMonitoring;\nimport com.pulumi.alicloud.arms.PrometheusMonitoringArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(name)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(defaultNetwork.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(_cidrBlock)\n .newbits(8)\n .netnum(8)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSnapshotPolicy = new SnapshotPolicy(\"defaultSnapshotPolicy\", SnapshotPolicyArgs.builder()\n .name(name)\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n final var defaultGetInstanceTypes = vswitch.zoneId().applyValue(_zoneId -\u003e EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(_zoneId)\n .cpuCoreCount(2)\n .memorySize(4)\n .kubernetesNodeRole(\"Worker\")\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build()));\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .version(\"1.24.6-aliyun.1\")\n .newNatGateway(true)\n .nodeCidrMask(26)\n .proxyMode(\"ipvs\")\n .serviceCidr(\"172.23.0.0/16\")\n .podCidr(\"10.95.0.0/16\")\n .workerVswitchIds(vswitch.id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(vswitch.id())\n .instanceTypes(defaultGetInstanceTypes.applyValue(_defaultGetInstanceTypes -\u003e _defaultGetInstanceTypes.instanceTypes()[0].id()))\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"2\")\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"aliyun-cs\")\n .grafanaInstanceId(\"free\")\n .clusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultPrometheusMonitoring = new PrometheusMonitoring(\"defaultPrometheusMonitoring\", PrometheusMonitoringArgs.builder()\n .status(\"run\")\n .type(\"serviceMonitor\")\n .clusterId(defaultPrometheus.clusterId())\n .configYaml(\"\"\"\napiVersion: monitoring.coreos.com/v1\nkind: ServiceMonitor\nmetadata:\n name: tomcat-demo\n namespace: default\nspec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}\n vswitch:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: ${defaultNetwork.cidrBlock}\n newbits: 8\n netnum: 8\n return: result\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultSnapshotPolicy:\n type: alicloud:ecs:SnapshotPolicy\n name: default\n properties:\n name: ${name}\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n name: ${name}\n clusterSpec: ack.pro.small\n version: 1.24.6-aliyun.1\n newNatGateway: true\n nodeCidrMask: 26\n proxyMode: ipvs\n serviceCidr: 172.23.0.0/16\n podCidr: 10.95.0.0/16\n workerVswitchIds:\n - ${vswitch.id}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${vswitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 2\n defaultPrometheus:\n type: alicloud:arms:Prometheus\n name: default\n properties:\n clusterType: aliyun-cs\n grafanaInstanceId: free\n clusterId: ${defaultNodePool.clusterId}\n defaultPrometheusMonitoring:\n type: alicloud:arms:PrometheusMonitoring\n name: default\n properties:\n status: run\n type: serviceMonitor\n clusterId: ${defaultPrometheus.clusterId}\n configYaml: |\n apiVersion: monitoring.coreos.com/v1\n kind: ServiceMonitor\n metadata:\n name: tomcat-demo\n namespace: default\n spec:\n endpoints:\n - bearerTokenSecret:\n key: ''\n interval: 30s\n path: /metrics\n port: tomcat-monitor\n namespaceSelector:\n any: true\n selector:\n matchLabels:\n app: tomcat\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${vswitch.zoneId}\n cpuCoreCount: 2\n memorySize: 4\n kubernetesNodeRole: Worker\n instanceTypeFamily: ecs.sn1ne\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Prometheus Monitoring can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/prometheusMonitoring:PrometheusMonitoring example \u003ccluster_id\u003e:\u003cmonitoring_name\u003e:\u003ctype\u003e\n```\n\n",
"properties": {
"clusterId": {
"type": "string",
@@ -107765,7 +109618,7 @@
}
},
"alicloud:arms/remoteWrite:RemoteWrite": {
- "description": "Provides a Application Real-Time Monitoring Service (ARMS) Remote Write resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Remote Write and how to use it, see [What is Remote Write](https://next.api.aliyun.com/api/ARMS/2019-08-08/AddPrometheusInstance).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\nconst defaultRemoteWrite = new alicloud.arms.RemoteWrite(\"default\", {\n clusterId: defaultPrometheus.id,\n remoteWriteYaml: `remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: 1\n action: keep\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\ndefault_remote_write = alicloud.arms.RemoteWrite(\"default\",\n cluster_id=default_prometheus.id,\n remote_write_yaml=\"\"\"remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n var defaultRemoteWrite = new AliCloud.Arms.RemoteWrite(\"default\", new()\n {\n ClusterId = defaultPrometheus.Id,\n RemoteWriteYaml = @\"remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewRemoteWrite(ctx, \"default\", \u0026arms.RemoteWriteArgs{\n\t\t\tClusterId: defaultPrometheus.ID(),\n\t\t\tRemoteWriteYaml: pulumi.String(`remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.RemoteWrite;\nimport com.pulumi.alicloud.arms.RemoteWriteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n var defaultRemoteWrite = new RemoteWrite(\"defaultRemoteWrite\", RemoteWriteArgs.builder()\n .clusterId(defaultPrometheus.id())\n .remoteWriteYaml(\"\"\"\nremote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n \"\"\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Remote Write can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/remoteWrite:RemoteWrite example \u003ccluster_id\u003e:\u003cremote_write_name\u003e\n```\n\n",
+ "description": "Provides a Application Real-Time Monitoring Service (ARMS) Remote Write resource.\n\nFor information about Application Real-Time Monitoring Service (ARMS) Remote Write and how to use it, see [What is Remote Write](https://next.api.aliyun.com/api/ARMS/2019-08-08/AddPrometheusInstance).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: pulumi.all([_default, _default.then(_default =\u003e _default.zones).length]).apply(([_default, length]) =\u003e _default.zones[length - 1].id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultPrometheus = new alicloud.arms.Prometheus(\"default\", {\n clusterType: \"ecs\",\n grafanaInstanceId: \"free\",\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n clusterName: pulumi.interpolate`${name}-${defaultNetwork.id}`,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n tags: {\n Created: \"TF\",\n For: \"Prometheus\",\n },\n});\nconst defaultRemoteWrite = new alicloud.arms.RemoteWrite(\"default\", {\n clusterId: defaultPrometheus.id,\n remoteWriteYaml: `remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: 1\n action: keep\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=len(default.zones).apply(lambda length: default.zones[length - 1]).apply(lambda obj: obj.id))\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_prometheus = alicloud.arms.Prometheus(\"default\",\n cluster_type=\"ecs\",\n grafana_instance_id=\"free\",\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n cluster_name=default_network.id.apply(lambda id: f\"{name}-{id}\"),\n resource_group_id=default_get_resource_groups.groups[0].id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Prometheus\",\n })\ndefault_remote_write = alicloud.arms.RemoteWrite(\"default\",\n cluster_id=default_prometheus.id,\n remote_write_yaml=\"\"\"remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = Output.Tuple(@default, @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones)).Length).Apply(values =\u003e\n {\n var @default = values.Item1;\n var length = values.Item2;\n return @default.Apply(getZonesResult =\u003e getZonesResult.Zones)[length - 1].Id;\n }),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultPrometheus = new AliCloud.Arms.Prometheus(\"default\", new()\n {\n ClusterType = \"ecs\",\n GrafanaInstanceId = \"free\",\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n ClusterName = defaultNetwork.Id.Apply(id =\u003e $\"{name}-{id}\"),\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Prometheus\" },\n },\n });\n\n var defaultRemoteWrite = new AliCloud.Arms.RemoteWrite(\"default\", new()\n {\n ClusterId = defaultPrometheus.Id,\n RemoteWriteYaml = @\"remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(len(_default.Zones).ApplyT(func(length int) (alicloud.GetZonesZone, error) {\n\t\t\t\treturn alicloud.GetZonesZone(_default.Zones[float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\t\treturn __convert - 1, nil\n\t\t\t\t}).(pulumi.Float64Output))]), nil\n\t\t\t}).(alicloud.GetZonesZoneOutput).ApplyT(func(obj alicloud.GetZonesZone) (*string, error) {\n\t\t\t\treturn obj.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPrometheus, err := arms.NewPrometheus(ctx, \"default\", \u0026arms.PrometheusArgs{\n\t\t\tClusterType: pulumi.String(\"ecs\"),\n\t\t\tGrafanaInstanceId: pulumi.String(\"free\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tClusterName: defaultNetwork.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v-%v\", name, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Prometheus\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewRemoteWrite(ctx, \"default\", \u0026arms.RemoteWriteArgs{\n\t\t\tClusterId: defaultPrometheus.ID(),\n\t\t\tRemoteWriteYaml: pulumi.String(`remote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.Prometheus;\nimport com.pulumi.alicloud.arms.PrometheusArgs;\nimport com.pulumi.alicloud.arms.RemoteWrite;\nimport com.pulumi.alicloud.arms.RemoteWriteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones().length().applyValue(_length -\u003e default_.zones()[_length - 1]).applyValue(_obj -\u003e _obj.id()))\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultPrometheus = new Prometheus(\"defaultPrometheus\", PrometheusArgs.builder()\n .clusterType(\"ecs\")\n .grafanaInstanceId(\"free\")\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .clusterName(defaultNetwork.id().applyValue(_id -\u003e String.format(\"%s-%s\", name,_id)))\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Prometheus\")\n ))\n .build());\n\n var defaultRemoteWrite = new RemoteWrite(\"defaultRemoteWrite\", RemoteWriteArgs.builder()\n .clusterId(defaultPrometheus.id())\n .remoteWriteYaml(\"\"\"\nremote_write:\n- name: ArmsRemoteWrite\n url: http://47.96.227.137:8080/prometheus/xxx/yyy/cn-hangzhou/api/v3/write\n basic_auth: {username: 666, password: '******'}\n write_relabel_configs:\n - source_labels: [instance_id]\n separator: ;\n regex: si-6e2ca86444db4e55a7c1\n replacement: $1\n action: keep\n \"\"\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApplication Real-Time Monitoring Service (ARMS) Remote Write can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/remoteWrite:RemoteWrite example \u003ccluster_id\u003e:\u003cremote_write_name\u003e\n```\n\n",
"properties": {
"clusterId": {
"type": "string",
@@ -107821,7 +109674,7 @@
}
},
"alicloud:arms/syntheticTask:SyntheticTask": {
- "description": "Provides a ARMS Synthetic Task resource. Cloud Synthetic task resources.\n\nFor information about ARMS Synthetic Task and how to use it, see [What is Synthetic Task](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateTimingSyntheticTask).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultSyntheticTask = new alicloud.arms.SyntheticTask(\"default\", {\n monitors: [{\n cityCode: \"1200101\",\n operatorCode: \"246\",\n clientType: 4,\n }],\n syntheticTaskName: name,\n customPeriod: {\n endHour: 12,\n startHour: 11,\n },\n availableAssertions: [\n {\n type: \"IcmpPackLoss\",\n operator: \"neq\",\n expect: \"200\",\n target: \"example\",\n },\n {\n type: \"IcmpPackAvgLatency\",\n operator: \"lte\",\n expect: \"1000\",\n },\n {\n type: \"IcmpPackMaxLatency\",\n operator: \"lte\",\n expect: \"10000\",\n },\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n status: \"RUNNING\",\n monitorConf: {\n netTcp: {\n tracertTimeout: 1050,\n targetUrl: \"www.aliyun.com\",\n connectTimes: 6,\n interval: 300,\n timeout: 3000,\n tracertNumMax: 2,\n },\n netDns: {\n queryMethod: 1,\n timeout: 5050,\n targetUrl: \"www.aliyun.com\",\n dnsServerIpType: 1,\n nsServer: \"61.128.114.167\",\n },\n apiHttp: {\n timeout: 10050,\n targetUrl: \"https://www.aliyun.com\",\n method: \"POST\",\n requestHeaders: {\n key1: \"value1\",\n },\n requestBody: {\n content: \"example2\",\n type: \"text/html\",\n },\n connectTimeout: 6000,\n },\n website: {\n slowElementThreshold: 5005,\n verifyStringBlacklist: \"Failed\",\n elementBlacklist: \"a.jpg\",\n disableCompression: 1,\n ignoreCertificateError: 0,\n monitorTimeout: 20000,\n redirection: 0,\n dnsHijackWhitelist: \"www.aliyun.com:203.0.3.55\",\n pageTamper: \"www.aliyun.com:|/cc/bb/a.gif\",\n flowHijackJumpTimes: 10,\n customHeader: 1,\n disableCache: 1,\n verifyStringWhitelist: \"Senyuan\",\n targetUrl: \"http://www.aliyun.com\",\n automaticScrolling: 1,\n waitCompletionTime: 5005,\n flowHijackLogo: \"senyuan1\",\n customHeaderContent: {\n key1: \"value1\",\n },\n filterInvalidIp: 0,\n },\n fileDownload: {\n whiteList: \"www.aliyun.com:203.0.3.55\",\n monitorTimeout: 1050,\n ignoreCertificateUntrustworthyError: 0,\n redirection: 0,\n ignoreCertificateCanceledError: 0,\n ignoreCertificateAuthError: 0,\n ignoreCertificateOutOfDateError: 0,\n ignoreCertificateUsingError: 0,\n connectionTimeout: 6090,\n ignoreInvalidHostError: 0,\n verifyWay: 0,\n customHeaderContent: {\n key1: \"value1\",\n },\n targetUrl: \"https://www.aliyun.com\",\n downloadKernel: 0,\n quickProtocol: 2,\n ignoreCertificateStatusError: 1,\n transmissionSize: 128,\n validateKeywords: \"senyuan1\",\n },\n stream: {\n streamMonitorTimeout: 10,\n streamAddressType: 0,\n playerType: 2,\n customHeaderContent: {\n key1: \"value1\",\n },\n whiteList: \"www.aliyun.com:203.0.3.55\",\n targetUrl: \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n streamType: 1,\n },\n netIcmp: {\n targetUrl: \"www.aliyun.com\",\n interval: 200,\n packageNum: 36,\n packageSize: 512,\n timeout: 1000,\n tracertEnable: true,\n tracertNumMax: 1,\n tracertTimeout: 1200,\n },\n },\n taskType: 1,\n frequency: \"1h\",\n monitorCategory: 1,\n commonSetting: {\n xtraceRegion: \"cn-beijing\",\n customHost: {\n hosts: [\n {\n domain: \"www.a.aliyun.com\",\n ips: [\"153.3.238.102\"],\n ipType: 0,\n },\n {\n domain: \"www.shifen.com\",\n ips: [\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n ],\n ipType: 1,\n },\n {\n domain: \"www.aliyun.com\",\n ips: [\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n ],\n ipType: 0,\n },\n ],\n selectType: 1,\n },\n monitorSamples: 1,\n ipType: 1,\n isOpenTrace: true,\n traceClientType: 1,\n },\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_synthetic_task = alicloud.arms.SyntheticTask(\"default\",\n monitors=[{\n \"city_code\": \"1200101\",\n \"operator_code\": \"246\",\n \"client_type\": 4,\n }],\n synthetic_task_name=name,\n custom_period={\n \"end_hour\": 12,\n \"start_hour\": 11,\n },\n available_assertions=[\n {\n \"type\": \"IcmpPackLoss\",\n \"operator\": \"neq\",\n \"expect\": \"200\",\n \"target\": \"example\",\n },\n {\n \"type\": \"IcmpPackAvgLatency\",\n \"operator\": \"lte\",\n \"expect\": \"1000\",\n },\n {\n \"type\": \"IcmpPackMaxLatency\",\n \"operator\": \"lte\",\n \"expect\": \"10000\",\n },\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n status=\"RUNNING\",\n monitor_conf={\n \"net_tcp\": {\n \"tracert_timeout\": 1050,\n \"target_url\": \"www.aliyun.com\",\n \"connect_times\": 6,\n \"interval\": 300,\n \"timeout\": 3000,\n \"tracert_num_max\": 2,\n },\n \"net_dns\": {\n \"query_method\": 1,\n \"timeout\": 5050,\n \"target_url\": \"www.aliyun.com\",\n \"dns_server_ip_type\": 1,\n \"ns_server\": \"61.128.114.167\",\n },\n \"api_http\": {\n \"timeout\": 10050,\n \"target_url\": \"https://www.aliyun.com\",\n \"method\": \"POST\",\n \"request_headers\": {\n \"key1\": \"value1\",\n },\n \"request_body\": {\n \"content\": \"example2\",\n \"type\": \"text/html\",\n },\n \"connect_timeout\": 6000,\n },\n \"website\": {\n \"slow_element_threshold\": 5005,\n \"verify_string_blacklist\": \"Failed\",\n \"element_blacklist\": \"a.jpg\",\n \"disable_compression\": 1,\n \"ignore_certificate_error\": 0,\n \"monitor_timeout\": 20000,\n \"redirection\": 0,\n \"dns_hijack_whitelist\": \"www.aliyun.com:203.0.3.55\",\n \"page_tamper\": \"www.aliyun.com:|/cc/bb/a.gif\",\n \"flow_hijack_jump_times\": 10,\n \"custom_header\": 1,\n \"disable_cache\": 1,\n \"verify_string_whitelist\": \"Senyuan\",\n \"target_url\": \"http://www.aliyun.com\",\n \"automatic_scrolling\": 1,\n \"wait_completion_time\": 5005,\n \"flow_hijack_logo\": \"senyuan1\",\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"filter_invalid_ip\": 0,\n },\n \"file_download\": {\n \"white_list\": \"www.aliyun.com:203.0.3.55\",\n \"monitor_timeout\": 1050,\n \"ignore_certificate_untrustworthy_error\": 0,\n \"redirection\": 0,\n \"ignore_certificate_canceled_error\": 0,\n \"ignore_certificate_auth_error\": 0,\n \"ignore_certificate_out_of_date_error\": 0,\n \"ignore_certificate_using_error\": 0,\n \"connection_timeout\": 6090,\n \"ignore_invalid_host_error\": 0,\n \"verify_way\": 0,\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"target_url\": \"https://www.aliyun.com\",\n \"download_kernel\": 0,\n \"quick_protocol\": 2,\n \"ignore_certificate_status_error\": 1,\n \"transmission_size\": 128,\n \"validate_keywords\": \"senyuan1\",\n },\n \"stream\": {\n \"stream_monitor_timeout\": 10,\n \"stream_address_type\": 0,\n \"player_type\": 2,\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"white_list\": \"www.aliyun.com:203.0.3.55\",\n \"target_url\": \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n \"stream_type\": 1,\n },\n \"net_icmp\": {\n \"target_url\": \"www.aliyun.com\",\n \"interval\": 200,\n \"package_num\": 36,\n \"package_size\": 512,\n \"timeout\": 1000,\n \"tracert_enable\": True,\n \"tracert_num_max\": 1,\n \"tracert_timeout\": 1200,\n },\n },\n task_type=1,\n frequency=\"1h\",\n monitor_category=1,\n common_setting={\n \"xtrace_region\": \"cn-beijing\",\n \"custom_host\": {\n \"hosts\": [\n {\n \"domain\": \"www.a.aliyun.com\",\n \"ips\": [\"153.3.238.102\"],\n \"ip_type\": 0,\n },\n {\n \"domain\": \"www.shifen.com\",\n \"ips\": [\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n ],\n \"ip_type\": 1,\n },\n {\n \"domain\": \"www.aliyun.com\",\n \"ips\": [\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n ],\n \"ip_type\": 0,\n },\n ],\n \"select_type\": 1,\n },\n \"monitor_samples\": 1,\n \"ip_type\": 1,\n \"is_open_trace\": True,\n \"trace_client_type\": 1,\n },\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultSyntheticTask = new AliCloud.Arms.SyntheticTask(\"default\", new()\n {\n Monitors = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskMonitorArgs\n {\n CityCode = \"1200101\",\n OperatorCode = \"246\",\n ClientType = 4,\n },\n },\n SyntheticTaskName = name,\n CustomPeriod = new AliCloud.Arms.Inputs.SyntheticTaskCustomPeriodArgs\n {\n EndHour = 12,\n StartHour = 11,\n },\n AvailableAssertions = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackLoss\",\n Operator = \"neq\",\n Expect = \"200\",\n Target = \"example\",\n },\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackAvgLatency\",\n Operator = \"lte\",\n Expect = \"1000\",\n },\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackMaxLatency\",\n Operator = \"lte\",\n Expect = \"10000\",\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n Status = \"RUNNING\",\n MonitorConf = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfArgs\n {\n NetTcp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetTcpArgs\n {\n TracertTimeout = 1050,\n TargetUrl = \"www.aliyun.com\",\n ConnectTimes = 6,\n Interval = 300,\n Timeout = 3000,\n TracertNumMax = 2,\n },\n NetDns = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetDnsArgs\n {\n QueryMethod = 1,\n Timeout = 5050,\n TargetUrl = \"www.aliyun.com\",\n DnsServerIpType = 1,\n NsServer = \"61.128.114.167\",\n },\n ApiHttp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfApiHttpArgs\n {\n Timeout = 10050,\n TargetUrl = \"https://www.aliyun.com\",\n Method = \"POST\",\n RequestHeaders = \n {\n { \"key1\", \"value1\" },\n },\n RequestBody = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfApiHttpRequestBodyArgs\n {\n Content = \"example2\",\n Type = \"text/html\",\n },\n ConnectTimeout = 6000,\n },\n Website = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfWebsiteArgs\n {\n SlowElementThreshold = 5005,\n VerifyStringBlacklist = \"Failed\",\n ElementBlacklist = \"a.jpg\",\n DisableCompression = 1,\n IgnoreCertificateError = 0,\n MonitorTimeout = 20000,\n Redirection = 0,\n DnsHijackWhitelist = \"www.aliyun.com:203.0.3.55\",\n PageTamper = \"www.aliyun.com:|/cc/bb/a.gif\",\n FlowHijackJumpTimes = 10,\n CustomHeader = 1,\n DisableCache = 1,\n VerifyStringWhitelist = \"Senyuan\",\n TargetUrl = \"http://www.aliyun.com\",\n AutomaticScrolling = 1,\n WaitCompletionTime = 5005,\n FlowHijackLogo = \"senyuan1\",\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n FilterInvalidIp = 0,\n },\n FileDownload = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfFileDownloadArgs\n {\n WhiteList = \"www.aliyun.com:203.0.3.55\",\n MonitorTimeout = 1050,\n IgnoreCertificateUntrustworthyError = 0,\n Redirection = 0,\n IgnoreCertificateCanceledError = 0,\n IgnoreCertificateAuthError = 0,\n IgnoreCertificateOutOfDateError = 0,\n IgnoreCertificateUsingError = 0,\n ConnectionTimeout = 6090,\n IgnoreInvalidHostError = 0,\n VerifyWay = 0,\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n TargetUrl = \"https://www.aliyun.com\",\n DownloadKernel = 0,\n QuickProtocol = 2,\n IgnoreCertificateStatusError = 1,\n TransmissionSize = 128,\n ValidateKeywords = \"senyuan1\",\n },\n Stream = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfStreamArgs\n {\n StreamMonitorTimeout = 10,\n StreamAddressType = 0,\n PlayerType = 2,\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n WhiteList = \"www.aliyun.com:203.0.3.55\",\n TargetUrl = \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n StreamType = 1,\n },\n NetIcmp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetIcmpArgs\n {\n TargetUrl = \"www.aliyun.com\",\n Interval = 200,\n PackageNum = 36,\n PackageSize = 512,\n Timeout = 1000,\n TracertEnable = true,\n TracertNumMax = 1,\n TracertTimeout = 1200,\n },\n },\n TaskType = 1,\n Frequency = \"1h\",\n MonitorCategory = 1,\n CommonSetting = new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingArgs\n {\n XtraceRegion = \"cn-beijing\",\n CustomHost = new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostArgs\n {\n Hosts = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.a.aliyun.com\",\n Ips = new[]\n {\n \"153.3.238.102\",\n },\n IpType = 0,\n },\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.shifen.com\",\n Ips = new[]\n {\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n },\n IpType = 1,\n },\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.aliyun.com\",\n Ips = new[]\n {\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n },\n IpType = 0,\n },\n },\n SelectType = 1,\n },\n MonitorSamples = 1,\n IpType = 1,\n IsOpenTrace = true,\n TraceClientType = 1,\n },\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewSyntheticTask(ctx, \"default\", \u0026arms.SyntheticTaskArgs{\n\t\t\tMonitors: arms.SyntheticTaskMonitorArray{\n\t\t\t\t\u0026arms.SyntheticTaskMonitorArgs{\n\t\t\t\t\tCityCode: pulumi.String(\"1200101\"),\n\t\t\t\t\tOperatorCode: pulumi.String(\"246\"),\n\t\t\t\t\tClientType: pulumi.Int(4),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSyntheticTaskName: pulumi.String(name),\n\t\t\tCustomPeriod: \u0026arms.SyntheticTaskCustomPeriodArgs{\n\t\t\t\tEndHour: pulumi.Int(12),\n\t\t\t\tStartHour: pulumi.Int(11),\n\t\t\t},\n\t\t\tAvailableAssertions: arms.SyntheticTaskAvailableAssertionArray{\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackLoss\"),\n\t\t\t\t\tOperator: pulumi.String(\"neq\"),\n\t\t\t\t\tExpect: pulumi.String(\"200\"),\n\t\t\t\t\tTarget: pulumi.String(\"example\"),\n\t\t\t\t},\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackAvgLatency\"),\n\t\t\t\t\tOperator: pulumi.String(\"lte\"),\n\t\t\t\t\tExpect: pulumi.String(\"1000\"),\n\t\t\t\t},\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackMaxLatency\"),\n\t\t\t\t\tOperator: pulumi.String(\"lte\"),\n\t\t\t\t\tExpect: pulumi.String(\"10000\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"RUNNING\"),\n\t\t\tMonitorConf: \u0026arms.SyntheticTaskMonitorConfArgs{\n\t\t\t\tNetTcp: \u0026arms.SyntheticTaskMonitorConfNetTcpArgs{\n\t\t\t\t\tTracertTimeout: pulumi.Int(1050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tConnectTimes: pulumi.Int(6),\n\t\t\t\t\tInterval: pulumi.Int(300),\n\t\t\t\t\tTimeout: pulumi.Int(3000),\n\t\t\t\t\tTracertNumMax: pulumi.Int(2),\n\t\t\t\t},\n\t\t\t\tNetDns: \u0026arms.SyntheticTaskMonitorConfNetDnsArgs{\n\t\t\t\t\tQueryMethod: pulumi.Int(1),\n\t\t\t\t\tTimeout: pulumi.Int(5050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tDnsServerIpType: pulumi.Int(1),\n\t\t\t\t\tNsServer: pulumi.String(\"61.128.114.167\"),\n\t\t\t\t},\n\t\t\t\tApiHttp: \u0026arms.SyntheticTaskMonitorConfApiHttpArgs{\n\t\t\t\t\tTimeout: pulumi.Int(10050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tMethod: pulumi.String(\"POST\"),\n\t\t\t\t\tRequestHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tRequestBody: \u0026arms.SyntheticTaskMonitorConfApiHttpRequestBodyArgs{\n\t\t\t\t\t\tContent: pulumi.String(\"example2\"),\n\t\t\t\t\t\tType: pulumi.String(\"text/html\"),\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout: pulumi.Int(6000),\n\t\t\t\t},\n\t\t\t\tWebsite: \u0026arms.SyntheticTaskMonitorConfWebsiteArgs{\n\t\t\t\t\tSlowElementThreshold: pulumi.Int(5005),\n\t\t\t\t\tVerifyStringBlacklist: pulumi.String(\"Failed\"),\n\t\t\t\t\tElementBlacklist: pulumi.String(\"a.jpg\"),\n\t\t\t\t\tDisableCompression: pulumi.Int(1),\n\t\t\t\t\tIgnoreCertificateError: pulumi.Int(0),\n\t\t\t\t\tMonitorTimeout: pulumi.Int(20000),\n\t\t\t\t\tRedirection: pulumi.Int(0),\n\t\t\t\t\tDnsHijackWhitelist: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tPageTamper: pulumi.String(\"www.aliyun.com:|/cc/bb/a.gif\"),\n\t\t\t\t\tFlowHijackJumpTimes: pulumi.Int(10),\n\t\t\t\t\tCustomHeader: pulumi.Int(1),\n\t\t\t\t\tDisableCache: pulumi.Int(1),\n\t\t\t\t\tVerifyStringWhitelist: pulumi.String(\"Senyuan\"),\n\t\t\t\t\tTargetUrl: pulumi.String(\"http://www.aliyun.com\"),\n\t\t\t\t\tAutomaticScrolling: pulumi.Int(1),\n\t\t\t\t\tWaitCompletionTime: pulumi.Int(5005),\n\t\t\t\t\tFlowHijackLogo: pulumi.String(\"senyuan1\"),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tFilterInvalidIp: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\tFileDownload: \u0026arms.SyntheticTaskMonitorConfFileDownloadArgs{\n\t\t\t\t\tWhiteList: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tMonitorTimeout: pulumi.Int(1050),\n\t\t\t\t\tIgnoreCertificateUntrustworthyError: pulumi.Int(0),\n\t\t\t\t\tRedirection: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateCanceledError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateAuthError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateOutOfDateError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateUsingError: pulumi.Int(0),\n\t\t\t\t\tConnectionTimeout: pulumi.Int(6090),\n\t\t\t\t\tIgnoreInvalidHostError: pulumi.Int(0),\n\t\t\t\t\tVerifyWay: pulumi.Int(0),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tDownloadKernel: pulumi.Int(0),\n\t\t\t\t\tQuickProtocol: pulumi.Int(2),\n\t\t\t\t\tIgnoreCertificateStatusError: pulumi.Int(1),\n\t\t\t\t\tTransmissionSize: pulumi.Int(128),\n\t\t\t\t\tValidateKeywords: pulumi.String(\"senyuan1\"),\n\t\t\t\t},\n\t\t\t\tStream: \u0026arms.SyntheticTaskMonitorConfStreamArgs{\n\t\t\t\t\tStreamMonitorTimeout: pulumi.Int(10),\n\t\t\t\t\tStreamAddressType: pulumi.Int(0),\n\t\t\t\t\tPlayerType: pulumi.Int(2),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tWhiteList: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\"),\n\t\t\t\t\tStreamType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tNetIcmp: \u0026arms.SyntheticTaskMonitorConfNetIcmpArgs{\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tInterval: pulumi.Int(200),\n\t\t\t\t\tPackageNum: pulumi.Int(36),\n\t\t\t\t\tPackageSize: pulumi.Int(512),\n\t\t\t\t\tTimeout: pulumi.Int(1000),\n\t\t\t\t\tTracertEnable: pulumi.Bool(true),\n\t\t\t\t\tTracertNumMax: pulumi.Int(1),\n\t\t\t\t\tTracertTimeout: pulumi.Int(1200),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTaskType: pulumi.Int(1),\n\t\t\tFrequency: pulumi.String(\"1h\"),\n\t\t\tMonitorCategory: pulumi.Int(1),\n\t\t\tCommonSetting: \u0026arms.SyntheticTaskCommonSettingArgs{\n\t\t\t\tXtraceRegion: pulumi.String(\"cn-beijing\"),\n\t\t\t\tCustomHost: \u0026arms.SyntheticTaskCommonSettingCustomHostArgs{\n\t\t\t\t\tHosts: arms.SyntheticTaskCommonSettingCustomHostHostArray{\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.a.aliyun.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.102\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.shifen.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.110\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"114.114.114.114\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"127.0.0.1\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(1),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.110\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"180.101.50.242\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"180.101.50.188\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSelectType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tMonitorSamples: pulumi.Int(1),\n\t\t\t\tIpType: pulumi.Int(1),\n\t\t\t\tIsOpenTrace: pulumi.Bool(true),\n\t\t\t\tTraceClientType: pulumi.Int(1),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.SyntheticTask;\nimport com.pulumi.alicloud.arms.SyntheticTaskArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCustomPeriodArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskAvailableAssertionArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetTcpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetDnsArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfApiHttpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfApiHttpRequestBodyArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfWebsiteArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfFileDownloadArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfStreamArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetIcmpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCommonSettingArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCommonSettingCustomHostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultSyntheticTask = new SyntheticTask(\"defaultSyntheticTask\", SyntheticTaskArgs.builder()\n .monitors(SyntheticTaskMonitorArgs.builder()\n .cityCode(\"1200101\")\n .operatorCode(\"246\")\n .clientType(4)\n .build())\n .syntheticTaskName(name)\n .customPeriod(SyntheticTaskCustomPeriodArgs.builder()\n .endHour(12)\n .startHour(11)\n .build())\n .availableAssertions( \n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackLoss\")\n .operator(\"neq\")\n .expect(\"200\")\n .target(\"example\")\n .build(),\n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackAvgLatency\")\n .operator(\"lte\")\n .expect(\"1000\")\n .build(),\n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackMaxLatency\")\n .operator(\"lte\")\n .expect(\"10000\")\n .build())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .status(\"RUNNING\")\n .monitorConf(SyntheticTaskMonitorConfArgs.builder()\n .netTcp(SyntheticTaskMonitorConfNetTcpArgs.builder()\n .tracertTimeout(1050)\n .targetUrl(\"www.aliyun.com\")\n .connectTimes(6)\n .interval(300)\n .timeout(3000)\n .tracertNumMax(2)\n .build())\n .netDns(SyntheticTaskMonitorConfNetDnsArgs.builder()\n .queryMethod(1)\n .timeout(5050)\n .targetUrl(\"www.aliyun.com\")\n .dnsServerIpType(1)\n .nsServer(\"61.128.114.167\")\n .build())\n .apiHttp(SyntheticTaskMonitorConfApiHttpArgs.builder()\n .timeout(10050)\n .targetUrl(\"https://www.aliyun.com\")\n .method(\"POST\")\n .requestHeaders(Map.of(\"key1\", \"value1\"))\n .requestBody(SyntheticTaskMonitorConfApiHttpRequestBodyArgs.builder()\n .content(\"example2\")\n .type(\"text/html\")\n .build())\n .connectTimeout(6000)\n .build())\n .website(SyntheticTaskMonitorConfWebsiteArgs.builder()\n .slowElementThreshold(5005)\n .verifyStringBlacklist(\"Failed\")\n .elementBlacklist(\"a.jpg\")\n .disableCompression(1)\n .ignoreCertificateError(0)\n .monitorTimeout(20000)\n .redirection(0)\n .dnsHijackWhitelist(\"www.aliyun.com:203.0.3.55\")\n .pageTamper(\"www.aliyun.com:|/cc/bb/a.gif\")\n .flowHijackJumpTimes(10)\n .customHeader(1)\n .disableCache(1)\n .verifyStringWhitelist(\"Senyuan\")\n .targetUrl(\"http://www.aliyun.com\")\n .automaticScrolling(1)\n .waitCompletionTime(5005)\n .flowHijackLogo(\"senyuan1\")\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .filterInvalidIp(0)\n .build())\n .fileDownload(SyntheticTaskMonitorConfFileDownloadArgs.builder()\n .whiteList(\"www.aliyun.com:203.0.3.55\")\n .monitorTimeout(1050)\n .ignoreCertificateUntrustworthyError(0)\n .redirection(0)\n .ignoreCertificateCanceledError(0)\n .ignoreCertificateAuthError(0)\n .ignoreCertificateOutOfDateError(0)\n .ignoreCertificateUsingError(0)\n .connectionTimeout(6090)\n .ignoreInvalidHostError(0)\n .verifyWay(0)\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .targetUrl(\"https://www.aliyun.com\")\n .downloadKernel(0)\n .quickProtocol(2)\n .ignoreCertificateStatusError(1)\n .transmissionSize(128)\n .validateKeywords(\"senyuan1\")\n .build())\n .stream(SyntheticTaskMonitorConfStreamArgs.builder()\n .streamMonitorTimeout(10)\n .streamAddressType(0)\n .playerType(2)\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .whiteList(\"www.aliyun.com:203.0.3.55\")\n .targetUrl(\"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\")\n .streamType(1)\n .build())\n .netIcmp(SyntheticTaskMonitorConfNetIcmpArgs.builder()\n .targetUrl(\"www.aliyun.com\")\n .interval(200)\n .packageNum(36)\n .packageSize(512)\n .timeout(1000)\n .tracertEnable(true)\n .tracertNumMax(1)\n .tracertTimeout(1200)\n .build())\n .build())\n .taskType(1)\n .frequency(\"1h\")\n .monitorCategory(1)\n .commonSetting(SyntheticTaskCommonSettingArgs.builder()\n .xtraceRegion(\"cn-beijing\")\n .customHost(SyntheticTaskCommonSettingCustomHostArgs.builder()\n .hosts( \n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.a.aliyun.com\")\n .ips(\"153.3.238.102\")\n .ipType(0)\n .build(),\n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.shifen.com\")\n .ips( \n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\")\n .ipType(1)\n .build(),\n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.aliyun.com\")\n .ips( \n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\")\n .ipType(0)\n .build())\n .selectType(1)\n .build())\n .monitorSamples(1)\n .ipType(1)\n .isOpenTrace(true)\n .traceClientType(1)\n .build())\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultSyntheticTask:\n type: alicloud:arms:SyntheticTask\n name: default\n properties:\n monitors:\n - cityCode: '1200101'\n operatorCode: '246'\n clientType: '4'\n syntheticTaskName: ${name}\n customPeriod:\n endHour: '12'\n startHour: '11'\n availableAssertions:\n - type: IcmpPackLoss\n operator: neq\n expect: '200'\n target: example\n - type: IcmpPackAvgLatency\n operator: lte\n expect: '1000'\n - type: IcmpPackMaxLatency\n operator: lte\n expect: '10000'\n tags:\n Created: TF\n For: example\n status: RUNNING\n monitorConf:\n netTcp:\n tracertTimeout: '1050'\n targetUrl: www.aliyun.com\n connectTimes: '6'\n interval: '300'\n timeout: '3000'\n tracertNumMax: '2'\n netDns:\n queryMethod: '1'\n timeout: '5050'\n targetUrl: www.aliyun.com\n dnsServerIpType: '1'\n nsServer: 61.128.114.167\n apiHttp:\n timeout: '10050'\n targetUrl: https://www.aliyun.com\n method: POST\n requestHeaders:\n key1: value1\n requestBody:\n content: example2\n type: text/html\n connectTimeout: '6000'\n website:\n slowElementThreshold: '5005'\n verifyStringBlacklist: Failed\n elementBlacklist: a.jpg\n disableCompression: '1'\n ignoreCertificateError: '0'\n monitorTimeout: '20000'\n redirection: '0'\n dnsHijackWhitelist: www.aliyun.com:203.0.3.55\n pageTamper: www.aliyun.com:|/cc/bb/a.gif\n flowHijackJumpTimes: '10'\n customHeader: '1'\n disableCache: '1'\n verifyStringWhitelist: Senyuan\n targetUrl: http://www.aliyun.com\n automaticScrolling: '1'\n waitCompletionTime: '5005'\n flowHijackLogo: senyuan1\n customHeaderContent:\n key1: value1\n filterInvalidIp: '0'\n fileDownload:\n whiteList: www.aliyun.com:203.0.3.55\n monitorTimeout: '1050'\n ignoreCertificateUntrustworthyError: '0'\n redirection: '0'\n ignoreCertificateCanceledError: '0'\n ignoreCertificateAuthError: '0'\n ignoreCertificateOutOfDateError: '0'\n ignoreCertificateUsingError: '0'\n connectionTimeout: '6090'\n ignoreInvalidHostError: '0'\n verifyWay: '0'\n customHeaderContent:\n key1: value1\n targetUrl: https://www.aliyun.com\n downloadKernel: '0'\n quickProtocol: '2'\n ignoreCertificateStatusError: '1'\n transmissionSize: '128'\n validateKeywords: senyuan1\n stream:\n streamMonitorTimeout: '10'\n streamAddressType: '0'\n playerType: '2'\n customHeaderContent:\n key1: value1\n whiteList: www.aliyun.com:203.0.3.55\n targetUrl: https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\n streamType: '1'\n netIcmp:\n targetUrl: www.aliyun.com\n interval: '200'\n packageNum: '36'\n packageSize: '512'\n timeout: '1000'\n tracertEnable: 'true'\n tracertNumMax: '1'\n tracertTimeout: '1200'\n taskType: '1'\n frequency: 1h\n monitorCategory: '1'\n commonSetting:\n xtraceRegion: cn-beijing\n customHost:\n hosts:\n - domain: www.a.aliyun.com\n ips:\n - 153.3.238.102\n ipType: '0'\n - domain: www.shifen.com\n ips:\n - 153.3.238.110\n - 114.114.114.114\n - 127.0.0.1\n ipType: '1'\n - domain: www.aliyun.com\n ips:\n - 153.3.238.110\n - 180.101.50.242\n - 180.101.50.188\n ipType: '0'\n selectType: '1'\n monitorSamples: '1'\n ipType: '1'\n isOpenTrace: 'true'\n traceClientType: '1'\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nARMS Synthetic Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/syntheticTask:SyntheticTask example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ARMS Synthetic Task resource. Cloud Synthetic task resources.\n\nFor information about ARMS Synthetic Task and how to use it, see [What is Synthetic Task](https://next.api.alibabacloud.com/document/ARMS/2019-08-08/CreateTimingSyntheticTask).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultSyntheticTask = new alicloud.arms.SyntheticTask(\"default\", {\n monitors: [{\n cityCode: \"1200101\",\n operatorCode: \"246\",\n clientType: 4,\n }],\n syntheticTaskName: name,\n customPeriod: {\n endHour: 12,\n startHour: 11,\n },\n availableAssertions: [\n {\n type: \"IcmpPackLoss\",\n operator: \"neq\",\n expect: \"200\",\n target: \"example\",\n },\n {\n type: \"IcmpPackAvgLatency\",\n operator: \"lte\",\n expect: \"1000\",\n },\n {\n type: \"IcmpPackMaxLatency\",\n operator: \"lte\",\n expect: \"10000\",\n },\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n status: \"RUNNING\",\n monitorConf: {\n netTcp: {\n tracertTimeout: 1050,\n targetUrl: \"www.aliyun.com\",\n connectTimes: 6,\n interval: 300,\n timeout: 3000,\n tracertNumMax: 2,\n },\n netDns: {\n queryMethod: 1,\n timeout: 5050,\n targetUrl: \"www.aliyun.com\",\n dnsServerIpType: 1,\n nsServer: \"61.128.114.167\",\n },\n apiHttp: {\n timeout: 10050,\n targetUrl: \"https://www.aliyun.com\",\n method: \"POST\",\n requestHeaders: {\n key1: \"value1\",\n },\n requestBody: {\n content: \"example2\",\n type: \"text/html\",\n },\n connectTimeout: 6000,\n },\n website: {\n slowElementThreshold: 5005,\n verifyStringBlacklist: \"Failed\",\n elementBlacklist: \"a.jpg\",\n disableCompression: 1,\n ignoreCertificateError: 0,\n monitorTimeout: 20000,\n redirection: 0,\n dnsHijackWhitelist: \"www.aliyun.com:203.0.3.55\",\n pageTamper: \"www.aliyun.com:|/cc/bb/a.gif\",\n flowHijackJumpTimes: 10,\n customHeader: 1,\n disableCache: 1,\n verifyStringWhitelist: \"Senyuan\",\n targetUrl: \"http://www.aliyun.com\",\n automaticScrolling: 1,\n waitCompletionTime: 5005,\n flowHijackLogo: \"senyuan1\",\n customHeaderContent: {\n key1: \"value1\",\n },\n filterInvalidIp: 0,\n },\n fileDownload: {\n whiteList: \"www.aliyun.com:203.0.3.55\",\n monitorTimeout: 1050,\n ignoreCertificateUntrustworthyError: 0,\n redirection: 0,\n ignoreCertificateCanceledError: 0,\n ignoreCertificateAuthError: 0,\n ignoreCertificateOutOfDateError: 0,\n ignoreCertificateUsingError: 0,\n connectionTimeout: 6090,\n ignoreInvalidHostError: 0,\n verifyWay: 0,\n customHeaderContent: {\n key1: \"value1\",\n },\n targetUrl: \"https://www.aliyun.com\",\n downloadKernel: 0,\n quickProtocol: 2,\n ignoreCertificateStatusError: 1,\n transmissionSize: 128,\n validateKeywords: \"senyuan1\",\n },\n stream: {\n streamMonitorTimeout: 10,\n streamAddressType: 0,\n playerType: 2,\n customHeaderContent: {\n key1: \"value1\",\n },\n whiteList: \"www.aliyun.com:203.0.3.55\",\n targetUrl: \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n streamType: 1,\n },\n netIcmp: {\n targetUrl: \"www.aliyun.com\",\n interval: 200,\n packageNum: 36,\n packageSize: 512,\n timeout: 1000,\n tracertEnable: true,\n tracertNumMax: 1,\n tracertTimeout: 1200,\n },\n },\n taskType: 1,\n frequency: \"1h\",\n monitorCategory: 1,\n commonSetting: {\n xtraceRegion: \"cn-beijing\",\n customHost: {\n hosts: [\n {\n domain: \"www.a.aliyun.com\",\n ips: [\"153.3.238.102\"],\n ipType: 0,\n },\n {\n domain: \"www.shifen.com\",\n ips: [\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n ],\n ipType: 1,\n },\n {\n domain: \"www.aliyun.com\",\n ips: [\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n ],\n ipType: 0,\n },\n ],\n selectType: 1,\n },\n monitorSamples: 1,\n ipType: 1,\n isOpenTrace: true,\n traceClientType: 1,\n },\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_synthetic_task = alicloud.arms.SyntheticTask(\"default\",\n monitors=[{\n \"city_code\": \"1200101\",\n \"operator_code\": \"246\",\n \"client_type\": 4,\n }],\n synthetic_task_name=name,\n custom_period={\n \"end_hour\": 12,\n \"start_hour\": 11,\n },\n available_assertions=[\n {\n \"type\": \"IcmpPackLoss\",\n \"operator\": \"neq\",\n \"expect\": \"200\",\n \"target\": \"example\",\n },\n {\n \"type\": \"IcmpPackAvgLatency\",\n \"operator\": \"lte\",\n \"expect\": \"1000\",\n },\n {\n \"type\": \"IcmpPackMaxLatency\",\n \"operator\": \"lte\",\n \"expect\": \"10000\",\n },\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n status=\"RUNNING\",\n monitor_conf={\n \"net_tcp\": {\n \"tracert_timeout\": 1050,\n \"target_url\": \"www.aliyun.com\",\n \"connect_times\": 6,\n \"interval\": 300,\n \"timeout\": 3000,\n \"tracert_num_max\": 2,\n },\n \"net_dns\": {\n \"query_method\": 1,\n \"timeout\": 5050,\n \"target_url\": \"www.aliyun.com\",\n \"dns_server_ip_type\": 1,\n \"ns_server\": \"61.128.114.167\",\n },\n \"api_http\": {\n \"timeout\": 10050,\n \"target_url\": \"https://www.aliyun.com\",\n \"method\": \"POST\",\n \"request_headers\": {\n \"key1\": \"value1\",\n },\n \"request_body\": {\n \"content\": \"example2\",\n \"type\": \"text/html\",\n },\n \"connect_timeout\": 6000,\n },\n \"website\": {\n \"slow_element_threshold\": 5005,\n \"verify_string_blacklist\": \"Failed\",\n \"element_blacklist\": \"a.jpg\",\n \"disable_compression\": 1,\n \"ignore_certificate_error\": 0,\n \"monitor_timeout\": 20000,\n \"redirection\": 0,\n \"dns_hijack_whitelist\": \"www.aliyun.com:203.0.3.55\",\n \"page_tamper\": \"www.aliyun.com:|/cc/bb/a.gif\",\n \"flow_hijack_jump_times\": 10,\n \"custom_header\": 1,\n \"disable_cache\": 1,\n \"verify_string_whitelist\": \"Senyuan\",\n \"target_url\": \"http://www.aliyun.com\",\n \"automatic_scrolling\": 1,\n \"wait_completion_time\": 5005,\n \"flow_hijack_logo\": \"senyuan1\",\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"filter_invalid_ip\": 0,\n },\n \"file_download\": {\n \"white_list\": \"www.aliyun.com:203.0.3.55\",\n \"monitor_timeout\": 1050,\n \"ignore_certificate_untrustworthy_error\": 0,\n \"redirection\": 0,\n \"ignore_certificate_canceled_error\": 0,\n \"ignore_certificate_auth_error\": 0,\n \"ignore_certificate_out_of_date_error\": 0,\n \"ignore_certificate_using_error\": 0,\n \"connection_timeout\": 6090,\n \"ignore_invalid_host_error\": 0,\n \"verify_way\": 0,\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"target_url\": \"https://www.aliyun.com\",\n \"download_kernel\": 0,\n \"quick_protocol\": 2,\n \"ignore_certificate_status_error\": 1,\n \"transmission_size\": 128,\n \"validate_keywords\": \"senyuan1\",\n },\n \"stream\": {\n \"stream_monitor_timeout\": 10,\n \"stream_address_type\": 0,\n \"player_type\": 2,\n \"custom_header_content\": {\n \"key1\": \"value1\",\n },\n \"white_list\": \"www.aliyun.com:203.0.3.55\",\n \"target_url\": \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n \"stream_type\": 1,\n },\n \"net_icmp\": {\n \"target_url\": \"www.aliyun.com\",\n \"interval\": 200,\n \"package_num\": 36,\n \"package_size\": 512,\n \"timeout\": 1000,\n \"tracert_enable\": True,\n \"tracert_num_max\": 1,\n \"tracert_timeout\": 1200,\n },\n },\n task_type=1,\n frequency=\"1h\",\n monitor_category=1,\n common_setting={\n \"xtrace_region\": \"cn-beijing\",\n \"custom_host\": {\n \"hosts\": [\n {\n \"domain\": \"www.a.aliyun.com\",\n \"ips\": [\"153.3.238.102\"],\n \"ip_type\": 0,\n },\n {\n \"domain\": \"www.shifen.com\",\n \"ips\": [\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n ],\n \"ip_type\": 1,\n },\n {\n \"domain\": \"www.aliyun.com\",\n \"ips\": [\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n ],\n \"ip_type\": 0,\n },\n ],\n \"select_type\": 1,\n },\n \"monitor_samples\": 1,\n \"ip_type\": 1,\n \"is_open_trace\": True,\n \"trace_client_type\": 1,\n },\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultSyntheticTask = new AliCloud.Arms.SyntheticTask(\"default\", new()\n {\n Monitors = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskMonitorArgs\n {\n CityCode = \"1200101\",\n OperatorCode = \"246\",\n ClientType = 4,\n },\n },\n SyntheticTaskName = name,\n CustomPeriod = new AliCloud.Arms.Inputs.SyntheticTaskCustomPeriodArgs\n {\n EndHour = 12,\n StartHour = 11,\n },\n AvailableAssertions = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackLoss\",\n Operator = \"neq\",\n Expect = \"200\",\n Target = \"example\",\n },\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackAvgLatency\",\n Operator = \"lte\",\n Expect = \"1000\",\n },\n new AliCloud.Arms.Inputs.SyntheticTaskAvailableAssertionArgs\n {\n Type = \"IcmpPackMaxLatency\",\n Operator = \"lte\",\n Expect = \"10000\",\n },\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n Status = \"RUNNING\",\n MonitorConf = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfArgs\n {\n NetTcp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetTcpArgs\n {\n TracertTimeout = 1050,\n TargetUrl = \"www.aliyun.com\",\n ConnectTimes = 6,\n Interval = 300,\n Timeout = 3000,\n TracertNumMax = 2,\n },\n NetDns = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetDnsArgs\n {\n QueryMethod = 1,\n Timeout = 5050,\n TargetUrl = \"www.aliyun.com\",\n DnsServerIpType = 1,\n NsServer = \"61.128.114.167\",\n },\n ApiHttp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfApiHttpArgs\n {\n Timeout = 10050,\n TargetUrl = \"https://www.aliyun.com\",\n Method = \"POST\",\n RequestHeaders = \n {\n { \"key1\", \"value1\" },\n },\n RequestBody = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfApiHttpRequestBodyArgs\n {\n Content = \"example2\",\n Type = \"text/html\",\n },\n ConnectTimeout = 6000,\n },\n Website = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfWebsiteArgs\n {\n SlowElementThreshold = 5005,\n VerifyStringBlacklist = \"Failed\",\n ElementBlacklist = \"a.jpg\",\n DisableCompression = 1,\n IgnoreCertificateError = 0,\n MonitorTimeout = 20000,\n Redirection = 0,\n DnsHijackWhitelist = \"www.aliyun.com:203.0.3.55\",\n PageTamper = \"www.aliyun.com:|/cc/bb/a.gif\",\n FlowHijackJumpTimes = 10,\n CustomHeader = 1,\n DisableCache = 1,\n VerifyStringWhitelist = \"Senyuan\",\n TargetUrl = \"http://www.aliyun.com\",\n AutomaticScrolling = 1,\n WaitCompletionTime = 5005,\n FlowHijackLogo = \"senyuan1\",\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n FilterInvalidIp = 0,\n },\n FileDownload = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfFileDownloadArgs\n {\n WhiteList = \"www.aliyun.com:203.0.3.55\",\n MonitorTimeout = 1050,\n IgnoreCertificateUntrustworthyError = 0,\n Redirection = 0,\n IgnoreCertificateCanceledError = 0,\n IgnoreCertificateAuthError = 0,\n IgnoreCertificateOutOfDateError = 0,\n IgnoreCertificateUsingError = 0,\n ConnectionTimeout = 6090,\n IgnoreInvalidHostError = 0,\n VerifyWay = 0,\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n TargetUrl = \"https://www.aliyun.com\",\n DownloadKernel = 0,\n QuickProtocol = 2,\n IgnoreCertificateStatusError = 1,\n TransmissionSize = 128,\n ValidateKeywords = \"senyuan1\",\n },\n Stream = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfStreamArgs\n {\n StreamMonitorTimeout = 10,\n StreamAddressType = 0,\n PlayerType = 2,\n CustomHeaderContent = \n {\n { \"key1\", \"value1\" },\n },\n WhiteList = \"www.aliyun.com:203.0.3.55\",\n TargetUrl = \"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\",\n StreamType = 1,\n },\n NetIcmp = new AliCloud.Arms.Inputs.SyntheticTaskMonitorConfNetIcmpArgs\n {\n TargetUrl = \"www.aliyun.com\",\n Interval = 200,\n PackageNum = 36,\n PackageSize = 512,\n Timeout = 1000,\n TracertEnable = true,\n TracertNumMax = 1,\n TracertTimeout = 1200,\n },\n },\n TaskType = 1,\n Frequency = \"1h\",\n MonitorCategory = 1,\n CommonSetting = new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingArgs\n {\n XtraceRegion = \"cn-beijing\",\n CustomHost = new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostArgs\n {\n Hosts = new[]\n {\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.a.aliyun.com\",\n Ips = new[]\n {\n \"153.3.238.102\",\n },\n IpType = 0,\n },\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.shifen.com\",\n Ips = new[]\n {\n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\",\n },\n IpType = 1,\n },\n new AliCloud.Arms.Inputs.SyntheticTaskCommonSettingCustomHostHostArgs\n {\n Domain = \"www.aliyun.com\",\n Ips = new[]\n {\n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\",\n },\n IpType = 0,\n },\n },\n SelectType = 1,\n },\n MonitorSamples = 1,\n IpType = 1,\n IsOpenTrace = true,\n TraceClientType = 1,\n },\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/arms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arms.NewSyntheticTask(ctx, \"default\", \u0026arms.SyntheticTaskArgs{\n\t\t\tMonitors: arms.SyntheticTaskMonitorArray{\n\t\t\t\t\u0026arms.SyntheticTaskMonitorArgs{\n\t\t\t\t\tCityCode: pulumi.String(\"1200101\"),\n\t\t\t\t\tOperatorCode: pulumi.String(\"246\"),\n\t\t\t\t\tClientType: pulumi.Int(4),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSyntheticTaskName: pulumi.String(name),\n\t\t\tCustomPeriod: \u0026arms.SyntheticTaskCustomPeriodArgs{\n\t\t\t\tEndHour: pulumi.Int(12),\n\t\t\t\tStartHour: pulumi.Int(11),\n\t\t\t},\n\t\t\tAvailableAssertions: arms.SyntheticTaskAvailableAssertionArray{\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackLoss\"),\n\t\t\t\t\tOperator: pulumi.String(\"neq\"),\n\t\t\t\t\tExpect: pulumi.String(\"200\"),\n\t\t\t\t\tTarget: pulumi.String(\"example\"),\n\t\t\t\t},\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackAvgLatency\"),\n\t\t\t\t\tOperator: pulumi.String(\"lte\"),\n\t\t\t\t\tExpect: pulumi.String(\"1000\"),\n\t\t\t\t},\n\t\t\t\t\u0026arms.SyntheticTaskAvailableAssertionArgs{\n\t\t\t\t\tType: pulumi.String(\"IcmpPackMaxLatency\"),\n\t\t\t\t\tOperator: pulumi.String(\"lte\"),\n\t\t\t\t\tExpect: pulumi.String(\"10000\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"RUNNING\"),\n\t\t\tMonitorConf: \u0026arms.SyntheticTaskMonitorConfArgs{\n\t\t\t\tNetTcp: \u0026arms.SyntheticTaskMonitorConfNetTcpArgs{\n\t\t\t\t\tTracertTimeout: pulumi.Int(1050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tConnectTimes: pulumi.Int(6),\n\t\t\t\t\tInterval: pulumi.Int(300),\n\t\t\t\t\tTimeout: pulumi.Int(3000),\n\t\t\t\t\tTracertNumMax: pulumi.Int(2),\n\t\t\t\t},\n\t\t\t\tNetDns: \u0026arms.SyntheticTaskMonitorConfNetDnsArgs{\n\t\t\t\t\tQueryMethod: pulumi.Int(1),\n\t\t\t\t\tTimeout: pulumi.Int(5050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tDnsServerIpType: pulumi.Int(1),\n\t\t\t\t\tNsServer: pulumi.String(\"61.128.114.167\"),\n\t\t\t\t},\n\t\t\t\tApiHttp: \u0026arms.SyntheticTaskMonitorConfApiHttpArgs{\n\t\t\t\t\tTimeout: pulumi.Int(10050),\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tMethod: pulumi.String(\"POST\"),\n\t\t\t\t\tRequestHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tRequestBody: \u0026arms.SyntheticTaskMonitorConfApiHttpRequestBodyArgs{\n\t\t\t\t\t\tContent: pulumi.String(\"example2\"),\n\t\t\t\t\t\tType: pulumi.String(\"text/html\"),\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout: pulumi.Int(6000),\n\t\t\t\t},\n\t\t\t\tWebsite: \u0026arms.SyntheticTaskMonitorConfWebsiteArgs{\n\t\t\t\t\tSlowElementThreshold: pulumi.Int(5005),\n\t\t\t\t\tVerifyStringBlacklist: pulumi.String(\"Failed\"),\n\t\t\t\t\tElementBlacklist: pulumi.String(\"a.jpg\"),\n\t\t\t\t\tDisableCompression: pulumi.Int(1),\n\t\t\t\t\tIgnoreCertificateError: pulumi.Int(0),\n\t\t\t\t\tMonitorTimeout: pulumi.Int(20000),\n\t\t\t\t\tRedirection: pulumi.Int(0),\n\t\t\t\t\tDnsHijackWhitelist: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tPageTamper: pulumi.String(\"www.aliyun.com:|/cc/bb/a.gif\"),\n\t\t\t\t\tFlowHijackJumpTimes: pulumi.Int(10),\n\t\t\t\t\tCustomHeader: pulumi.Int(1),\n\t\t\t\t\tDisableCache: pulumi.Int(1),\n\t\t\t\t\tVerifyStringWhitelist: pulumi.String(\"Senyuan\"),\n\t\t\t\t\tTargetUrl: pulumi.String(\"http://www.aliyun.com\"),\n\t\t\t\t\tAutomaticScrolling: pulumi.Int(1),\n\t\t\t\t\tWaitCompletionTime: pulumi.Int(5005),\n\t\t\t\t\tFlowHijackLogo: pulumi.String(\"senyuan1\"),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tFilterInvalidIp: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\tFileDownload: \u0026arms.SyntheticTaskMonitorConfFileDownloadArgs{\n\t\t\t\t\tWhiteList: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tMonitorTimeout: pulumi.Int(1050),\n\t\t\t\t\tIgnoreCertificateUntrustworthyError: pulumi.Int(0),\n\t\t\t\t\tRedirection: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateCanceledError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateAuthError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateOutOfDateError: pulumi.Int(0),\n\t\t\t\t\tIgnoreCertificateUsingError: pulumi.Int(0),\n\t\t\t\t\tConnectionTimeout: pulumi.Int(6090),\n\t\t\t\t\tIgnoreInvalidHostError: pulumi.Int(0),\n\t\t\t\t\tVerifyWay: pulumi.Int(0),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tDownloadKernel: pulumi.Int(0),\n\t\t\t\t\tQuickProtocol: pulumi.Int(2),\n\t\t\t\t\tIgnoreCertificateStatusError: pulumi.Int(1),\n\t\t\t\t\tTransmissionSize: pulumi.Int(128),\n\t\t\t\t\tValidateKeywords: pulumi.String(\"senyuan1\"),\n\t\t\t\t},\n\t\t\t\tStream: \u0026arms.SyntheticTaskMonitorConfStreamArgs{\n\t\t\t\t\tStreamMonitorTimeout: pulumi.Int(10),\n\t\t\t\t\tStreamAddressType: pulumi.Int(0),\n\t\t\t\t\tPlayerType: pulumi.Int(2),\n\t\t\t\t\tCustomHeaderContent: pulumi.StringMap{\n\t\t\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\t},\n\t\t\t\t\tWhiteList: pulumi.String(\"www.aliyun.com:203.0.3.55\"),\n\t\t\t\t\tTargetUrl: pulumi.String(\"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\"),\n\t\t\t\t\tStreamType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tNetIcmp: \u0026arms.SyntheticTaskMonitorConfNetIcmpArgs{\n\t\t\t\t\tTargetUrl: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\tInterval: pulumi.Int(200),\n\t\t\t\t\tPackageNum: pulumi.Int(36),\n\t\t\t\t\tPackageSize: pulumi.Int(512),\n\t\t\t\t\tTimeout: pulumi.Int(1000),\n\t\t\t\t\tTracertEnable: pulumi.Bool(true),\n\t\t\t\t\tTracertNumMax: pulumi.Int(1),\n\t\t\t\t\tTracertTimeout: pulumi.Int(1200),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTaskType: pulumi.Int(1),\n\t\t\tFrequency: pulumi.String(\"1h\"),\n\t\t\tMonitorCategory: pulumi.Int(1),\n\t\t\tCommonSetting: \u0026arms.SyntheticTaskCommonSettingArgs{\n\t\t\t\tXtraceRegion: pulumi.String(\"cn-beijing\"),\n\t\t\t\tCustomHost: \u0026arms.SyntheticTaskCommonSettingCustomHostArgs{\n\t\t\t\t\tHosts: arms.SyntheticTaskCommonSettingCustomHostHostArray{\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.a.aliyun.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.102\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.shifen.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.110\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"114.114.114.114\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"127.0.0.1\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(1),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026arms.SyntheticTaskCommonSettingCustomHostHostArgs{\n\t\t\t\t\t\t\tDomain: pulumi.String(\"www.aliyun.com\"),\n\t\t\t\t\t\t\tIps: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"153.3.238.110\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"180.101.50.242\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"180.101.50.188\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tIpType: pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSelectType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t\tMonitorSamples: pulumi.Int(1),\n\t\t\t\tIpType: pulumi.Int(1),\n\t\t\t\tIsOpenTrace: pulumi.Bool(true),\n\t\t\t\tTraceClientType: pulumi.Int(1),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.arms.SyntheticTask;\nimport com.pulumi.alicloud.arms.SyntheticTaskArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCustomPeriodArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskAvailableAssertionArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetTcpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetDnsArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfApiHttpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfApiHttpRequestBodyArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfWebsiteArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfFileDownloadArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfStreamArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskMonitorConfNetIcmpArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCommonSettingArgs;\nimport com.pulumi.alicloud.arms.inputs.SyntheticTaskCommonSettingCustomHostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultSyntheticTask = new SyntheticTask(\"defaultSyntheticTask\", SyntheticTaskArgs.builder()\n .monitors(SyntheticTaskMonitorArgs.builder()\n .cityCode(\"1200101\")\n .operatorCode(\"246\")\n .clientType(4)\n .build())\n .syntheticTaskName(name)\n .customPeriod(SyntheticTaskCustomPeriodArgs.builder()\n .endHour(12)\n .startHour(11)\n .build())\n .availableAssertions( \n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackLoss\")\n .operator(\"neq\")\n .expect(\"200\")\n .target(\"example\")\n .build(),\n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackAvgLatency\")\n .operator(\"lte\")\n .expect(\"1000\")\n .build(),\n SyntheticTaskAvailableAssertionArgs.builder()\n .type(\"IcmpPackMaxLatency\")\n .operator(\"lte\")\n .expect(\"10000\")\n .build())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .status(\"RUNNING\")\n .monitorConf(SyntheticTaskMonitorConfArgs.builder()\n .netTcp(SyntheticTaskMonitorConfNetTcpArgs.builder()\n .tracertTimeout(1050)\n .targetUrl(\"www.aliyun.com\")\n .connectTimes(6)\n .interval(300)\n .timeout(3000)\n .tracertNumMax(2)\n .build())\n .netDns(SyntheticTaskMonitorConfNetDnsArgs.builder()\n .queryMethod(1)\n .timeout(5050)\n .targetUrl(\"www.aliyun.com\")\n .dnsServerIpType(1)\n .nsServer(\"61.128.114.167\")\n .build())\n .apiHttp(SyntheticTaskMonitorConfApiHttpArgs.builder()\n .timeout(10050)\n .targetUrl(\"https://www.aliyun.com\")\n .method(\"POST\")\n .requestHeaders(Map.of(\"key1\", \"value1\"))\n .requestBody(SyntheticTaskMonitorConfApiHttpRequestBodyArgs.builder()\n .content(\"example2\")\n .type(\"text/html\")\n .build())\n .connectTimeout(6000)\n .build())\n .website(SyntheticTaskMonitorConfWebsiteArgs.builder()\n .slowElementThreshold(5005)\n .verifyStringBlacklist(\"Failed\")\n .elementBlacklist(\"a.jpg\")\n .disableCompression(1)\n .ignoreCertificateError(0)\n .monitorTimeout(20000)\n .redirection(0)\n .dnsHijackWhitelist(\"www.aliyun.com:203.0.3.55\")\n .pageTamper(\"www.aliyun.com:|/cc/bb/a.gif\")\n .flowHijackJumpTimes(10)\n .customHeader(1)\n .disableCache(1)\n .verifyStringWhitelist(\"Senyuan\")\n .targetUrl(\"http://www.aliyun.com\")\n .automaticScrolling(1)\n .waitCompletionTime(5005)\n .flowHijackLogo(\"senyuan1\")\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .filterInvalidIp(0)\n .build())\n .fileDownload(SyntheticTaskMonitorConfFileDownloadArgs.builder()\n .whiteList(\"www.aliyun.com:203.0.3.55\")\n .monitorTimeout(1050)\n .ignoreCertificateUntrustworthyError(0)\n .redirection(0)\n .ignoreCertificateCanceledError(0)\n .ignoreCertificateAuthError(0)\n .ignoreCertificateOutOfDateError(0)\n .ignoreCertificateUsingError(0)\n .connectionTimeout(6090)\n .ignoreInvalidHostError(0)\n .verifyWay(0)\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .targetUrl(\"https://www.aliyun.com\")\n .downloadKernel(0)\n .quickProtocol(2)\n .ignoreCertificateStatusError(1)\n .transmissionSize(128)\n .validateKeywords(\"senyuan1\")\n .build())\n .stream(SyntheticTaskMonitorConfStreamArgs.builder()\n .streamMonitorTimeout(10)\n .streamAddressType(0)\n .playerType(2)\n .customHeaderContent(Map.of(\"key1\", \"value1\"))\n .whiteList(\"www.aliyun.com:203.0.3.55\")\n .targetUrl(\"https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\")\n .streamType(1)\n .build())\n .netIcmp(SyntheticTaskMonitorConfNetIcmpArgs.builder()\n .targetUrl(\"www.aliyun.com\")\n .interval(200)\n .packageNum(36)\n .packageSize(512)\n .timeout(1000)\n .tracertEnable(true)\n .tracertNumMax(1)\n .tracertTimeout(1200)\n .build())\n .build())\n .taskType(1)\n .frequency(\"1h\")\n .monitorCategory(1)\n .commonSetting(SyntheticTaskCommonSettingArgs.builder()\n .xtraceRegion(\"cn-beijing\")\n .customHost(SyntheticTaskCommonSettingCustomHostArgs.builder()\n .hosts( \n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.a.aliyun.com\")\n .ips(\"153.3.238.102\")\n .ipType(0)\n .build(),\n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.shifen.com\")\n .ips( \n \"153.3.238.110\",\n \"114.114.114.114\",\n \"127.0.0.1\")\n .ipType(1)\n .build(),\n SyntheticTaskCommonSettingCustomHostHostArgs.builder()\n .domain(\"www.aliyun.com\")\n .ips( \n \"153.3.238.110\",\n \"180.101.50.242\",\n \"180.101.50.188\")\n .ipType(0)\n .build())\n .selectType(1)\n .build())\n .monitorSamples(1)\n .ipType(1)\n .isOpenTrace(true)\n .traceClientType(1)\n .build())\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultSyntheticTask:\n type: alicloud:arms:SyntheticTask\n name: default\n properties:\n monitors:\n - cityCode: '1200101'\n operatorCode: '246'\n clientType: '4'\n syntheticTaskName: ${name}\n customPeriod:\n endHour: '12'\n startHour: '11'\n availableAssertions:\n - type: IcmpPackLoss\n operator: neq\n expect: '200'\n target: example\n - type: IcmpPackAvgLatency\n operator: lte\n expect: '1000'\n - type: IcmpPackMaxLatency\n operator: lte\n expect: '10000'\n tags:\n Created: TF\n For: example\n status: RUNNING\n monitorConf:\n netTcp:\n tracertTimeout: '1050'\n targetUrl: www.aliyun.com\n connectTimes: '6'\n interval: '300'\n timeout: '3000'\n tracertNumMax: '2'\n netDns:\n queryMethod: '1'\n timeout: '5050'\n targetUrl: www.aliyun.com\n dnsServerIpType: '1'\n nsServer: 61.128.114.167\n apiHttp:\n timeout: '10050'\n targetUrl: https://www.aliyun.com\n method: POST\n requestHeaders:\n key1: value1\n requestBody:\n content: example2\n type: text/html\n connectTimeout: '6000'\n website:\n slowElementThreshold: '5005'\n verifyStringBlacklist: Failed\n elementBlacklist: a.jpg\n disableCompression: '1'\n ignoreCertificateError: '0'\n monitorTimeout: '20000'\n redirection: '0'\n dnsHijackWhitelist: www.aliyun.com:203.0.3.55\n pageTamper: www.aliyun.com:|/cc/bb/a.gif\n flowHijackJumpTimes: '10'\n customHeader: '1'\n disableCache: '1'\n verifyStringWhitelist: Senyuan\n targetUrl: http://www.aliyun.com\n automaticScrolling: '1'\n waitCompletionTime: '5005'\n flowHijackLogo: senyuan1\n customHeaderContent:\n key1: value1\n filterInvalidIp: '0'\n fileDownload:\n whiteList: www.aliyun.com:203.0.3.55\n monitorTimeout: '1050'\n ignoreCertificateUntrustworthyError: '0'\n redirection: '0'\n ignoreCertificateCanceledError: '0'\n ignoreCertificateAuthError: '0'\n ignoreCertificateOutOfDateError: '0'\n ignoreCertificateUsingError: '0'\n connectionTimeout: '6090'\n ignoreInvalidHostError: '0'\n verifyWay: '0'\n customHeaderContent:\n key1: value1\n targetUrl: https://www.aliyun.com\n downloadKernel: '0'\n quickProtocol: '2'\n ignoreCertificateStatusError: '1'\n transmissionSize: '128'\n validateKeywords: senyuan1\n stream:\n streamMonitorTimeout: '10'\n streamAddressType: '0'\n playerType: '2'\n customHeaderContent:\n key1: value1\n whiteList: www.aliyun.com:203.0.3.55\n targetUrl: https://acd-assets.alicdn.com:443/2021productweek/week1_s.mp4\n streamType: '1'\n netIcmp:\n targetUrl: www.aliyun.com\n interval: '200'\n packageNum: '36'\n packageSize: '512'\n timeout: '1000'\n tracertEnable: 'true'\n tracertNumMax: '1'\n tracertTimeout: '1200'\n taskType: '1'\n frequency: 1h\n monitorCategory: '1'\n commonSetting:\n xtraceRegion: cn-beijing\n customHost:\n hosts:\n - domain: www.a.aliyun.com\n ips:\n - 153.3.238.102\n ipType: '0'\n - domain: www.shifen.com\n ips:\n - 153.3.238.110\n - 114.114.114.114\n - 127.0.0.1\n ipType: '1'\n - domain: www.aliyun.com\n ips:\n - 153.3.238.110\n - 180.101.50.242\n - 180.101.50.188\n ipType: '0'\n selectType: '1'\n monitorSamples: '1'\n ipType: '1'\n isOpenTrace: 'true'\n traceClientType: '1'\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nARMS Synthetic Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:arms/syntheticTask:SyntheticTask example \u003cid\u003e\n```\n\n",
"properties": {
"availableAssertions": {
"type": "array",
@@ -108028,7 +109881,7 @@
}
},
"alicloud:bastionhost/host:Host": {
- "description": "Provides a Bastion Host Host resource.\n\nFor information about Bastion Host Host and how to use it, see [What is Host](https://www.alibabacloud.com/help/en/doc-detail/201330.htm).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/host:Host example \u003cinstance_id\u003e:\u003chost_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host resource.\n\nFor information about Bastion Host Host and how to use it, see [What is Host](https://www.alibabacloud.com/help/en/doc-detail/201330.htm).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/host:Host example \u003cinstance_id\u003e:\u003chost_id\u003e\n```\n\n",
"properties": {
"activeAddressType": {
"type": "string",
@@ -108190,7 +110043,7 @@
}
},
"alicloud:bastionhost/hostAccount:HostAccount": {
- "description": "Provides a Bastion Host Host Account resource.\n\nFor information about Bastion Host Host Account and how to use it, see [What is Host Account](https://www.alibabacloud.com/help/en/doc-detail/204377.htm).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccount:HostAccount example \u003cinstance_id\u003e:\u003chost_account_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Account resource.\n\nFor information about Bastion Host Host Account and how to use it, see [What is Host Account](https://www.alibabacloud.com/help/en/doc-detail/204377.htm).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccount:HostAccount example \u003cinstance_id\u003e:\u003chost_account_id\u003e\n```\n\n",
"properties": {
"hostAccountId": {
"type": "string",
@@ -108323,7 +110176,7 @@
}
},
"alicloud:bastionhost/hostAccountShareKeyAttachment:HostAccountShareKeyAttachment": {
- "description": "Provides a Bastion Host Account Share Key Attachment resource.\n\nFor information about Bastion Host Host Account Share Key Attachment and how to use it, see [What is Host Account Share Key Attachment](https://www.alibabacloud.com/help/en/bastion-host/latest/attachhostaccountstohostsharekey).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst privateKey = config.get(\"privateKey\") || \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\nconst defaultHostShareKey = new alicloud.bastionhost.HostShareKey(\"default\", {\n hostShareKeyName: name,\n instanceId: defaultInstance.id,\n privateKey: privateKey,\n});\nconst defaultHostAccountShareKeyAttachment = new alicloud.bastionhost.HostAccountShareKeyAttachment(\"default\", {\n instanceId: defaultInstance.id,\n hostShareKeyId: defaultHostShareKey.hostShareKeyId,\n hostAccountId: defaultHostAccount.hostAccountId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\nprivate_key = config.get(\"privateKey\")\nif private_key is None:\n private_key = \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\ndefault_host_share_key = alicloud.bastionhost.HostShareKey(\"default\",\n host_share_key_name=name,\n instance_id=default_instance.id,\n private_key=private_key)\ndefault_host_account_share_key_attachment = alicloud.bastionhost.HostAccountShareKeyAttachment(\"default\",\n instance_id=default_instance.id,\n host_share_key_id=default_host_share_key.host_share_key_id,\n host_account_id=default_host_account.host_account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var privateKey = config.Get(\"privateKey\") ?? \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\n var defaultHostShareKey = new AliCloud.BastionHost.HostShareKey(\"default\", new()\n {\n HostShareKeyName = name,\n InstanceId = defaultInstance.Id,\n PrivateKey = privateKey,\n });\n\n var defaultHostAccountShareKeyAttachment = new AliCloud.BastionHost.HostAccountShareKeyAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostShareKeyId = defaultHostShareKey.HostShareKeyId,\n HostAccountId = defaultHostAccount.HostAccountId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprivateKey := \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\n\t\tif param := cfg.Get(\"privateKey\"); param != \"\" {\n\t\t\tprivateKey = param\n\t\t}\n\t\tdefaultHostShareKey, err := bastionhost.NewHostShareKey(ctx, \"default\", \u0026bastionhost.HostShareKeyArgs{\n\t\t\tHostShareKeyName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tPrivateKey: pulumi.String(privateKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountShareKeyAttachment(ctx, \"default\", \u0026bastionhost.HostAccountShareKeyAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostShareKeyId: defaultHostShareKey.HostShareKeyId,\n\t\t\tHostAccountId: defaultHostAccount.HostAccountId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostShareKey;\nimport com.pulumi.alicloud.bastionhost.HostShareKeyArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountShareKeyAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountShareKeyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n final var privateKey = config.get(\"privateKey\").orElse(\"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\");\n var defaultHostShareKey = new HostShareKey(\"defaultHostShareKey\", HostShareKeyArgs.builder()\n .hostShareKeyName(name)\n .instanceId(defaultInstance.id())\n .privateKey(privateKey)\n .build());\n\n var defaultHostAccountShareKeyAttachment = new HostAccountShareKeyAttachment(\"defaultHostAccountShareKeyAttachment\", HostAccountShareKeyAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .hostShareKeyId(defaultHostShareKey.hostShareKeyId())\n .hostAccountId(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n privateKey:\n type: string\n default: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostShareKey:\n type: alicloud:bastionhost:HostShareKey\n name: default\n properties:\n hostShareKeyName: ${name}\n instanceId: ${defaultInstance.id}\n privateKey: ${privateKey}\n defaultHostAccountShareKeyAttachment:\n type: alicloud:bastionhost:HostAccountShareKeyAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostShareKeyId: ${defaultHostShareKey.hostShareKeyId}\n hostAccountId: ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Account Share Key Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountShareKeyAttachment:HostAccountShareKeyAttachment example \u003cinstance_id\u003e:\u003chost_share_key_id\u003e:\u003chost_account_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Account Share Key Attachment resource.\n\nFor information about Bastion Host Host Account Share Key Attachment and how to use it, see [What is Host Account Share Key Attachment](https://www.alibabacloud.com/help/en/bastion-host/latest/attachhostaccountstohostsharekey).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst privateKey = config.get(\"privateKey\") || \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\nconst defaultHostShareKey = new alicloud.bastionhost.HostShareKey(\"default\", {\n hostShareKeyName: name,\n instanceId: defaultInstance.id,\n privateKey: privateKey,\n});\nconst defaultHostAccountShareKeyAttachment = new alicloud.bastionhost.HostAccountShareKeyAttachment(\"default\", {\n instanceId: defaultInstance.id,\n hostShareKeyId: defaultHostShareKey.hostShareKeyId,\n hostAccountId: defaultHostAccount.hostAccountId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\nprivate_key = config.get(\"privateKey\")\nif private_key is None:\n private_key = \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\ndefault_host_share_key = alicloud.bastionhost.HostShareKey(\"default\",\n host_share_key_name=name,\n instance_id=default_instance.id,\n private_key=private_key)\ndefault_host_account_share_key_attachment = alicloud.bastionhost.HostAccountShareKeyAttachment(\"default\",\n instance_id=default_instance.id,\n host_share_key_id=default_host_share_key.host_share_key_id,\n host_account_id=default_host_account.host_account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var privateKey = config.Get(\"privateKey\") ?? \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\n var defaultHostShareKey = new AliCloud.BastionHost.HostShareKey(\"default\", new()\n {\n HostShareKeyName = name,\n InstanceId = defaultInstance.Id,\n PrivateKey = privateKey,\n });\n\n var defaultHostAccountShareKeyAttachment = new AliCloud.BastionHost.HostAccountShareKeyAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostShareKeyId = defaultHostShareKey.HostShareKeyId,\n HostAccountId = defaultHostAccount.HostAccountId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprivateKey := \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\n\t\tif param := cfg.Get(\"privateKey\"); param != \"\" {\n\t\t\tprivateKey = param\n\t\t}\n\t\tdefaultHostShareKey, err := bastionhost.NewHostShareKey(ctx, \"default\", \u0026bastionhost.HostShareKeyArgs{\n\t\t\tHostShareKeyName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tPrivateKey: pulumi.String(privateKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountShareKeyAttachment(ctx, \"default\", \u0026bastionhost.HostAccountShareKeyAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostShareKeyId: defaultHostShareKey.HostShareKeyId,\n\t\t\tHostAccountId: defaultHostAccount.HostAccountId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostShareKey;\nimport com.pulumi.alicloud.bastionhost.HostShareKeyArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountShareKeyAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountShareKeyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n final var privateKey = config.get(\"privateKey\").orElse(\"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\");\n var defaultHostShareKey = new HostShareKey(\"defaultHostShareKey\", HostShareKeyArgs.builder()\n .hostShareKeyName(name)\n .instanceId(defaultInstance.id())\n .privateKey(privateKey)\n .build());\n\n var defaultHostAccountShareKeyAttachment = new HostAccountShareKeyAttachment(\"defaultHostAccountShareKeyAttachment\", HostAccountShareKeyAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .hostShareKeyId(defaultHostShareKey.hostShareKeyId())\n .hostAccountId(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n privateKey:\n type: string\n default: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostShareKey:\n type: alicloud:bastionhost:HostShareKey\n name: default\n properties:\n hostShareKeyName: ${name}\n instanceId: ${defaultInstance.id}\n privateKey: ${privateKey}\n defaultHostAccountShareKeyAttachment:\n type: alicloud:bastionhost:HostAccountShareKeyAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostShareKeyId: ${defaultHostShareKey.hostShareKeyId}\n hostAccountId: ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Account Share Key Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountShareKeyAttachment:HostAccountShareKeyAttachment example \u003cinstance_id\u003e:\u003chost_share_key_id\u003e:\u003chost_account_id\u003e\n```\n\n",
"properties": {
"hostAccountId": {
"type": "string",
@@ -108388,7 +110241,7 @@
}
},
"alicloud:bastionhost/hostAccountUserAttachment:HostAccountUserAttachment": {
- "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultHostAccountUserAttachment = new alicloud.bastionhost.HostAccountUserAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userId: localUser.userId,\n hostId: defaultHost.hostId,\n hostAccountIds: [defaultHostAccount.hostAccountId],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_host_account_user_attachment = alicloud.bastionhost.HostAccountUserAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_id=local_user.user_id,\n host_id=default_host.host_id,\n host_account_ids=[default_host_account.host_account_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultHostAccountUserAttachment = new AliCloud.BastionHost.HostAccountUserAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserId = localUser.UserId,\n HostId = defaultHost.HostId,\n HostAccountIds = new[]\n {\n defaultHostAccount.HostAccountId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountUserAttachment(ctx, \"default\", \u0026bastionhost.HostAccountUserAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserId: localUser.UserId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tHostAccountIds: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultHostAccountUserAttachment = new HostAccountUserAttachment(\"defaultHostAccountUserAttachment\", HostAccountUserAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userId(localUser.userId())\n .hostId(defaultHost.hostId())\n .hostAccountIds(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultHostAccountUserAttachment:\n type: alicloud:bastionhost:HostAccountUserAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userId: ${localUser.userId}\n hostId: ${defaultHost.hostId}\n hostAccountIds:\n - ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountUserAttachment:HostAccountUserAttachment example \u003cinstance_id\u003e:\u003cuser_id\u003e:\u003chost_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultHostAccountUserAttachment = new alicloud.bastionhost.HostAccountUserAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userId: localUser.userId,\n hostId: defaultHost.hostId,\n hostAccountIds: [defaultHostAccount.hostAccountId],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_host_account_user_attachment = alicloud.bastionhost.HostAccountUserAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_id=local_user.user_id,\n host_id=default_host.host_id,\n host_account_ids=[default_host_account.host_account_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultHostAccountUserAttachment = new AliCloud.BastionHost.HostAccountUserAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserId = localUser.UserId,\n HostId = defaultHost.HostId,\n HostAccountIds = new[]\n {\n defaultHostAccount.HostAccountId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountUserAttachment(ctx, \"default\", \u0026bastionhost.HostAccountUserAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserId: localUser.UserId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tHostAccountIds: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultHostAccountUserAttachment = new HostAccountUserAttachment(\"defaultHostAccountUserAttachment\", HostAccountUserAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userId(localUser.userId())\n .hostId(defaultHost.hostId())\n .hostAccountIds(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultHostAccountUserAttachment:\n type: alicloud:bastionhost:HostAccountUserAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userId: ${localUser.userId}\n hostId: ${defaultHost.hostId}\n hostAccountIds:\n - ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountUserAttachment:HostAccountUserAttachment example \u003cinstance_id\u003e:\u003cuser_id\u003e:\u003chost_id\u003e\n```\n\n",
"properties": {
"hostAccountIds": {
"type": "array",
@@ -108476,7 +110329,7 @@
}
},
"alicloud:bastionhost/hostAccountUserGroupAttachment:HostAccountUserGroupAttachment": {
- "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupName: name,\n});\nconst defaultHostAccountUserGroupAttachment = new alicloud.bastionhost.HostAccountUserGroupAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupId: defaultUserGroup.userGroupId,\n hostId: defaultHost.hostId,\n hostAccountIds: [defaultHostAccount.hostAccountId],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_host.instance_id,\n user_group_name=name)\ndefault_host_account_user_group_attachment = alicloud.bastionhost.HostAccountUserGroupAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_group_id=default_user_group.user_group_id,\n host_id=default_host.host_id,\n host_account_ids=[default_host_account.host_account_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupName = name,\n });\n\n var defaultHostAccountUserGroupAttachment = new AliCloud.BastionHost.HostAccountUserGroupAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupId = defaultUserGroup.UserGroupId,\n HostId = defaultHost.HostId,\n HostAccountIds = new[]\n {\n defaultHostAccount.HostAccountId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountUserGroupAttachment(ctx, \"default\", \u0026bastionhost.HostAccountUserGroupAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tHostAccountIds: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserGroupAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupName(name)\n .build());\n\n var defaultHostAccountUserGroupAttachment = new HostAccountUserGroupAttachment(\"defaultHostAccountUserGroupAttachment\", HostAccountUserGroupAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupId(defaultUserGroup.userGroupId())\n .hostId(defaultHost.hostId())\n .hostAccountIds(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupName: ${name}\n defaultHostAccountUserGroupAttachment:\n type: alicloud:bastionhost:HostAccountUserGroupAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupId: ${defaultUserGroup.userGroupId}\n hostId: ${defaultHost.hostId}\n hostAccountIds:\n - ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountUserGroupAttachment:HostAccountUserGroupAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003chost_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupName: name,\n});\nconst defaultHostAccountUserGroupAttachment = new alicloud.bastionhost.HostAccountUserGroupAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupId: defaultUserGroup.userGroupId,\n hostId: defaultHost.hostId,\n hostAccountIds: [defaultHostAccount.hostAccountId],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_host.instance_id,\n user_group_name=name)\ndefault_host_account_user_group_attachment = alicloud.bastionhost.HostAccountUserGroupAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_group_id=default_user_group.user_group_id,\n host_id=default_host.host_id,\n host_account_ids=[default_host_account.host_account_id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupName = name,\n });\n\n var defaultHostAccountUserGroupAttachment = new AliCloud.BastionHost.HostAccountUserGroupAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupId = defaultUserGroup.UserGroupId,\n HostId = defaultHost.HostId,\n HostAccountIds = new[]\n {\n defaultHostAccount.HostAccountId,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAccountUserGroupAttachment(ctx, \"default\", \u0026bastionhost.HostAccountUserGroupAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tHostAccountIds: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserGroupAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAccountUserGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupName(name)\n .build());\n\n var defaultHostAccountUserGroupAttachment = new HostAccountUserGroupAttachment(\"defaultHostAccountUserGroupAttachment\", HostAccountUserGroupAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupId(defaultUserGroup.userGroupId())\n .hostId(defaultHost.hostId())\n .hostAccountIds(defaultHostAccount.hostAccountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupName: ${name}\n defaultHostAccountUserGroupAttachment:\n type: alicloud:bastionhost:HostAccountUserGroupAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupId: ${defaultUserGroup.userGroupId}\n hostId: ${defaultHost.hostId}\n hostAccountIds:\n - ${defaultHostAccount.hostAccountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAccountUserGroupAttachment:HostAccountUserGroupAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003chost_id\u003e\n```\n\n",
"properties": {
"hostAccountIds": {
"type": "array",
@@ -108564,7 +110417,7 @@
}
},
"alicloud:bastionhost/hostAttachment:HostAttachment": {
- "description": "Provides a Bastion Host Host Attachment resource to add host into one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAttachment = new alicloud.bastionhost.HostAttachment(\"default\", {\n hostGroupId: defaultHostGroup.hostGroupId,\n hostId: defaultHost.hostId,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_attachment = alicloud.bastionhost.HostAttachment(\"default\",\n host_group_id=default_host_group.host_group_id,\n host_id=default_host.host_id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAttachment = new AliCloud.BastionHost.HostAttachment(\"default\", new()\n {\n HostGroupId = defaultHostGroup.HostGroupId,\n HostId = defaultHost.HostId,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAttachment(ctx, \"default\", \u0026bastionhost.HostAttachmentArgs{\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAttachment = new HostAttachment(\"defaultHostAttachment\", HostAttachmentArgs.builder()\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostId(defaultHost.hostId())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAttachment:\n type: alicloud:bastionhost:HostAttachment\n name: default\n properties:\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAttachment:HostAttachment example \u003cinstance_id\u003e:\u003chost_group_id\u003e:\u003chost_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Attachment resource to add host into one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAttachment = new alicloud.bastionhost.HostAttachment(\"default\", {\n hostGroupId: defaultHostGroup.hostGroupId,\n hostId: defaultHost.hostId,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_attachment = alicloud.bastionhost.HostAttachment(\"default\",\n host_group_id=default_host_group.host_group_id,\n host_id=default_host.host_id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAttachment = new AliCloud.BastionHost.HostAttachment(\"default\", new()\n {\n HostGroupId = defaultHostGroup.HostGroupId,\n HostId = defaultHost.HostId,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostAttachment(ctx, \"default\", \u0026bastionhost.HostAttachmentArgs{\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAttachment;\nimport com.pulumi.alicloud.bastionhost.HostAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAttachment = new HostAttachment(\"defaultHostAttachment\", HostAttachmentArgs.builder()\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostId(defaultHost.hostId())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAttachment:\n type: alicloud:bastionhost:HostAttachment\n name: default\n properties:\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostAttachment:HostAttachment example \u003cinstance_id\u003e:\u003chost_group_id\u003e:\u003chost_id\u003e\n```\n\n",
"properties": {
"hostGroupId": {
"type": "string",
@@ -108629,7 +110482,7 @@
}
},
"alicloud:bastionhost/hostGroup:HostGroup": {
- "description": "Provides a Bastion Host Host Group resource.\n\nFor information about Bastion Host Host Group and how to use it, see [What is Host Group](https://www.alibabacloud.com/help/en/doc-detail/204307.htm).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroup:HostGroup example \u003cinstance_id\u003e:\u003chost_group_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Group resource.\n\nFor information about Bastion Host Host Group and how to use it, see [What is Host Group](https://www.alibabacloud.com/help/en/doc-detail/204307.htm).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroup:HostGroup example \u003cinstance_id\u003e:\u003chost_group_id\u003e\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -108697,7 +110550,7 @@
}
},
"alicloud:bastionhost/hostGroupAccountUserAttachment:HostGroupAccountUserAttachment": {
- "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user and one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultHostGroupAccountUserAttachment = new alicloud.bastionhost.HostGroupAccountUserAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userId: localUser.userId,\n hostGroupId: defaultHostGroup.hostGroupId,\n hostAccountNames: [defaultHostAccount.hostAccountName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_host_group_account_user_attachment = alicloud.bastionhost.HostGroupAccountUserAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_id=local_user.user_id,\n host_group_id=default_host_group.host_group_id,\n host_account_names=[default_host_account.host_account_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultHostGroupAccountUserAttachment = new AliCloud.BastionHost.HostGroupAccountUserAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserId = localUser.UserId,\n HostGroupId = defaultHostGroup.HostGroupId,\n HostAccountNames = new[]\n {\n defaultHostAccount.HostAccountName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroupAccountUserAttachment(ctx, \"default\", \u0026bastionhost.HostGroupAccountUserAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserId: localUser.UserId,\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostAccountNames: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserAttachment;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultHostGroupAccountUserAttachment = new HostGroupAccountUserAttachment(\"defaultHostGroupAccountUserAttachment\", HostGroupAccountUserAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userId(localUser.userId())\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostAccountNames(defaultHostAccount.hostAccountName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultHostGroupAccountUserAttachment:\n type: alicloud:bastionhost:HostGroupAccountUserAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userId: ${localUser.userId}\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostAccountNames:\n - ${defaultHostAccount.hostAccountName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroupAccountUserAttachment:HostGroupAccountUserAttachment example \u003cinstance_id\u003e:\u003cuser_id\u003e:\u003chost_group_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user and one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultHostGroupAccountUserAttachment = new alicloud.bastionhost.HostGroupAccountUserAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userId: localUser.userId,\n hostGroupId: defaultHostGroup.hostGroupId,\n hostAccountNames: [defaultHostAccount.hostAccountName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_host_group_account_user_attachment = alicloud.bastionhost.HostGroupAccountUserAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_id=local_user.user_id,\n host_group_id=default_host_group.host_group_id,\n host_account_names=[default_host_account.host_account_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultHostGroupAccountUserAttachment = new AliCloud.BastionHost.HostGroupAccountUserAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserId = localUser.UserId,\n HostGroupId = defaultHostGroup.HostGroupId,\n HostAccountNames = new[]\n {\n defaultHostAccount.HostAccountName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroupAccountUserAttachment(ctx, \"default\", \u0026bastionhost.HostGroupAccountUserAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserId: localUser.UserId,\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostAccountNames: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserAttachment;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultHostGroupAccountUserAttachment = new HostGroupAccountUserAttachment(\"defaultHostGroupAccountUserAttachment\", HostGroupAccountUserAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userId(localUser.userId())\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostAccountNames(defaultHostAccount.hostAccountName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultHostGroupAccountUserAttachment:\n type: alicloud:bastionhost:HostGroupAccountUserAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userId: ${localUser.userId}\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostAccountNames:\n - ${defaultHostAccount.hostAccountName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroupAccountUserAttachment:HostGroupAccountUserAttachment example \u003cinstance_id\u003e:\u003cuser_id\u003e:\u003chost_group_id\u003e\n```\n\n",
"properties": {
"hostAccountNames": {
"type": "array",
@@ -108785,7 +110638,7 @@
}
},
"alicloud:bastionhost/hostGroupAccountUserGroupAttachment:HostGroupAccountUserGroupAttachment": {
- "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user group and one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupName: name,\n});\nconst defaultHostGroupAccountUserGroupAttachment = new alicloud.bastionhost.HostGroupAccountUserGroupAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupId: defaultUserGroup.userGroupId,\n hostGroupId: defaultHostGroup.hostGroupId,\n hostAccountNames: [defaultHostAccount.hostAccountName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_host.instance_id,\n user_group_name=name)\ndefault_host_group_account_user_group_attachment = alicloud.bastionhost.HostGroupAccountUserGroupAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_group_id=default_user_group.user_group_id,\n host_group_id=default_host_group.host_group_id,\n host_account_names=[default_host_account.host_account_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupName = name,\n });\n\n var defaultHostGroupAccountUserGroupAttachment = new AliCloud.BastionHost.HostGroupAccountUserGroupAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupId = defaultUserGroup.UserGroupId,\n HostGroupId = defaultHostGroup.HostGroupId,\n HostAccountNames = new[]\n {\n defaultHostAccount.HostAccountName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroupAccountUserGroupAttachment(ctx, \"default\", \u0026bastionhost.HostGroupAccountUserGroupAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostAccountNames: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserGroupAttachment;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupName(name)\n .build());\n\n var defaultHostGroupAccountUserGroupAttachment = new HostGroupAccountUserGroupAttachment(\"defaultHostGroupAccountUserGroupAttachment\", HostGroupAccountUserGroupAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupId(defaultUserGroup.userGroupId())\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostAccountNames(defaultHostAccount.hostAccountName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupName: ${name}\n defaultHostGroupAccountUserGroupAttachment:\n type: alicloud:bastionhost:HostGroupAccountUserGroupAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupId: ${defaultUserGroup.userGroupId}\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostAccountNames:\n - ${defaultHostAccount.hostAccountName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroupAccountUserGroupAttachment:HostGroupAccountUserGroupAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003chost_group_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Host Account Attachment resource to add list host accounts into one user group and one host group.\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultHost = new alicloud.bastionhost.Host(\"default\", {\n instanceId: defaultInstance.id,\n hostName: name,\n activeAddressType: \"Private\",\n hostPrivateAddress: \"172.16.0.10\",\n osType: \"Linux\",\n source: \"Local\",\n});\nconst defaultHostAccount = new alicloud.bastionhost.HostAccount(\"default\", {\n hostAccountName: name,\n hostId: defaultHost.hostId,\n instanceId: defaultHost.instanceId,\n protocolName: \"SSH\",\n password: \"YourPassword12345\",\n});\nconst defaultHostGroup = new alicloud.bastionhost.HostGroup(\"default\", {\n hostGroupName: name,\n instanceId: defaultInstance.id,\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupName: name,\n});\nconst defaultHostGroupAccountUserGroupAttachment = new alicloud.bastionhost.HostGroupAccountUserGroupAttachment(\"default\", {\n instanceId: defaultHost.instanceId,\n userGroupId: defaultUserGroup.userGroupId,\n hostGroupId: defaultHostGroup.hostGroupId,\n hostAccountNames: [defaultHostAccount.hostAccountName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_host = alicloud.bastionhost.Host(\"default\",\n instance_id=default_instance.id,\n host_name=name,\n active_address_type=\"Private\",\n host_private_address=\"172.16.0.10\",\n os_type=\"Linux\",\n source=\"Local\")\ndefault_host_account = alicloud.bastionhost.HostAccount(\"default\",\n host_account_name=name,\n host_id=default_host.host_id,\n instance_id=default_host.instance_id,\n protocol_name=\"SSH\",\n password=\"YourPassword12345\")\ndefault_host_group = alicloud.bastionhost.HostGroup(\"default\",\n host_group_name=name,\n instance_id=default_instance.id)\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_host.instance_id,\n user_group_name=name)\ndefault_host_group_account_user_group_attachment = alicloud.bastionhost.HostGroupAccountUserGroupAttachment(\"default\",\n instance_id=default_host.instance_id,\n user_group_id=default_user_group.user_group_id,\n host_group_id=default_host_group.host_group_id,\n host_account_names=[default_host_account.host_account_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultHost = new AliCloud.BastionHost.Host(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n HostName = name,\n ActiveAddressType = \"Private\",\n HostPrivateAddress = \"172.16.0.10\",\n OsType = \"Linux\",\n Source = \"Local\",\n });\n\n var defaultHostAccount = new AliCloud.BastionHost.HostAccount(\"default\", new()\n {\n HostAccountName = name,\n HostId = defaultHost.HostId,\n InstanceId = defaultHost.InstanceId,\n ProtocolName = \"SSH\",\n Password = \"YourPassword12345\",\n });\n\n var defaultHostGroup = new AliCloud.BastionHost.HostGroup(\"default\", new()\n {\n HostGroupName = name,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupName = name,\n });\n\n var defaultHostGroupAccountUserGroupAttachment = new AliCloud.BastionHost.HostGroupAccountUserGroupAttachment(\"default\", new()\n {\n InstanceId = defaultHost.InstanceId,\n UserGroupId = defaultUserGroup.UserGroupId,\n HostGroupId = defaultHostGroup.HostGroupId,\n HostAccountNames = new[]\n {\n defaultHostAccount.HostAccountName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHost, err := bastionhost.NewHost(ctx, \"default\", \u0026bastionhost.HostArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tActiveAddressType: pulumi.String(\"Private\"),\n\t\t\tHostPrivateAddress: pulumi.String(\"172.16.0.10\"),\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostAccount, err := bastionhost.NewHostAccount(ctx, \"default\", \u0026bastionhost.HostAccountArgs{\n\t\t\tHostAccountName: pulumi.String(name),\n\t\t\tHostId: defaultHost.HostId,\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tProtocolName: pulumi.String(\"SSH\"),\n\t\t\tPassword: pulumi.String(\"YourPassword12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultHostGroup, err := bastionhost.NewHostGroup(ctx, \"default\", \u0026bastionhost.HostGroupArgs{\n\t\t\tHostGroupName: pulumi.String(name),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewHostGroupAccountUserGroupAttachment(ctx, \"default\", \u0026bastionhost.HostGroupAccountUserGroupAttachmentArgs{\n\t\t\tInstanceId: defaultHost.InstanceId,\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tHostGroupId: defaultHostGroup.HostGroupId,\n\t\t\tHostAccountNames: pulumi.StringArray{\n\t\t\t\tdefaultHostAccount.HostAccountName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.Host;\nimport com.pulumi.alicloud.bastionhost.HostArgs;\nimport com.pulumi.alicloud.bastionhost.HostAccount;\nimport com.pulumi.alicloud.bastionhost.HostAccountArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroup;\nimport com.pulumi.alicloud.bastionhost.HostGroupArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserGroupAttachment;\nimport com.pulumi.alicloud.bastionhost.HostGroupAccountUserGroupAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultHost = new Host(\"defaultHost\", HostArgs.builder()\n .instanceId(defaultInstance.id())\n .hostName(name)\n .activeAddressType(\"Private\")\n .hostPrivateAddress(\"172.16.0.10\")\n .osType(\"Linux\")\n .source(\"Local\")\n .build());\n\n var defaultHostAccount = new HostAccount(\"defaultHostAccount\", HostAccountArgs.builder()\n .hostAccountName(name)\n .hostId(defaultHost.hostId())\n .instanceId(defaultHost.instanceId())\n .protocolName(\"SSH\")\n .password(\"YourPassword12345\")\n .build());\n\n var defaultHostGroup = new HostGroup(\"defaultHostGroup\", HostGroupArgs.builder()\n .hostGroupName(name)\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupName(name)\n .build());\n\n var defaultHostGroupAccountUserGroupAttachment = new HostGroupAccountUserGroupAttachment(\"defaultHostGroupAccountUserGroupAttachment\", HostGroupAccountUserGroupAttachmentArgs.builder()\n .instanceId(defaultHost.instanceId())\n .userGroupId(defaultUserGroup.userGroupId())\n .hostGroupId(defaultHostGroup.hostGroupId())\n .hostAccountNames(defaultHostAccount.hostAccountName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultHost:\n type: alicloud:bastionhost:Host\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n hostName: ${name}\n activeAddressType: Private\n hostPrivateAddress: 172.16.0.10\n osType: Linux\n source: Local\n defaultHostAccount:\n type: alicloud:bastionhost:HostAccount\n name: default\n properties:\n hostAccountName: ${name}\n hostId: ${defaultHost.hostId}\n instanceId: ${defaultHost.instanceId}\n protocolName: SSH\n password: YourPassword12345\n defaultHostGroup:\n type: alicloud:bastionhost:HostGroup\n name: default\n properties:\n hostGroupName: ${name}\n instanceId: ${defaultInstance.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupName: ${name}\n defaultHostGroupAccountUserGroupAttachment:\n type: alicloud:bastionhost:HostGroupAccountUserGroupAttachment\n name: default\n properties:\n instanceId: ${defaultHost.instanceId}\n userGroupId: ${defaultUserGroup.userGroupId}\n hostGroupId: ${defaultHostGroup.hostGroupId}\n hostAccountNames:\n - ${defaultHostAccount.hostAccountName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostGroupAccountUserGroupAttachment:HostGroupAccountUserGroupAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003chost_group_id\u003e\n```\n\n",
"properties": {
"hostAccountNames": {
"type": "array",
@@ -108873,7 +110726,7 @@
}
},
"alicloud:bastionhost/hostShareKey:HostShareKey": {
- "description": "Provides a Bastion Host Share Key resource.\n\nFor information about Bastion Host Host Share Key and how to use it, see [What is Host Share Key](https://www.alibabacloud.com/help/en/bastion-host/latest/createhostsharekey).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.bastionhost.getInstances({});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, defaultGetZones]).then(([defaultGetNetworks, defaultGetZones]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: defaultGetZones.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup: alicloud.ecs.SecurityGroup[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultSecurityGroup.push(new alicloud.ecs.SecurityGroup(`default-${range.value}`, {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])}));\n }\n});\nconst defaultInstance: alicloud.bastionhost.Instance[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultInstance.push(new alicloud.bastionhost.Instance(`default-${range.value}`, {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup[0].id],\n }));\n }\n});\nconst instanceId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, defaultInstance[0].id]).apply(([length, _default, id]) =\u003e length \u003e 0 ? _default.ids?.[0] : id);\nconst privateKey = config.get(\"privateKey\") || \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\nconst defaultHostShareKey = new alicloud.bastionhost.HostShareKey(\"default\", {\n hostShareKeyName: name,\n instanceId: instanceId,\n privateKey: privateKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.bastionhost.get_instances()\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_security_group.append(alicloud.ecs.SecurityGroup(f\"default-{range['value']}\", vpc_id=default_get_networks.ids[0]))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndefault_instance = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_instance.append(alicloud.bastionhost.Instance(f\"default-{range['value']}\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group[0].id.apply(lambda id: id)]))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ninstance_id = pulumi.Output.all(\n length=len(default.ids),\n id=default_instance[0].id\n).apply(lambda resolved_outputs: default.ids[0] if resolved_outputs['length'] \u003e 0 else resolved_outputs['id'])\n\nprivate_key = config.get(\"privateKey\")\nif private_key is None:\n private_key = \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\ndefault_host_share_key = alicloud.bastionhost.HostShareKey(\"default\",\n host_share_key_name=name,\n instance_id=instance_id,\n private_key=private_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.BastionHost.GetInstances.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new List\u003cAliCloud.Ecs.SecurityGroup\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSecurityGroup.Add(new AliCloud.Ecs.SecurityGroup($\"default-{range.Value}\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n }));\n }\n var defaultInstance = new List\u003cAliCloud.BastionHost.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultInstance.Add(new AliCloud.BastionHost.Instance($\"default-{range.Value}\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup[0].Id,\n },\n }));\n }\n var instanceId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length, @default, defaultInstance[0].Id).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var id = values.Item3;\n return length \u003e 0 ? @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids[0]) : id;\n });\n\n var privateKey = config.Get(\"privateKey\") ?? \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\n var defaultHostShareKey = new AliCloud.BastionHost.HostShareKey(\"default\", new()\n {\n HostShareKeyName = name,\n InstanceId = instanceId,\n PrivateKey = privateKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := bastionhost.GetInstances(ctx, \u0026bastionhost.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar tmp0 float64\n\t\tif length \u003e 0 {\n\t\t\ttmp0 = 0\n\t\t} else {\n\t\t\ttmp0 = 1\n\t\t}\n\t\tvar defaultSecurityGroup []*ecs.SecurityGroup\n\t\tfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\n\t\t\treturn tmp0, nil\n\t\t}).(pulumi.Float64Output)); index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := ecs.NewSecurityGroup(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026ecs.SecurityGroupArgs{\n\t\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSecurityGroup = append(defaultSecurityGroup, __res)\n\t\t}\n\t\tvar tmp1 float64\n\t\tif length \u003e 0 {\n\t\t\ttmp1 = 0\n\t\t} else {\n\t\t\ttmp1 = 1\n\t\t}\n\t\tvar defaultInstance []*bastionhost.Instance\n\t\tfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\n\t\t\treturn tmp1, nil\n\t\t}).(pulumi.Float64Output)); index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := bastionhost.NewInstance(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026bastionhost.InstanceArgs{\n\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\t\tPeriod: pulumi.Int(1),\n\t\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\tdefaultSecurityGroup[0].ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultInstance = append(defaultInstance, __res)\n\t\t}\n\t\tvar tmp2 *string\n\t\tif length \u003e 0 {\n\t\t\ttmp2 = _default.Ids[0]\n\t\t} else {\n\t\t\ttmp2 = id\n\t\t}\n\t\tinstanceId := pulumi.All(len(_default.Ids), defaultInstance[0].ID()).ApplyT(func(_args []interface{}) (*string, error) {\n\t\t\tlength := _args[0].(int)\n\t\t\tid := _args[1].(string)\n\t\t\treturn \u0026tmp2, nil\n\t\t}).(pulumi.StringPtrOutput)\n\t\tprivateKey := \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\n\t\tif param := cfg.Get(\"privateKey\"); param != \"\" {\n\t\t\tprivateKey = param\n\t\t}\n\t\t_, err = bastionhost.NewHostShareKey(ctx, \"default\", \u0026bastionhost.HostShareKeyArgs{\n\t\t\tHostShareKeyName: pulumi.String(name),\n\t\t\tInstanceId: pulumi.String(instanceId),\n\t\t\tPrivateKey: pulumi.String(privateKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.bastionhost.BastionhostFunctions;\nimport com.pulumi.alicloud.bastionhost.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostShareKey;\nimport com.pulumi.alicloud.bastionhost.HostShareKeyArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = BastionhostFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new SecurityGroup(\"defaultSecurityGroup-\" + i, SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n \n}\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Instance(\"defaultInstance-\" + i, InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup[0].id())\n .build());\n\n \n}\n final var instanceId = Output.tuple(default_.ids().length(), defaultInstance[0].id()).applyValue(values -\u003e {\n var length = values.t1;\n var id = values.t2;\n return length \u003e 0 ? default_.ids()[0] : id;\n });\n\n final var privateKey = config.get(\"privateKey\").orElse(\"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\");\n var defaultHostShareKey = new HostShareKey(\"defaultHostShareKey\", HostShareKeyArgs.builder()\n .hostShareKeyName(name)\n .instanceId(instanceId)\n .privateKey(privateKey)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host Share Key can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostShareKey:HostShareKey example \u003cinstance_id\u003e:\u003chost_share_key_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host Share Key resource.\n\nFor information about Bastion Host Host Share Key and how to use it, see [What is Host Share Key](https://www.alibabacloud.com/help/en/bastion-host/latest/createhostsharekey).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.bastionhost.getInstances({});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, defaultGetZones]).then(([defaultGetNetworks, defaultGetZones]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: defaultGetZones.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup: alicloud.ecs.SecurityGroup[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultSecurityGroup.push(new alicloud.ecs.SecurityGroup(`default-${range.value}`, {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])}));\n }\n});\nconst defaultInstance: alicloud.bastionhost.Instance[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultInstance.push(new alicloud.bastionhost.Instance(`default-${range.value}`, {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup[0].id],\n }));\n }\n});\nconst instanceId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, defaultInstance[0].id]).apply(([length, _default, id]) =\u003e length \u003e 0 ? _default.ids?.[0] : id);\nconst privateKey = config.get(\"privateKey\") || \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\nconst defaultHostShareKey = new alicloud.bastionhost.HostShareKey(\"default\", {\n hostShareKeyName: name,\n instanceId: instanceId,\n privateKey: privateKey,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.bastionhost.get_instances()\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_security_group.append(alicloud.ecs.SecurityGroup(f\"default-{range['value']}\", vpc_id=default_get_networks.ids[0]))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndefault_instance = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_instance.append(alicloud.bastionhost.Instance(f\"default-{range['value']}\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group[0].id.apply(lambda id: id)]))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ninstance_id = pulumi.Output.all(\n length=len(default.ids),\n id=default_instance[0].id\n).apply(lambda resolved_outputs: default.ids[0] if resolved_outputs['length'] \u003e 0 else resolved_outputs['id'])\n\nprivate_key = config.get(\"privateKey\")\nif private_key is None:\n private_key = \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\ndefault_host_share_key = alicloud.bastionhost.HostShareKey(\"default\",\n host_share_key_name=name,\n instance_id=instance_id,\n private_key=private_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.BastionHost.GetInstances.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new List\u003cAliCloud.Ecs.SecurityGroup\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSecurityGroup.Add(new AliCloud.Ecs.SecurityGroup($\"default-{range.Value}\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n }));\n }\n var defaultInstance = new List\u003cAliCloud.BastionHost.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultInstance.Add(new AliCloud.BastionHost.Instance($\"default-{range.Value}\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup[0].Id,\n },\n }));\n }\n var instanceId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids)).Length, @default, defaultInstance[0].Id).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var id = values.Item3;\n return length \u003e 0 ? @default.Apply(getInstancesResult =\u003e getInstancesResult.Ids[0]) : id;\n });\n\n var privateKey = config.Get(\"privateKey\") ?? \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\";\n var defaultHostShareKey = new AliCloud.BastionHost.HostShareKey(\"default\", new()\n {\n HostShareKeyName = name,\n InstanceId = instanceId,\n PrivateKey = privateKey,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := bastionhost.GetInstances(ctx, \u0026bastionhost.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar tmp0 float64\n\t\tif length \u003e 0 {\n\t\t\ttmp0 = 0\n\t\t} else {\n\t\t\ttmp0 = 1\n\t\t}\n\t\tvar defaultSecurityGroup []*ecs.SecurityGroup\n\t\tfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\n\t\t\treturn tmp0, nil\n\t\t}).(pulumi.Float64Output)); index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := ecs.NewSecurityGroup(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026ecs.SecurityGroupArgs{\n\t\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultSecurityGroup = append(defaultSecurityGroup, __res)\n\t\t}\n\t\tvar tmp1 float64\n\t\tif length \u003e 0 {\n\t\t\ttmp1 = 0\n\t\t} else {\n\t\t\ttmp1 = 1\n\t\t}\n\t\tvar defaultInstance []*bastionhost.Instance\n\t\tfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\n\t\t\treturn tmp1, nil\n\t\t}).(pulumi.Float64Output)); index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := bastionhost.NewInstance(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026bastionhost.InstanceArgs{\n\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\t\tPeriod: pulumi.Int(1),\n\t\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\tdefaultSecurityGroup[0].ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultInstance = append(defaultInstance, __res)\n\t\t}\n\t\tvar tmp2 *string\n\t\tif length \u003e 0 {\n\t\t\ttmp2 = _default.Ids[0]\n\t\t} else {\n\t\t\ttmp2 = id\n\t\t}\n\t\tinstanceId := pulumi.All(len(_default.Ids), defaultInstance[0].ID()).ApplyT(func(_args []interface{}) (*string, error) {\n\t\t\tlength := _args[0].(int)\n\t\t\tid := _args[1].(string)\n\t\t\treturn \u0026tmp2, nil\n\t\t}).(pulumi.StringPtrOutput)\n\t\tprivateKey := \"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\"\n\t\tif param := cfg.Get(\"privateKey\"); param != \"\" {\n\t\t\tprivateKey = param\n\t\t}\n\t\t_, err = bastionhost.NewHostShareKey(ctx, \"default\", \u0026bastionhost.HostShareKeyArgs{\n\t\t\tHostShareKeyName: pulumi.String(name),\n\t\t\tInstanceId: pulumi.String(instanceId),\n\t\t\tPrivateKey: pulumi.String(privateKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.bastionhost.BastionhostFunctions;\nimport com.pulumi.alicloud.bastionhost.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.HostShareKey;\nimport com.pulumi.alicloud.bastionhost.HostShareKeyArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = BastionhostFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new SecurityGroup(\"defaultSecurityGroup-\" + i, SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n \n}\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Instance(\"defaultInstance-\" + i, InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup[0].id())\n .build());\n\n \n}\n final var instanceId = Output.tuple(default_.ids().length(), defaultInstance[0].id()).applyValue(values -\u003e {\n var length = values.t1;\n var id = values.t2;\n return length \u003e 0 ? default_.ids()[0] : id;\n });\n\n final var privateKey = config.get(\"privateKey\").orElse(\"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc25oc29SSVVwVXltSG1FVHJXUGxDbkhMa3c3N0JYTm44ZHcvbDg3eG10SUhjd2syCkRybjFDZk5jZkpJV0tSdkFaYkdKMlZTS1RiRDhPTmcyT3JvUHFGUHBLOHJ5QjJRb1NYQVRsaUVHWFhNeW1tRm8KeDBmem12THFscUxpNGZnOExhcTc5UC85aGxLU1djTWhJU0pYVTNHMS9KdEFBUmEyQXc4cXEzSVQvMkZ5NktrdwowMU9MdDdLN2pGUFRPaHhtdmNoSkZ1SVo1YXI0cW5HUlFHQnpCL2hoRHVIWEMwRlhJZ2ozd0NXMDZ4R2V2WjJyCmNCWWwwN1luL2lvZk95MU0wRjZZN0JrMU95N21vYndzM1JsalUyL2FpZlhLMmNOUlk2Qjl5WXNvd1RBZmQ5OTQKQ2YxSlF3TlhsaUZCeTZueEJLQk1YbDhIU1grS1o3L29PUlIwVXdJREFRQUJBb0lCQVFDbU5JSXR5ckhSY3oxdApJMGo0L0FQc295ZE1EL0owRkJMa2FoSUxKWjFaYW1tbmx4ZHh4WHBQUndXRnVXTEw2OTFVbDI5aUoxb1ptazU1Ci9ka2EvZlhnOUN3OUxXWVN2aExLdVlaMEZOTmhxZ3VoUEVBZy9uLytlR1ZCM2ZYZkxaZVZpK0E0L1VHMG15ZFMKVXVlQ2ZRSElZeWh4VkgvWnc3WER5WmNhVFVZVVdMUWlYcVN0Y2JRbnZFOXpwOGc5TWh5UkhBcWYwbEt2UTRqdwphUnNKTnlob3lhZWcvUXlFeHVYNGdBR1lIc1lTSDRFVmtXOHl5WE1aOHpRdk1OSUNiYXhmUkRuSngybUh6a09rCnFHczVXbFp5L3VrQk5jWTQwd2Y0eTY2bEVJaVpKbiswaFhtSTF4Tk5SdHRwMjZnY3ROOXZWbmVicTdLTnpjTDgKeFQrMXZJaEpBb0dCQU9iMVM1YlE4NVRFWDBoZTRmdXc2R3ExbnhRLzJUSU03emZhK2VhZThPQlh2eVNFV3JpdwpPZzM3RFhVUDFNVU1iTEJRenE0STl1dE5YSVZadEFLR0h6ZDR6WmtQeGxORjZPN0FyWnJEWElDNEdKZHdmSEhxCjJZcDkxUDlWekJlOVhkTVdZVGFCNkMzWVdtYzQwM08vYWdyRCtNb2JnL0hqMSt0d2xZR2hjdlV2QW9HQkFNWFMKT2VnWHc5VUF3VEZabFBtZzZKeDI3TzNXUFBHd1E3QzRnYitFZzZkR1pLRnJVR1ZId2VUUG1HaGtwN1BmYU5ESwplaFVoUWFnNm9XOTF4dkE2YldZZ29SQmczUWkxc01MblRWeTExeVN1UEVFSCtMT2s1N3d2akNLSk5XZnM0SjVyCmg1NGw0QXZ6UVhyWWN0UlZkSmYrNjFacGFnTkdZMVBvWVJMTHJMSWRBb0dBTndydzErRzJtNWJ0YW04S2hwU1QKMzVLbmRnajlkM3N6cStrcE03aGZpZWYvcXZGTU9jWHVJQlRjRVRFVHNWNlRyTFdsZkQ2d3NrVitybDFCbEhSbwpqaXpoT3dCU2NOZ3hlbTA3TXE0cXBwYTViYVltVW5QNUlwTjRwdDNJeFVPaFQ4UitxS0h2TnJYZ1hjZGlSYXl4CjFoejhkeFoxckxselpTNHd3M001MVlzQ2dZRUFpUDEwTEUySXg5Q2wrTTdZWTZZU2I0Zkx1MGhKRy9XOGFuemIKSFExZlBrOTVFRytJVlJyRUl2ZS95MHNvOTE4VzdyL0lteWxVbG5ORHFEUWZkK3grSmVNaXBuenRsRUorRGZxdgprQ3c4dUtJUUI5akZXV0l4T0JpVktyVnB6bll6ZG9Gd2dRd3BneDBKazFDZzlIblpMQWpVWUJyUDEwUy9ORFFRClJUdldjK0VDZ1lBeGRIZWxQNG1RdkJaS1oxMlNKbHlLbFVLeW43aHhzSHVkMkphMVNtS3FWeHBERDNlR0w0Y3QKZXA1QTZ5NkF4eGViZkI0aDdYNEZ0QTBBRURPdkZDR0J1QlRvZ3ZBdUNDVUtqK2JIUG1SNG53UVYzcWZ2M3loRAp0TGkwU2FHVElta2wvbUNCUDhZaW9JUys2N0xjby9kbHphUTNGVDlxTnJieFdFWjJlaS9LVlE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==\");\n var defaultHostShareKey = new HostShareKey(\"defaultHostShareKey\", HostShareKeyArgs.builder()\n .hostShareKeyName(name)\n .instanceId(instanceId)\n .privateKey(privateKey)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host Share Key can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/hostShareKey:HostShareKey example \u003cinstance_id\u003e:\u003chost_share_key_id\u003e\n```\n\n",
"properties": {
"hostShareKeyId": {
"type": "string",
@@ -109271,7 +111124,7 @@
}
},
"alicloud:bastionhost/user:User": {
- "description": "Provides a Bastion Host User resource.\n\nFor information about Bastion Host User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/bastion-host/latest/api-yundun-bastionhost-2019-12-09-createuser).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst user = new alicloud.ram.User(\"user\", {\n name: `${name}_bastionhost_user`,\n displayName: `${name}_bastionhost_user`,\n mobile: \"86-18688888888\",\n email: \"hello.uuu@aaa.com\",\n comments: \"yoyoyo\",\n force: true,\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst ramUser = new alicloud.bastionhost.User(\"ram_user\", {\n instanceId: defaultInstance.id,\n source: \"Ram\",\n sourceUserId: defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id),\n userName: user.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\nuser = alicloud.ram.User(\"user\",\n name=f\"{name}_bastionhost_user\",\n display_name=f\"{name}_bastionhost_user\",\n mobile=\"86-18688888888\",\n email=\"hello.uuu@aaa.com\",\n comments=\"yoyoyo\",\n force=True)\ndefault_get_account = alicloud.get_account()\nram_user = alicloud.bastionhost.User(\"ram_user\",\n instance_id=default_instance.id,\n source=\"Ram\",\n source_user_id=default_get_account.id,\n user_name=user.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var user = new AliCloud.Ram.User(\"user\", new()\n {\n Name = $\"{name}_bastionhost_user\",\n DisplayName = $\"{name}_bastionhost_user\",\n Mobile = \"86-18688888888\",\n Email = \"hello.uuu@aaa.com\",\n Comments = \"yoyoyo\",\n Force = true,\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var ramUser = new AliCloud.BastionHost.User(\"ram_user\", new()\n {\n InstanceId = defaultInstance.Id,\n Source = \"Ram\",\n SourceUserId = defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n UserName = user.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser, err := ram.NewUser(ctx, \"user\", \u0026ram.UserArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_bastionhost_user\", name),\n\t\t\tDisplayName: pulumi.Sprintf(\"%v_bastionhost_user\", name),\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t\tEmail: pulumi.String(\"hello.uuu@aaa.com\"),\n\t\t\tComments: pulumi.String(\"yoyoyo\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUser(ctx, \"ram_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tSource: pulumi.String(\"Ram\"),\n\t\t\tSourceUserId: pulumi.String(defaultGetAccount.Id),\n\t\t\tUserName: user.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var localUser = new com.pulumi.alicloud.bastionhost.User(\"localUser\", com.pulumi.alicloud.bastionhost.UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var user = new com.pulumi.alicloud.ram.User(\"user\", com.pulumi.alicloud.ram.UserArgs.builder()\n .name(String.format(\"%s_bastionhost_user\", name))\n .displayName(String.format(\"%s_bastionhost_user\", name))\n .mobile(\"86-18688888888\")\n .email(\"hello.uuu@aaa.com\")\n .comments(\"yoyoyo\")\n .force(true)\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var ramUser = new com.pulumi.alicloud.bastionhost.User(\"ramUser\", com.pulumi.alicloud.bastionhost.UserArgs.builder()\n .instanceId(defaultInstance.id())\n .source(\"Ram\")\n .sourceUserId(defaultGetAccount.id())\n .userName(user.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n user:\n type: alicloud:ram:User\n properties:\n name: ${name}_bastionhost_user\n displayName: ${name}_bastionhost_user\n mobile: 86-18688888888\n email: hello.uuu@aaa.com\n comments: yoyoyo\n force: true\n ramUser:\n type: alicloud:bastionhost:User\n name: ram_user\n properties:\n instanceId: ${defaultInstance.id}\n source: Ram\n sourceUserId: ${defaultGetAccount.id}\n userName: ${user.name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/user:User example \u003cinstance_id\u003e:\u003cuser_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host User resource.\n\nFor information about Bastion Host User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/bastion-host/latest/api-yundun-bastionhost-2019-12-09-createuser).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst user = new alicloud.ram.User(\"user\", {\n name: `${name}_bastionhost_user`,\n displayName: `${name}_bastionhost_user`,\n mobile: \"86-18688888888\",\n email: \"hello.uuu@aaa.com\",\n comments: \"yoyoyo\",\n force: true,\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst ramUser = new alicloud.bastionhost.User(\"ram_user\", {\n instanceId: defaultInstance.id,\n source: \"Ram\",\n sourceUserId: defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id),\n userName: user.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\nuser = alicloud.ram.User(\"user\",\n name=f\"{name}_bastionhost_user\",\n display_name=f\"{name}_bastionhost_user\",\n mobile=\"86-18688888888\",\n email=\"hello.uuu@aaa.com\",\n comments=\"yoyoyo\",\n force=True)\ndefault_get_account = alicloud.get_account()\nram_user = alicloud.bastionhost.User(\"ram_user\",\n instance_id=default_instance.id,\n source=\"Ram\",\n source_user_id=default_get_account.id,\n user_name=user.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var user = new AliCloud.Ram.User(\"user\", new()\n {\n Name = $\"{name}_bastionhost_user\",\n DisplayName = $\"{name}_bastionhost_user\",\n Mobile = \"86-18688888888\",\n Email = \"hello.uuu@aaa.com\",\n Comments = \"yoyoyo\",\n Force = true,\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var ramUser = new AliCloud.BastionHost.User(\"ram_user\", new()\n {\n InstanceId = defaultInstance.Id,\n Source = \"Ram\",\n SourceUserId = defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n UserName = user.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser, err := ram.NewUser(ctx, \"user\", \u0026ram.UserArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_bastionhost_user\", name),\n\t\t\tDisplayName: pulumi.Sprintf(\"%v_bastionhost_user\", name),\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t\tEmail: pulumi.String(\"hello.uuu@aaa.com\"),\n\t\t\tComments: pulumi.String(\"yoyoyo\"),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUser(ctx, \"ram_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tSource: pulumi.String(\"Ram\"),\n\t\t\tSourceUserId: pulumi.String(defaultGetAccount.Id),\n\t\t\tUserName: user.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var localUser = new com.pulumi.alicloud.bastionhost.User(\"localUser\", com.pulumi.alicloud.bastionhost.UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var user = new com.pulumi.alicloud.ram.User(\"user\", com.pulumi.alicloud.ram.UserArgs.builder()\n .name(String.format(\"%s_bastionhost_user\", name))\n .displayName(String.format(\"%s_bastionhost_user\", name))\n .mobile(\"86-18688888888\")\n .email(\"hello.uuu@aaa.com\")\n .comments(\"yoyoyo\")\n .force(true)\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var ramUser = new com.pulumi.alicloud.bastionhost.User(\"ramUser\", com.pulumi.alicloud.bastionhost.UserArgs.builder()\n .instanceId(defaultInstance.id())\n .source(\"Ram\")\n .sourceUserId(defaultGetAccount.id())\n .userName(user.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n user:\n type: alicloud:ram:User\n properties:\n name: ${name}_bastionhost_user\n displayName: ${name}_bastionhost_user\n mobile: 86-18688888888\n email: hello.uuu@aaa.com\n comments: yoyoyo\n force: true\n ramUser:\n type: alicloud:bastionhost:User\n name: ram_user\n properties:\n instanceId: ${defaultInstance.id}\n source: Ram\n sourceUserId: ${defaultGetAccount.id}\n userName: ${user.name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/user:User example \u003cinstance_id\u003e:\u003cuser_id\u003e\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -109449,7 +111302,7 @@
}
},
"alicloud:bastionhost/userAttachment:UserAttachment": {
- "description": "Provides a Bastion Host User Attachment resource to add user to one user group.\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultInstance.id,\n userGroupName: name,\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultUserAttachment = new alicloud.bastionhost.UserAttachment(\"default\", {\n instanceId: defaultInstance.id,\n userGroupId: defaultUserGroup.userGroupId,\n userId: localUser.userId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_instance.id,\n user_group_name=name)\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_user_attachment = alicloud.bastionhost.UserAttachment(\"default\",\n instance_id=default_instance.id,\n user_group_id=default_user_group.user_group_id,\n user_id=local_user.user_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupName = name,\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultUserAttachment = new AliCloud.BastionHost.UserAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupId = defaultUserGroup.UserGroupId,\n UserId = localUser.UserId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUserAttachment(ctx, \"default\", \u0026bastionhost.UserAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tUserId: localUser.UserId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.UserAttachment;\nimport com.pulumi.alicloud.bastionhost.UserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupName(name)\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultUserAttachment = new UserAttachment(\"defaultUserAttachment\", UserAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupId(defaultUserGroup.userGroupId())\n .userId(localUser.userId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupName: ${name}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultUserAttachment:\n type: alicloud:bastionhost:UserAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupId: ${defaultUserGroup.userGroupId}\n userId: ${localUser.userId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host User Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/userAttachment:UserAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003cuser_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host User Attachment resource to add user to one user group.\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultInstance.id,\n userGroupName: name,\n});\nconst localUser = new alicloud.bastionhost.User(\"local_user\", {\n instanceId: defaultInstance.id,\n mobileCountryCode: \"CN\",\n mobile: \"13312345678\",\n password: \"YourPassword-123\",\n source: \"Local\",\n userName: `${name}_local_user`,\n});\nconst defaultUserAttachment = new alicloud.bastionhost.UserAttachment(\"default\", {\n instanceId: defaultInstance.id,\n userGroupId: defaultUserGroup.userGroupId,\n userId: localUser.userId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_instance.id,\n user_group_name=name)\nlocal_user = alicloud.bastionhost.User(\"local_user\",\n instance_id=default_instance.id,\n mobile_country_code=\"CN\",\n mobile=\"13312345678\",\n password=\"YourPassword-123\",\n source=\"Local\",\n user_name=f\"{name}_local_user\")\ndefault_user_attachment = alicloud.bastionhost.UserAttachment(\"default\",\n instance_id=default_instance.id,\n user_group_id=default_user_group.user_group_id,\n user_id=local_user.user_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupName = name,\n });\n\n var localUser = new AliCloud.BastionHost.User(\"local_user\", new()\n {\n InstanceId = defaultInstance.Id,\n MobileCountryCode = \"CN\",\n Mobile = \"13312345678\",\n Password = \"YourPassword-123\",\n Source = \"Local\",\n UserName = $\"{name}_local_user\",\n });\n\n var defaultUserAttachment = new AliCloud.BastionHost.UserAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupId = defaultUserGroup.UserGroupId,\n UserId = localUser.UserId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUserGroup, err := bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlocalUser, err := bastionhost.NewUser(ctx, \"local_user\", \u0026bastionhost.UserArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tMobileCountryCode: pulumi.String(\"CN\"),\n\t\t\tMobile: pulumi.String(\"13312345678\"),\n\t\t\tPassword: pulumi.String(\"YourPassword-123\"),\n\t\t\tSource: pulumi.String(\"Local\"),\n\t\t\tUserName: pulumi.Sprintf(\"%v_local_user\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUserAttachment(ctx, \"default\", \u0026bastionhost.UserAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupId: defaultUserGroup.UserGroupId,\n\t\t\tUserId: localUser.UserId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport com.pulumi.alicloud.bastionhost.User;\nimport com.pulumi.alicloud.bastionhost.UserArgs;\nimport com.pulumi.alicloud.bastionhost.UserAttachment;\nimport com.pulumi.alicloud.bastionhost.UserAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupName(name)\n .build());\n\n var localUser = new User(\"localUser\", UserArgs.builder()\n .instanceId(defaultInstance.id())\n .mobileCountryCode(\"CN\")\n .mobile(\"13312345678\")\n .password(\"YourPassword-123\")\n .source(\"Local\")\n .userName(String.format(\"%s_local_user\", name))\n .build());\n\n var defaultUserAttachment = new UserAttachment(\"defaultUserAttachment\", UserAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupId(defaultUserGroup.userGroupId())\n .userId(localUser.userId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupName: ${name}\n localUser:\n type: alicloud:bastionhost:User\n name: local_user\n properties:\n instanceId: ${defaultInstance.id}\n mobileCountryCode: CN\n mobile: '13312345678'\n password: YourPassword-123\n source: Local\n userName: ${name}_local_user\n defaultUserAttachment:\n type: alicloud:bastionhost:UserAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupId: ${defaultUserGroup.userGroupId}\n userId: ${localUser.userId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host User Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/userAttachment:UserAttachment example \u003cinstance_id\u003e:\u003cuser_group_id\u003e:\u003cuser_id\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -109514,7 +111367,7 @@
}
},
"alicloud:bastionhost/userGroup:UserGroup": {
- "description": "Provides a Bastion Host User Group resource.\n\nFor information about Bastion Host User Group and how to use it, see [What is User Group](https://www.alibabacloud.com/help/doc-detail/204596.htm).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultInstance.id,\n userGroupName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_instance.id,\n user_group_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBastion Host User Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/userGroup:UserGroup example \u003cinstance_id\u003e:\u003cuser_group_id\u003e\n```\n\n",
+ "description": "Provides a Bastion Host User Group resource.\n\nFor information about Bastion Host User Group and how to use it, see [What is User Group](https://www.alibabacloud.com/help/doc-detail/204596.htm).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, _default]).then(([defaultGetNetworks, _default]) =\u003e alicloud.vpc.getSwitches({\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: _default.zones?.[0]?.id,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0])});\nconst defaultInstance = new alicloud.bastionhost.Instance(\"default\", {\n description: name,\n licenseCode: \"bhah_ent_50_asset\",\n planCode: \"cloudbastion\",\n storage: \"5\",\n bandwidth: \"5\",\n period: 1,\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n securityGroupIds: [defaultSecurityGroup.id],\n});\nconst defaultUserGroup = new alicloud.bastionhost.UserGroup(\"default\", {\n instanceId: defaultInstance.id,\n userGroupName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\",\n cidr_block=\"10.4.0.0/16\")\ndefault_get_switches = alicloud.vpc.get_switches(cidr_block=\"10.4.0.0/24\",\n vpc_id=default_get_networks.ids[0],\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.bastionhost.Instance(\"default\",\n description=name,\n license_code=\"bhah_ent_50_asset\",\n plan_code=\"cloudbastion\",\n storage=\"5\",\n bandwidth=\"5\",\n period=1,\n vswitch_id=default_get_switches.ids[0],\n security_group_ids=[default_security_group.id])\ndefault_user_group = alicloud.bastionhost.UserGroup(\"default\",\n instance_id=default_instance.id,\n user_group_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.BastionHost.Instance(\"default\", new()\n {\n Description = name,\n LicenseCode = \"bhah_ent_50_asset\",\n PlanCode = \"cloudbastion\",\n Storage = \"5\",\n Bandwidth = \"5\",\n Period = 1,\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n });\n\n var defaultUserGroup = new AliCloud.BastionHost.UserGroup(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n UserGroupName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/16\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tCidrBlock: pulumi.StringRef(\"10.4.0.0/24\"),\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := bastionhost.NewInstance(ctx, \"default\", \u0026bastionhost.InstanceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tLicenseCode: pulumi.String(\"bhah_ent_50_asset\"),\n\t\t\tPlanCode: pulumi.String(\"cloudbastion\"),\n\t\t\tStorage: pulumi.String(\"5\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bastionhost.NewUserGroup(ctx, \"default\", \u0026bastionhost.UserGroupArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tUserGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.bastionhost.Instance;\nimport com.pulumi.alicloud.bastionhost.InstanceArgs;\nimport com.pulumi.alicloud.bastionhost.UserGroup;\nimport com.pulumi.alicloud.bastionhost.UserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(name)\n .licenseCode(\"bhah_ent_50_asset\")\n .planCode(\"cloudbastion\")\n .storage(\"5\")\n .bandwidth(\"5\")\n .period(1)\n .vswitchId(defaultGetSwitches.ids()[0])\n .securityGroupIds(defaultSecurityGroup.id())\n .build());\n\n var defaultUserGroup = new UserGroup(\"defaultUserGroup\", UserGroupArgs.builder()\n .instanceId(defaultInstance.id())\n .userGroupName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:bastionhost:Instance\n name: default\n properties:\n description: ${name}\n licenseCode: bhah_ent_50_asset\n planCode: cloudbastion\n storage: '5'\n bandwidth: '5'\n period: '1'\n vswitchId: ${defaultGetSwitches.ids[0]}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n defaultUserGroup:\n type: alicloud:bastionhost:UserGroup\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n userGroupName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n cidrBlock: 10.4.0.0/16\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${default.zones[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBastion Host User Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bastionhost/userGroup:UserGroup example \u003cinstance_id\u003e:\u003cuser_group_id\u003e\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -109582,7 +111435,7 @@
}
},
"alicloud:bp/studioApplication:StudioApplication": {
- "description": "Provides a Cloud Architect Design Tools Application resource.\n\nFor information about Cloud Architect Design Tools Application and how to use it, see [What is Application](https://help.aliyun.com/document_detail/428263.html).\n\n\u003e **NOTE:** Available since v1.192.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetInstances = alicloud.ecs.getInstances({\n status: \"Running\",\n});\nconst defaultStudioApplication = new alicloud.bp.StudioApplication(\"default\", {\n applicationName: name,\n templateId: \"YAUUQIYRSV1CMFGX\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n areaId: \"cn-hangzhou\",\n instances: [{\n id: \"data.alicloud_instances.default.instances.0.id\",\n nodeName: \"data.alicloud_instances.default.instances.0.name\",\n nodeType: \"ecs\",\n }],\n configuration: {\n enableMonitor: \"1\",\n },\n variables: {\n test: \"1\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_instances = alicloud.ecs.get_instances(status=\"Running\")\ndefault_studio_application = alicloud.bp.StudioApplication(\"default\",\n application_name=name,\n template_id=\"YAUUQIYRSV1CMFGX\",\n resource_group_id=default.groups[0].id,\n area_id=\"cn-hangzhou\",\n instances=[{\n \"id\": \"data.alicloud_instances.default.instances.0.id\",\n \"node_name\": \"data.alicloud_instances.default.instances.0.name\",\n \"node_type\": \"ecs\",\n }],\n configuration={\n \"enableMonitor\": \"1\",\n },\n variables={\n \"test\": \"1\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetInstances = AliCloud.Ecs.GetInstances.Invoke(new()\n {\n Status = \"Running\",\n });\n\n var defaultStudioApplication = new AliCloud.Bp.StudioApplication(\"default\", new()\n {\n ApplicationName = name,\n TemplateId = \"YAUUQIYRSV1CMFGX\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AreaId = \"cn-hangzhou\",\n Instances = new[]\n {\n new AliCloud.Bp.Inputs.StudioApplicationInstanceArgs\n {\n Id = \"data.alicloud_instances.default.instances.0.id\",\n NodeName = \"data.alicloud_instances.default.instances.0.name\",\n NodeType = \"ecs\",\n },\n },\n Configuration = \n {\n { \"enableMonitor\", \"1\" },\n },\n Variables = \n {\n { \"test\", \"1\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bp\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetInstances(ctx, \u0026ecs.GetInstancesArgs{\n\t\t\tStatus: pulumi.StringRef(\"Running\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bp.NewStudioApplication(ctx, \"default\", \u0026bp.StudioApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tTemplateId: pulumi.String(\"YAUUQIYRSV1CMFGX\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAreaId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tInstances: bp.StudioApplicationInstanceArray{\n\t\t\t\t\u0026bp.StudioApplicationInstanceArgs{\n\t\t\t\t\tId: pulumi.String(\"data.alicloud_instances.default.instances.0.id\"),\n\t\t\t\t\tNodeName: pulumi.String(\"data.alicloud_instances.default.instances.0.name\"),\n\t\t\t\t\tNodeType: pulumi.String(\"ecs\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConfiguration: pulumi.StringMap{\n\t\t\t\t\"enableMonitor\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t\tVariables: pulumi.StringMap{\n\t\t\t\t\"test\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.bp.StudioApplication;\nimport com.pulumi.alicloud.bp.StudioApplicationArgs;\nimport com.pulumi.alicloud.bp.inputs.StudioApplicationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetInstances = EcsFunctions.getInstances(GetInstancesArgs.builder()\n .status(\"Running\")\n .build());\n\n var defaultStudioApplication = new StudioApplication(\"defaultStudioApplication\", StudioApplicationArgs.builder()\n .applicationName(name)\n .templateId(\"YAUUQIYRSV1CMFGX\")\n .resourceGroupId(default_.groups()[0].id())\n .areaId(\"cn-hangzhou\")\n .instances(StudioApplicationInstanceArgs.builder()\n .id(\"data.alicloud_instances.default.instances.0.id\")\n .nodeName(\"data.alicloud_instances.default.instances.0.name\")\n .nodeType(\"ecs\")\n .build())\n .configuration(Map.of(\"enableMonitor\", \"1\"))\n .variables(Map.of(\"test\", \"1\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultStudioApplication:\n type: alicloud:bp:StudioApplication\n name: default\n properties:\n applicationName: ${name}\n templateId: YAUUQIYRSV1CMFGX\n resourceGroupId: ${default.groups[0].id}\n areaId: cn-hangzhou\n instances:\n - id: data.alicloud_instances.default.instances.0.id\n nodeName: data.alicloud_instances.default.instances.0.name\n nodeType: ecs\n configuration:\n enableMonitor: '1'\n variables:\n test: '1'\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetInstances:\n fn::invoke:\n function: alicloud:ecs:getInstances\n arguments:\n status: Running\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Architect Design Tools Application can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bp/studioApplication:StudioApplication example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Architect Design Tools Application resource.\n\nFor information about Cloud Architect Design Tools Application and how to use it, see [What is Application](https://help.aliyun.com/document_detail/428263.html).\n\n\u003e **NOTE:** Available since v1.192.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetInstances = alicloud.ecs.getInstances({\n status: \"Running\",\n});\nconst defaultStudioApplication = new alicloud.bp.StudioApplication(\"default\", {\n applicationName: name,\n templateId: \"YAUUQIYRSV1CMFGX\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n areaId: \"cn-hangzhou\",\n instances: [{\n id: \"data.alicloud_instances.default.instances.0.id\",\n nodeName: \"data.alicloud_instances.default.instances.0.name\",\n nodeType: \"ecs\",\n }],\n configuration: {\n enableMonitor: \"1\",\n },\n variables: {\n test: \"1\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_instances = alicloud.ecs.get_instances(status=\"Running\")\ndefault_studio_application = alicloud.bp.StudioApplication(\"default\",\n application_name=name,\n template_id=\"YAUUQIYRSV1CMFGX\",\n resource_group_id=default.groups[0].id,\n area_id=\"cn-hangzhou\",\n instances=[{\n \"id\": \"data.alicloud_instances.default.instances.0.id\",\n \"node_name\": \"data.alicloud_instances.default.instances.0.name\",\n \"node_type\": \"ecs\",\n }],\n configuration={\n \"enableMonitor\": \"1\",\n },\n variables={\n \"test\": \"1\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetInstances = AliCloud.Ecs.GetInstances.Invoke(new()\n {\n Status = \"Running\",\n });\n\n var defaultStudioApplication = new AliCloud.Bp.StudioApplication(\"default\", new()\n {\n ApplicationName = name,\n TemplateId = \"YAUUQIYRSV1CMFGX\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AreaId = \"cn-hangzhou\",\n Instances = new[]\n {\n new AliCloud.Bp.Inputs.StudioApplicationInstanceArgs\n {\n Id = \"data.alicloud_instances.default.instances.0.id\",\n NodeName = \"data.alicloud_instances.default.instances.0.name\",\n NodeType = \"ecs\",\n },\n },\n Configuration = \n {\n { \"enableMonitor\", \"1\" },\n },\n Variables = \n {\n { \"test\", \"1\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bp\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetInstances(ctx, \u0026ecs.GetInstancesArgs{\n\t\t\tStatus: pulumi.StringRef(\"Running\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = bp.NewStudioApplication(ctx, \"default\", \u0026bp.StudioApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tTemplateId: pulumi.String(\"YAUUQIYRSV1CMFGX\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAreaId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tInstances: bp.StudioApplicationInstanceArray{\n\t\t\t\t\u0026bp.StudioApplicationInstanceArgs{\n\t\t\t\t\tId: pulumi.String(\"data.alicloud_instances.default.instances.0.id\"),\n\t\t\t\t\tNodeName: pulumi.String(\"data.alicloud_instances.default.instances.0.name\"),\n\t\t\t\t\tNodeType: pulumi.String(\"ecs\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConfiguration: pulumi.StringMap{\n\t\t\t\t\"enableMonitor\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t\tVariables: pulumi.StringMap{\n\t\t\t\t\"test\": pulumi.String(\"1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.bp.StudioApplication;\nimport com.pulumi.alicloud.bp.StudioApplicationArgs;\nimport com.pulumi.alicloud.bp.inputs.StudioApplicationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetInstances = EcsFunctions.getInstances(GetInstancesArgs.builder()\n .status(\"Running\")\n .build());\n\n var defaultStudioApplication = new StudioApplication(\"defaultStudioApplication\", StudioApplicationArgs.builder()\n .applicationName(name)\n .templateId(\"YAUUQIYRSV1CMFGX\")\n .resourceGroupId(default_.groups()[0].id())\n .areaId(\"cn-hangzhou\")\n .instances(StudioApplicationInstanceArgs.builder()\n .id(\"data.alicloud_instances.default.instances.0.id\")\n .nodeName(\"data.alicloud_instances.default.instances.0.name\")\n .nodeType(\"ecs\")\n .build())\n .configuration(Map.of(\"enableMonitor\", \"1\"))\n .variables(Map.of(\"test\", \"1\"))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultStudioApplication:\n type: alicloud:bp:StudioApplication\n name: default\n properties:\n applicationName: ${name}\n templateId: YAUUQIYRSV1CMFGX\n resourceGroupId: ${default.groups[0].id}\n areaId: cn-hangzhou\n instances:\n - id: data.alicloud_instances.default.instances.0.id\n nodeName: data.alicloud_instances.default.instances.0.name\n nodeType: ecs\n configuration:\n enableMonitor: '1'\n variables:\n test: '1'\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetInstances:\n fn::invoke:\n function: alicloud:ecs:getInstances\n arguments:\n status: Running\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Architect Design Tools Application can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:bp/studioApplication:StudioApplication example \u003cid\u003e\n```\n\n",
"properties": {
"applicationName": {
"type": "string",
@@ -109738,7 +111591,7 @@
}
},
"alicloud:brain/industrialPidLoop:IndustrialPidLoop": {
- "description": "Provides a Brain Industrial Pid Loop resource.\n\n\u003e **NOTE:** Available since v1.117.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.229.1`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidLoop(\"example\", {\n pidLoopConfiguration: \"YourLoopConfiguration\",\n pidLoopDcsType: \"standard\",\n pidLoopIsCrucial: true,\n pidLoopName: \"tf-testAcc\",\n pidLoopType: \"0\",\n pidProjectId: \"856c6b8f-ca63-40a4-xxxx-xxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidLoop(\"example\",\n pid_loop_configuration=\"YourLoopConfiguration\",\n pid_loop_dcs_type=\"standard\",\n pid_loop_is_crucial=True,\n pid_loop_name=\"tf-testAcc\",\n pid_loop_type=\"0\",\n pid_project_id=\"856c6b8f-ca63-40a4-xxxx-xxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidLoop(\"example\", new()\n {\n PidLoopConfiguration = \"YourLoopConfiguration\",\n PidLoopDcsType = \"standard\",\n PidLoopIsCrucial = true,\n PidLoopName = \"tf-testAcc\",\n PidLoopType = \"0\",\n PidProjectId = \"856c6b8f-ca63-40a4-xxxx-xxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidLoop(ctx, \"example\", \u0026brain.IndustrialPidLoopArgs{\n\t\t\tPidLoopConfiguration: pulumi.String(\"YourLoopConfiguration\"),\n\t\t\tPidLoopDcsType: pulumi.String(\"standard\"),\n\t\t\tPidLoopIsCrucial: pulumi.Bool(true),\n\t\t\tPidLoopName: pulumi.String(\"tf-testAcc\"),\n\t\t\tPidLoopType: pulumi.String(\"0\"),\n\t\t\tPidProjectId: pulumi.String(\"856c6b8f-ca63-40a4-xxxx-xxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidLoop;\nimport com.pulumi.alicloud.brain.IndustrialPidLoopArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidLoop(\"example\", IndustrialPidLoopArgs.builder()\n .pidLoopConfiguration(\"YourLoopConfiguration\")\n .pidLoopDcsType(\"standard\")\n .pidLoopIsCrucial(true)\n .pidLoopName(\"tf-testAcc\")\n .pidLoopType(\"0\")\n .pidProjectId(\"856c6b8f-ca63-40a4-xxxx-xxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidLoop\n properties:\n pidLoopConfiguration: YourLoopConfiguration\n pidLoopDcsType: standard\n pidLoopIsCrucial: true\n pidLoopName: tf-testAcc\n pidLoopType: '0'\n pidProjectId: 856c6b8f-ca63-40a4-xxxx-xxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBrain Industrial Pid Loop can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidLoop:IndustrialPidLoop example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Brain Industrial Pid Loop resource.\n\n\u003e **NOTE:** Available since v1.117.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.229.1`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidLoop(\"example\", {\n pidLoopConfiguration: \"YourLoopConfiguration\",\n pidLoopDcsType: \"standard\",\n pidLoopIsCrucial: true,\n pidLoopName: \"tf-testAcc\",\n pidLoopType: \"0\",\n pidProjectId: \"856c6b8f-ca63-40a4-xxxx-xxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidLoop(\"example\",\n pid_loop_configuration=\"YourLoopConfiguration\",\n pid_loop_dcs_type=\"standard\",\n pid_loop_is_crucial=True,\n pid_loop_name=\"tf-testAcc\",\n pid_loop_type=\"0\",\n pid_project_id=\"856c6b8f-ca63-40a4-xxxx-xxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidLoop(\"example\", new()\n {\n PidLoopConfiguration = \"YourLoopConfiguration\",\n PidLoopDcsType = \"standard\",\n PidLoopIsCrucial = true,\n PidLoopName = \"tf-testAcc\",\n PidLoopType = \"0\",\n PidProjectId = \"856c6b8f-ca63-40a4-xxxx-xxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidLoop(ctx, \"example\", \u0026brain.IndustrialPidLoopArgs{\n\t\t\tPidLoopConfiguration: pulumi.String(\"YourLoopConfiguration\"),\n\t\t\tPidLoopDcsType: pulumi.String(\"standard\"),\n\t\t\tPidLoopIsCrucial: pulumi.Bool(true),\n\t\t\tPidLoopName: pulumi.String(\"tf-testAcc\"),\n\t\t\tPidLoopType: pulumi.String(\"0\"),\n\t\t\tPidProjectId: pulumi.String(\"856c6b8f-ca63-40a4-xxxx-xxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidLoop;\nimport com.pulumi.alicloud.brain.IndustrialPidLoopArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidLoop(\"example\", IndustrialPidLoopArgs.builder()\n .pidLoopConfiguration(\"YourLoopConfiguration\")\n .pidLoopDcsType(\"standard\")\n .pidLoopIsCrucial(true)\n .pidLoopName(\"tf-testAcc\")\n .pidLoopType(\"0\")\n .pidProjectId(\"856c6b8f-ca63-40a4-xxxx-xxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidLoop\n properties:\n pidLoopConfiguration: YourLoopConfiguration\n pidLoopDcsType: standard\n pidLoopIsCrucial: true\n pidLoopName: tf-testAcc\n pidLoopType: '0'\n pidProjectId: 856c6b8f-ca63-40a4-xxxx-xxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBrain Industrial Pid Loop can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidLoop:IndustrialPidLoop example \u003cid\u003e\n```\n\n",
"properties": {
"pidLoopConfiguration": {
"type": "string",
@@ -109862,7 +111715,7 @@
}
},
"alicloud:brain/industrialPidOrganization:IndustrialPidOrganization": {
- "description": "Provides a Brain Industrial Pid Organization resource.\n\n\u003e **NOTE:** Available since v1.113.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.222.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidOrganization(\"example\", {pidOrganizationName: \"tf-testAcc\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidOrganization(\"example\", pid_organization_name=\"tf-testAcc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidOrganization(\"example\", new()\n {\n PidOrganizationName = \"tf-testAcc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidOrganization(ctx, \"example\", \u0026brain.IndustrialPidOrganizationArgs{\n\t\t\tPidOrganizationName: pulumi.String(\"tf-testAcc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidOrganization;\nimport com.pulumi.alicloud.brain.IndustrialPidOrganizationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidOrganization(\"example\", IndustrialPidOrganizationArgs.builder()\n .pidOrganizationName(\"tf-testAcc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidOrganization\n properties:\n pidOrganizationName: tf-testAcc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBrain Industrial Pid Organization can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidOrganization:IndustrialPidOrganization example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Brain Industrial Pid Organization resource.\n\n\u003e **NOTE:** Available since v1.113.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.222.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidOrganization(\"example\", {pidOrganizationName: \"tf-testAcc\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidOrganization(\"example\", pid_organization_name=\"tf-testAcc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidOrganization(\"example\", new()\n {\n PidOrganizationName = \"tf-testAcc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidOrganization(ctx, \"example\", \u0026brain.IndustrialPidOrganizationArgs{\n\t\t\tPidOrganizationName: pulumi.String(\"tf-testAcc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidOrganization;\nimport com.pulumi.alicloud.brain.IndustrialPidOrganizationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidOrganization(\"example\", IndustrialPidOrganizationArgs.builder()\n .pidOrganizationName(\"tf-testAcc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidOrganization\n properties:\n pidOrganizationName: tf-testAcc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBrain Industrial Pid Organization can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidOrganization:IndustrialPidOrganization example \u003cid\u003e\n```\n\n",
"properties": {
"parentPidOrganizationId": {
"type": "string",
@@ -109907,7 +111760,7 @@
}
},
"alicloud:brain/industrialPidProject:IndustrialPidProject": {
- "description": "Provides a Brain Industrial Pid Project resource.\n\n\u003e **NOTE:** Available since v1.113.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.222.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidProject(\"example\", {\n pidOrganizationId: \"3e74e684-cbb5-xxxx\",\n pidProjectName: \"tf-testAcc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidProject(\"example\",\n pid_organization_id=\"3e74e684-cbb5-xxxx\",\n pid_project_name=\"tf-testAcc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidProject(\"example\", new()\n {\n PidOrganizationId = \"3e74e684-cbb5-xxxx\",\n PidProjectName = \"tf-testAcc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidProject(ctx, \"example\", \u0026brain.IndustrialPidProjectArgs{\n\t\t\tPidOrganizationId: pulumi.String(\"3e74e684-cbb5-xxxx\"),\n\t\t\tPidProjectName: pulumi.String(\"tf-testAcc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidProject;\nimport com.pulumi.alicloud.brain.IndustrialPidProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidProject(\"example\", IndustrialPidProjectArgs.builder()\n .pidOrganizationId(\"3e74e684-cbb5-xxxx\")\n .pidProjectName(\"tf-testAcc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidProject\n properties:\n pidOrganizationId: 3e74e684-cbb5-xxxx\n pidProjectName: tf-testAcc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nBrain Industrial Pid Project can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidProject:IndustrialPidProject example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Brain Industrial Pid Project resource.\n\n\u003e **NOTE:** Available since v1.113.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.222.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.brain.IndustrialPidProject(\"example\", {\n pidOrganizationId: \"3e74e684-cbb5-xxxx\",\n pidProjectName: \"tf-testAcc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.brain.IndustrialPidProject(\"example\",\n pid_organization_id=\"3e74e684-cbb5-xxxx\",\n pid_project_name=\"tf-testAcc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Brain.IndustrialPidProject(\"example\", new()\n {\n PidOrganizationId = \"3e74e684-cbb5-xxxx\",\n PidProjectName = \"tf-testAcc\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/brain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := brain.NewIndustrialPidProject(ctx, \"example\", \u0026brain.IndustrialPidProjectArgs{\n\t\t\tPidOrganizationId: pulumi.String(\"3e74e684-cbb5-xxxx\"),\n\t\t\tPidProjectName: pulumi.String(\"tf-testAcc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.brain.IndustrialPidProject;\nimport com.pulumi.alicloud.brain.IndustrialPidProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new IndustrialPidProject(\"example\", IndustrialPidProjectArgs.builder()\n .pidOrganizationId(\"3e74e684-cbb5-xxxx\")\n .pidProjectName(\"tf-testAcc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:brain:IndustrialPidProject\n properties:\n pidOrganizationId: 3e74e684-cbb5-xxxx\n pidProjectName: tf-testAcc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nBrain Industrial Pid Project can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:brain/industrialPidProject:IndustrialPidProject example \u003cid\u003e\n```\n\n",
"properties": {
"pidOrganizationId": {
"type": "string",
@@ -109964,7 +111817,7 @@
}
},
"alicloud:cas/certificate:Certificate": {
- "description": "Provides a CAS Certificate resource.\n\nFor information about SSL Certificates Certificate and how to use it, see [What is Certificate](https://www.alibabacloud.com/help/product/28533.html).\n\n\u003e **NOTE:** Available since v1.35.0.\n\n\u003e **NOTE:** Deprecated since v1.129.0.\n\n\u003e **NOTE:** The Certificate name which you want to add must be already registered and had not added by another account. Every Certificate name can only exist in a unique group.\n\n\u003e **NOTE:** The Cas Certificate region only support cn-hangzhou, me-east-1, eu-central-1, ap-northeast-1.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.129.0`. Please use new resource alicloud_ssl_certificates_service_certificate.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultCertificate = new alicloud.cas.Certificate(\"default\", {\n name: `tf-example-${_default.result}`,\n cert: `-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_certificate = alicloud.cas.Certificate(\"default\",\n name=f\"tf-example-{default['result']}\",\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultCertificate = new AliCloud.Cas.Certificate(\"default\", new()\n {\n Name = $\"tf-example-{@default.Result}\",\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cas.NewCertificate(ctx, \"default\", \u0026cas.CertificateArgs{\n\t\t\tName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`),\n\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.Certificate;\nimport com.pulumi.alicloud.cas.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultCertificate = new Certificate(\"defaultCertificate\", CertificateArgs.builder()\n .name(String.format(\"tf-example-%s\", default_.result()))\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultCertificate:\n type: alicloud:cas:Certificate\n name: default\n properties:\n name: tf-example-${default.result}\n cert: |\n -----BEGIN CERTIFICATE-----\n MIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\n TjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\n VQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\n MjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\n EDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\n MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\n Y5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\n N4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\n HAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\n rkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n +arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\n ZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\n BBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n 9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n 9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\n S7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\n AC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\n TTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\n DPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n -----END CERTIFICATE-----\n key: |\n -----BEGIN PRIVATE KEY-----\n MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\n rhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\n BpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\n p2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n +axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n 4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\n n8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n /1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n 6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\n dIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\n YmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\n LfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\n GOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\n ncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\n XWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\n i9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\n rNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n 2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\n g1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\n AvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\n ZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\n AMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n 2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n 9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\n CIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\n LILJ+e7bLw8RrM0HfgFnl8c=\n -----END PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Provides a CAS Certificate resource.\n\nFor information about SSL Certificates Certificate and how to use it, see [What is Certificate](https://www.alibabacloud.com/help/product/28533.html).\n\n\u003e **NOTE:** Available since v1.35.0.\n\n\u003e **NOTE:** Deprecated since v1.129.0.\n\n\u003e **NOTE:** The Certificate name which you want to add must be already registered and had not added by another account. Every Certificate name can only exist in a unique group.\n\n\u003e **NOTE:** The Cas Certificate region only support cn-hangzhou, me-east-1, eu-central-1, ap-northeast-1.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.129.0`. Please use new resource alicloud_ssl_certificates_service_certificate.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultCertificate = new alicloud.cas.Certificate(\"default\", {\n name: `tf-example-${_default.result}`,\n cert: `-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_certificate = alicloud.cas.Certificate(\"default\",\n name=f\"tf-example-{default['result']}\",\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultCertificate = new AliCloud.Cas.Certificate(\"default\", new()\n {\n Name = $\"tf-example-{@default.Result}\",\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cas.NewCertificate(ctx, \"default\", \u0026cas.CertificateArgs{\n\t\t\tName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n`),\n\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.Certificate;\nimport com.pulumi.alicloud.cas.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultCertificate = new Certificate(\"defaultCertificate\", CertificateArgs.builder()\n .name(String.format(\"tf-example-%s\", default_.result()))\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\nTjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\nVQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\nMjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\nEDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\nY5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\nN4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\nHAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\nrkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n+arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\nZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\nBBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\nS7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\nAC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\nTTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\nDPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\nrhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\nBpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\np2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n+axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\nn8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n/1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\ndIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\nYmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\nLfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\nGOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\nncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\nXWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\ni9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\nrNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\ng1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\nAvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\nZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\nAMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\nCIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\nLILJ+e7bLw8RrM0HfgFnl8c=\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultCertificate:\n type: alicloud:cas:Certificate\n name: default\n properties:\n name: tf-example-${default.result}\n cert: |\n -----BEGIN CERTIFICATE-----\n MIIDeDCCAmCgAwIBAgIEN3ZT6zANBgkqhkiG9w0BAQsFADBVMQswCQYDVQQGEwJD\n TjEVMBMGA1UEAwwMKi50ZnRlc3QudG9wMRAwDgYDVQQIDAdCZWlKaW5nMRAwDgYD\n VQQHDAdCZWlKaW5nMQswCQYDVQQKDAJBQTAeFw0yMzA4MjgwNjQ5NDNaFw0yNTA4\n MjcwNjQ5NDNaMFUxCzAJBgNVBAYTAkNOMRUwEwYDVQQDDAwqLnRmdGVzdC50b3Ax\n EDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxCzAJBgNVBAoMAkFB\n MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzkk9NJUH7PLSQK4RRrGQ\n Y5dVsftkhnKh9HhI6yrnlowWIDPS1PZHOU/5gQ7xPUPGdKQV5S7x8wROnAaXEimx\n N4GdQw25pGhRJvlwme9fzJJiSe6lG49NCxmuBiEdJAzPKaTPpK1cG1f1TqdgCfHR\n HAL6Jxb3ylHG2LlTNFLXikubUi5RT6/9C8psr713Zm4HveCI/cx0WdgZ+fmsc9ft\n rkIB1DdyV1kQ51m8r2rLi3J7aC5ggGOiex/VlGSd4e6SOQLpdQEdDbodtOJ4LgVk\n +arFNCMinUWIOPGFzXhdm6lssPbh4MOBrz8c/M9TcF4hoMn5/o/9johZIZ/DOvXt\n ZQIDAQABo1AwTjAdBgNVHQ4EFgQUOnWiddgeZj17IeysatqhE361o5YwHwYDVR0j\n BBgwFoAUOnWiddgeZj17IeysatqhE361o5YwDAYDVR0TBAUwAwEB/zANBgkqhkiG\n 9w0BAQsFAAOCAQEAfh3cnOszHM/5wXjY7BIkmgDOReksS+87ibhBz7T2ddZj+yCF\n 9GdIBzXCiHpQFXpW8a3kc3I7l3nGfMTkmF6ld3ot/6SXP17QKJwxtvUA4ib8QkWD\n S7FT+UcHCUHv42Sh1e5uAlQ5pMSul7iKcR7jwlwZGZ0905HOqrmdyUGJ+Ud2uZWD\n AC0dJF6Bv9VhNtci8Imp05PaPH09deXLZu8LRrKRZFy9qLW5R6Swv7nzxckOAqDk\n TTc40xwvQROekWUyxeJL7xaHuylUHE0bxsiIfx5bZsBizRjprIwGlj85CSPuTZyP\n DPfaiZAN/61h5HNAnxLltOZfqabKYYw7l9LBDg==\n -----END CERTIFICATE-----\n key: |\n -----BEGIN PRIVATE KEY-----\n MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOST00lQfs8tJA\n rhFGsZBjl1Wx+2SGcqH0eEjrKueWjBYgM9LU9kc5T/mBDvE9Q8Z0pBXlLvHzBE6c\n BpcSKbE3gZ1DDbmkaFEm+XCZ71/MkmJJ7qUbj00LGa4GIR0kDM8ppM+krVwbV/VO\n p2AJ8dEcAvonFvfKUcbYuVM0UteKS5tSLlFPr/0LymyvvXdmbge94Ij9zHRZ2Bn5\n +axz1+2uQgHUN3JXWRDnWbyvasuLcntoLmCAY6J7H9WUZJ3h7pI5Aul1AR0Nuh20\n 4nguBWT5qsU0IyKdRYg48YXNeF2bqWyw9uHgw4GvPxz8z1NwXiGgyfn+j/2OiFkh\n n8M69e1lAgMBAAECggEAevPgTTT+0lYwx2h416ACJboP09O5KQGuUl5XaAPcoTjB\n /1OkOFbKQPjQCAJ1+0QoR2F9w2plv6kziX/MD4FWJXVV3J+TpNCgfhBy8u1gNjiR\n 6Osa8gBJtXIK7ZBTJCeWWoXnVYoWuh2FEupkLck6D+4eV6oy6x4u3QIo+6jc24n9\n dIXQG6/v/Iao34kB0LUdp/4WNaUDvfI6NDhEwchpKE95dtWIDlIN/YhfiYAdjrnl\n YmH2VDbAGgsdEiHP4wLZfjgsGPPDGS0+qBHoSiJGH0E6wWEZdAE4TsYGRFsO86n3\n LfjEPFGfPlcnZe2cTTe3kmyKq/DTjxtu2rh3I8o2CQKBgQD/5Xe7cenaOBefzPlx\n GOEsB+qv49UmzEPOXDNZe9hmAawuuuxPUM+xlE++P+mEgQm1LPT4WWgtFLPVuwmx\n ncxt4CJNZh+ZGFyAZ4dm4M4ZhIBXNonyIP+yGyAJUUVF9Iy3TYcJNiGzv2Rx9JRQ\n XWJMQnTDILmZbmU+ltTea7/zqwKBgQDOXqCqb17MuLt7OcKWSgthm79OlaOdzZvl\n i9qU6VzZKG7Axc5gA9yq6tHp3vWPI4bNdvwqIIa/nzVILjGA5fcYFbRN+7gHwo8s\n rNAgi5PAoKWqQRovyJRY9Eq/sn6l1jbJZAOUAMZMWDm8z89OqK7PNQSIAtfFSneo\n 2QxJkGeTLwKBgGJkafBB8af9b1/7YWISLepPNPbihH/BhMThAMGEdAVs2TaymtA4\n g1OFck/1pSVUtFXcbmjbf8ntruQcYbLQuNz6lFXsUXP9QPwCUrbE85ouL2bZSps2\n AvsJoPzUKe2nBUAp6CUrkjPaAJYsc6ae8X/fAaRRfeu33ef9+OV4yrq3AoGAYFZo\n ZmfrN2Kdkt7Z6dLTEVPlsMfGQ6pyNmxdM9rkzzNC0JcGymfDIb7RE35T3+hTy6La\n AMiCXv3xn6qAzY2NFh87tpPlyymWMOLTnf3Kkcfszlfp45idOBGCu46V9NDVbppT\n 2UmrSIR/H5dbTXsNcAlt/hhlpeInjhkU1VqmH10CgYEA7Kk+QhWq705SczpWjm5J\n 9kHqfFzJLwAWNBduiia0WypgPhLe/4wT1rYQkBtKMVKrgFo7Cvi4YKlrtlDnXyeU\n CIFqfEL5NriQelqrFsvgHsmD+MpvDoSWm5C8IrTubtlNyWUzXSVT4OIwzPobzPqG\n LILJ+e7bLw8RrM0HfgFnl8c=\n -----END PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"cert": {
"type": "string",
@@ -110127,7 +111980,7 @@
"deprecationMessage": "This resource has been deprecated in favour of ServiceCertificate"
},
"alicloud:cas/serviceCertificate:ServiceCertificate": {
- "description": "Provides a SSL Certificates Certificate resource.\n\n\n\nFor information about SSL Certificates Certificate and how to use it, see [What is Certificate](https://www.alibabacloud.com/help/product/28533.html).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultServiceCertificate = new alicloud.cas.ServiceCertificate(\"default\", {\n certificateName: `terraform-example-${_default.result}`,\n cert: `-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_service_certificate = alicloud.cas.ServiceCertificate(\"default\",\n certificate_name=f\"terraform-example-{default['result']}\",\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultServiceCertificate = new AliCloud.Cas.ServiceCertificate(\"default\", new()\n {\n CertificateName = $\"terraform-example-{@default.Result}\",\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cas.NewServiceCertificate(ctx, \"default\", \u0026cas.ServiceCertificateArgs{\n\t\t\tCertificateName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n`),\n\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.ServiceCertificate;\nimport com.pulumi.alicloud.cas.ServiceCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultServiceCertificate = new ServiceCertificate(\"defaultServiceCertificate\", ServiceCertificateArgs.builder()\n .certificateName(String.format(\"terraform-example-%s\", default_.result()))\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultServiceCertificate:\n type: alicloud:cas:ServiceCertificate\n name: default\n properties:\n certificateName: terraform-example-${default.result}\n cert: |\n -----BEGIN CERTIFICATE-----\n MIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\n MQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\n c3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\n Fw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\n DwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\n AMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n 6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\n dNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\n sfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n //sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\n VySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\n VR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\n wXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\n L29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\n L215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\n AQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\n yAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n 06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\n Le4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n 8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\n ZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n -----END CERTIFICATE-----\n key: |\n -----BEGIN PRIVATE KEY-----\n MIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\n m6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\n SngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\n ZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\n XqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\n GORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\n azo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\n BdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\n cphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\n blqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\n rWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n 48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\n Cq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\n aZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\n ARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\n Ank3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\n G2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\n jAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n 3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n 2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\n qpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\n AczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n 9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n /m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\n xDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n -----END PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSSL Certificates Certificate can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cas/serviceCertificate:ServiceCertificate example \u003cid\u003e\n```\n\n",
+ "description": "Provides a SSL Certificates Certificate resource.\n\n\n\nFor information about SSL Certificates Certificate and how to use it, see [What is Certificate](https://www.alibabacloud.com/help/product/28533.html).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultServiceCertificate = new alicloud.cas.ServiceCertificate(\"default\", {\n certificateName: `terraform-example-${_default.result}`,\n cert: `-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n`,\n key: `-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_service_certificate = alicloud.cas.ServiceCertificate(\"default\",\n certificate_name=f\"terraform-example-{default['result']}\",\n cert=\"\"\"-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n\"\"\",\n key=\"\"\"-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultServiceCertificate = new AliCloud.Cas.ServiceCertificate(\"default\", new()\n {\n CertificateName = $\"terraform-example-{@default.Result}\",\n Cert = @\"-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n\",\n Key = @\"-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cas\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cas.NewServiceCertificate(ctx, \"default\", \u0026cas.ServiceCertificateArgs{\n\t\t\tCertificateName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t\tCert: pulumi.String(`-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n`),\n\t\t\tKey: pulumi.String(`-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cas.ServiceCertificate;\nimport com.pulumi.alicloud.cas.ServiceCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultServiceCertificate = new ServiceCertificate(\"defaultServiceCertificate\", ServiceCertificateArgs.builder()\n .certificateName(String.format(\"terraform-example-%s\", default_.result()))\n .cert(\"\"\"\n-----BEGIN CERTIFICATE-----\nMIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\nMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\nc3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\nFw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\nDwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\ndNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\nsfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n//sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\nVySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\nVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\nwXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\nL29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\nL215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\nAQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\nyAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\nLe4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\nZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n-----END CERTIFICATE-----\n \"\"\")\n .key(\"\"\"\n-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\nm6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\nSngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\nZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\nXqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\nGORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\nazo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\nBdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\ncphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\nblqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\nrWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\nCq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\naZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\nARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\nAnk3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\nG2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\njAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\nqpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\nAczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n/m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\nxDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n-----END PRIVATE KEY-----\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultServiceCertificate:\n type: alicloud:cas:ServiceCertificate\n name: default\n properties:\n certificateName: terraform-example-${default.result}\n cert: |\n -----BEGIN CERTIFICATE-----\n MIID1jCCAr6gAwIBAgIQQ7/8/QOOTbywxdgSX9aMqDANBgkqhkiG9w0BAQsFADBe\n MQswCQYDVQQGEwJDTjEOMAwGA1UEChMFTXlTU0wxKzApBgNVBAsTIk15U1NMIFRl\n c3QgUlNBIC0gRm9yIHRlc3QgdXNlIG9ubHkxEjAQBgNVBAMTCU15U1NMLmNvbTAe\n Fw0yNTA5MjIwNTU3NDVaFw0zMDA5MjEwNTU3NDVaMCAxCzAJBgNVBAYTAkNOMREw\n DwYDVQQDEwgxNjg4LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\n AMEl04gKBqJxV+8KideZb7S4mPysehPzr/cXu4i1RXT7UFtNVZuqc4IdIzOja2SU\n 6uNn8mY6Pfc5FNybg98bYx0ADbub55TUaw2Pz1CFEbiMvLpzMkp4EZadvmJWZk8t\n dNb+ClKqdXUWhxApS3Lz+wjCNYQnlODk4KmxmM8/U/CyQS7lgWS/1G72UFB09Skg\n sfvWdoHLrFfIlbVkp9XVELCtOkjj8Nn/rPOhc31NbstrwV4Whl6jngGAkaEtImJ7\n //sL+sPPsutefCgfZPrC+Zwru2En1BuIo5KW02NYLdjXbABH8xjkUobqRoro7eY3\n VySBr7adD6QmNv5hWohOuykCAwEAAaOBzTCByjAOBgNVHQ8BAf8EBAMCBaAwHQYD\n VR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB8GA1UdIwQYMBaAFCiBJgXRNBo/\n wXMPu5PPFRw/A79/MGMGCCsGAQUFBwEBBFcwVTAhBggrBgEFBQcwAYYVaHR0cDov\n L29jc3AubXlzc2wuY29tMDAGCCsGAQUFBzAChiRodHRwOi8vY2EubXlzc2wuY29t\n L215c3NsdGVzdHJzYS5jcnQwEwYDVR0RBAwwCoIIMTY4OC5jb20wDQYJKoZIhvcN\n AQELBQADggEBAHa0ATVeHtPPw1+a6kajlW6OQUjhiJg+Sk9fVA1eJ2Hzl1yDDw3K\n yAyl1gkxGI6BwWdX/C8IE6PuPYcG2CmJGoFoEAAIbAE76AKABvHoA8I6wyDruxFz\n 06bNM8104TxAHTxe2zaHgBQnYIRk07uA8gxjZKFp1//eYbxj8HiP0Q9zXqYjF79G\n Le4PDw7Q6U22CP+cT9Sz5ZEoJCzmUtx3uQWhLzNxvyISrXeSqAFJzjtL0KKSR1cr\n 8he6FoeU37oKdmrnweLeBe+no3OMChETa2JN4VAzXj/nPpQcyB7nXDfLUHe01+BB\n ZBXKFLD2H38e97mFl/7mgNP5Nc1sycI5Sp4=\n -----END CERTIFICATE-----\n key: |\n -----BEGIN PRIVATE KEY-----\n MIIEowIBAAKCAQEAwSXTiAoGonFX7wqJ15lvtLiY/Kx6E/Ov9xe7iLVFdPtQW01V\n m6pzgh0jM6NrZJTq42fyZjo99zkU3JuD3xtjHQANu5vnlNRrDY/PUIURuIy8unMy\n SngRlp2+YlZmTy101v4KUqp1dRaHEClLcvP7CMI1hCeU4OTgqbGYzz9T8LJBLuWB\n ZL/UbvZQUHT1KSCx+9Z2gcusV8iVtWSn1dUQsK06SOPw2f+s86FzfU1uy2vBXhaG\n XqOeAYCRoS0iYnv/+wv6w8+y6158KB9k+sL5nCu7YSfUG4ijkpbTY1gt2NdsAEfz\n GORShupGiujt5jdXJIGvtp0PpCY2/mFaiE67KQIDAQABAoIBAAKF9CZTUd8zvDKE\n azo/Ur0Zf5omxgOBC/vzj0DLyXKr89KgMdhHmPG1YBKFIIU0XYCHXkclR05LAcbu\n BdeCJpXS5zBbwDdAB9P/XHXQqeNvfJRc++ZgJ4QAXzkuqBssXK87ALcwFeUShxot\n cphiWpW0inlwVkVn3WLUzfUV0+ARljn8VOf+aAmfCiQMl4gsBpvD3dxF84aihS+1\n blqar5dE1GCJWHW67R1uSaAqHf7nwbBkZY8nTWF8n4+ELAAtlOgQKZlrQ+JxB3Ar\n rWzgMj4M6F1/man1y/XPR56px9Xv3DwBZHuLufsqPr10q/nI9VIIQHe49sFgnN4+\n 48Q7wIECgYEAwxlrgBJI8gua4mJZxJRT8gBv2Mb1Kk1k7HVX11I+yF4eXr+cm+24\n Cq7MjqmBXSnqvdQkwGFZ+C3cTKXJBPONWGF8NgiXaHSKjPEoFuHLdKBpgZMAax/L\n aZBQRw6g12nz3XUCK0DE0wGgPkoDxc65s4NEWS+ua43LZ4TUOzWwwWECgYEA/XB1\n ARNHyARy+P3iTeebh3t7qJoNoptLWHMlKjSjIZ1VZ4+9ilKsi5ZKVkPaLIjo8MGv\n Ank3vzSrFSYhId0XfmSqoWySWc0eBkc6NERvopxuIV1WwRKf/18lLhxiEjHIcgds\n G2KmfeiXdCKSgGlWvJmLITY4gJpOYMjpEDxipskCgYAdxnljmGbNmfvPZRcyKzkM\n jAiF2wd7p0gp1lbLo9+1ELgt2ax7F7Ko3riVZUU7BLSwt/nL6o+iks02XW7qdIkz\n 3dzpGjKRXIfwrrVhmKBGclzny5mav8V5nO7DiXX+qkrvl3X3R/FCCtN77ivZOo2Y\n 2gXKXr6N55wNdnY1eyI4wQKBgQDXjZo2O+vFVuNimqyrjd1eMcxO7hfCwUooBGcL\n qpFEucg1uK+Awig24LCBBly9nARjIJh1Bhw/58/KwQ9U+fJNcdkeSnV/I1HyDQqY\n AczhBSM2BWkP9YNXc9jvivxudSECuwVblV/9nqGSCQWJag53gjAvIyqTVqpq7vYq\n 9PEC4QKBgGY2pj0ZNqGkq16jD3iS+DDBpX+TPnoHzu5GZCM/1GLZ6xXbpNWtZQt4\n /m+6koRWeGvNAULnp8RSnhBzm+ZglpbwYcvsqRNDqIPGhJ2JruVA/bY3S0ebkRlD\n xDn0dJVMvNyRR83ZpjTQhxoq5l56TN5xk1vdJ9nZdwJMmXiz2TrA\n -----END PRIVATE KEY-----\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nSSL Certificates Certificate can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cas/serviceCertificate:ServiceCertificate example \u003cid\u003e\n```\n\n",
"properties": {
"cert": {
"type": "string",
@@ -110415,7 +112268,7 @@
}
},
"alicloud:cassandra/cluster:Cluster": {
- "description": "Provides a Cassandra cluster resource supports replica set clusters only. The Cassandra provides stable, reliable, and automatic scalable database services. \nIt offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms.\nYou can see detail product introduction [here](https://www.alibabacloud.com/help/product/49055.htm).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n\u003e **NOTE:** The following regions support create Vpc network Cassandra cluster.\nThe official website mark more regions. Or you can call [DescribeRegions](https://help.aliyun.com/document_detail/157540.html).\n\n\u003e **NOTE:** Create Cassandra cluster or change cluster type and storage would cost 30 minutes. Please make full preparation.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-cassandra/latest/cassandra-delisting-notice) from version `1.220.0`.\n\n## Example Usage\n\n### Create a cassandra cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.cassandra.Cluster(\"default\", {\n clusterName: \"cassandra-cluster-name-tf\",\n dataCenterName: \"dc-1\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n majorVersion: \"3.11\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n maintainStartTime: \"18:00Z\",\n maintainEndTime: \"20:00Z\",\n ipWhite: \"127.0.0.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.cassandra.Cluster(\"default\",\n cluster_name=\"cassandra-cluster-name-tf\",\n data_center_name=\"dc-1\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n major_version=\"3.11\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx\",\n disk_size=160,\n disk_type=\"cloud_ssd\",\n maintain_start_time=\"18:00Z\",\n maintain_end_time=\"20:00Z\",\n ip_white=\"127.0.0.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Cassandra.Cluster(\"default\", new()\n {\n ClusterName = \"cassandra-cluster-name-tf\",\n DataCenterName = \"dc-1\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n MajorVersion = \"3.11\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n MaintainStartTime = \"18:00Z\",\n MaintainEndTime = \"20:00Z\",\n IpWhite = \"127.0.0.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cassandra\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cassandra.NewCluster(ctx, \"default\", \u0026cassandra.ClusterArgs{\n\t\t\tClusterName: pulumi.String(\"cassandra-cluster-name-tf\"),\n\t\t\tDataCenterName: pulumi.String(\"dc-1\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tMajorVersion: pulumi.String(\"3.11\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t\tMaintainStartTime: pulumi.String(\"18:00Z\"),\n\t\t\tMaintainEndTime: pulumi.String(\"20:00Z\"),\n\t\t\tIpWhite: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cassandra.Cluster;\nimport com.pulumi.alicloud.cassandra.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Cluster(\"default\", ClusterArgs.builder()\n .clusterName(\"cassandra-cluster-name-tf\")\n .dataCenterName(\"dc-1\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .majorVersion(\"3.11\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .maintainStartTime(\"18:00Z\")\n .maintainEndTime(\"20:00Z\")\n .ipWhite(\"127.0.0.1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cassandra:Cluster\n properties:\n clusterName: cassandra-cluster-name-tf\n dataCenterName: dc-1\n autoRenew: 'false'\n instanceType: cassandra.c.large\n majorVersion: '3.11'\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx\n diskSize: '160'\n diskType: cloud_ssd\n maintainStartTime: 18:00Z\n maintainEndTime: 20:00Z\n ipWhite: 127.0.0.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nThis is a example for class netType cluster. You can find more detail with the examples/cassandra_cluster dir.\n\n## Import\n\nCassandra cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cassandra/cluster:Cluster example cds-wz9sr400dd7xxxxx\n```\n\n",
+ "description": "Provides a Cassandra cluster resource supports replica set clusters only. The Cassandra provides stable, reliable, and automatic scalable database services. \nIt offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms.\nYou can see detail product introduction [here](https://www.alibabacloud.com/help/product/49055.htm).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n\u003e **NOTE:** The following regions support create Vpc network Cassandra cluster.\nThe official website mark more regions. Or you can call [DescribeRegions](https://help.aliyun.com/document_detail/157540.html).\n\n\u003e **NOTE:** Create Cassandra cluster or change cluster type and storage would cost 30 minutes. Please make full preparation.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-cassandra/latest/cassandra-delisting-notice) from version `1.220.0`.\n\n## Example Usage\n\n### Create a cassandra cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.cassandra.Cluster(\"default\", {\n clusterName: \"cassandra-cluster-name-tf\",\n dataCenterName: \"dc-1\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n majorVersion: \"3.11\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n maintainStartTime: \"18:00Z\",\n maintainEndTime: \"20:00Z\",\n ipWhite: \"127.0.0.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.cassandra.Cluster(\"default\",\n cluster_name=\"cassandra-cluster-name-tf\",\n data_center_name=\"dc-1\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n major_version=\"3.11\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx\",\n disk_size=160,\n disk_type=\"cloud_ssd\",\n maintain_start_time=\"18:00Z\",\n maintain_end_time=\"20:00Z\",\n ip_white=\"127.0.0.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Cassandra.Cluster(\"default\", new()\n {\n ClusterName = \"cassandra-cluster-name-tf\",\n DataCenterName = \"dc-1\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n MajorVersion = \"3.11\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n MaintainStartTime = \"18:00Z\",\n MaintainEndTime = \"20:00Z\",\n IpWhite = \"127.0.0.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cassandra\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cassandra.NewCluster(ctx, \"default\", \u0026cassandra.ClusterArgs{\n\t\t\tClusterName: pulumi.String(\"cassandra-cluster-name-tf\"),\n\t\t\tDataCenterName: pulumi.String(\"dc-1\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tMajorVersion: pulumi.String(\"3.11\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t\tMaintainStartTime: pulumi.String(\"18:00Z\"),\n\t\t\tMaintainEndTime: pulumi.String(\"20:00Z\"),\n\t\t\tIpWhite: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cassandra.Cluster;\nimport com.pulumi.alicloud.cassandra.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Cluster(\"default\", ClusterArgs.builder()\n .clusterName(\"cassandra-cluster-name-tf\")\n .dataCenterName(\"dc-1\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .majorVersion(\"3.11\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .maintainStartTime(\"18:00Z\")\n .maintainEndTime(\"20:00Z\")\n .ipWhite(\"127.0.0.1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cassandra:Cluster\n properties:\n clusterName: cassandra-cluster-name-tf\n dataCenterName: dc-1\n autoRenew: 'false'\n instanceType: cassandra.c.large\n majorVersion: '3.11'\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx\n diskSize: '160'\n diskType: cloud_ssd\n maintainStartTime: 18:00Z\n maintainEndTime: 20:00Z\n ipWhite: 127.0.0.1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nThis is a example for class netType cluster. You can find more detail with the examples/cassandra_cluster dir.\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCassandra cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cassandra/cluster:Cluster example cds-wz9sr400dd7xxxxx\n```\n\n",
"properties": {
"autoRenew": {
"type": "boolean",
@@ -110742,7 +112595,7 @@
}
},
"alicloud:cassandra/dataCenter:DataCenter": {
- "description": "Provides a Cassandra dataCenter resource supports replica set dataCenters only. The Cassandra provides stable, reliable, and automatic scalable database services. \nIt offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms.\nYou can see detail product introduction [here](https://www.alibabacloud.com/help/product/49055.htm).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n\u003e **NOTE:** Create a cassandra dataCenter need a clusterId,so need create a cassandra cluster first.\n\n\u003e **NOTE:** The following regions support create Vpc network Cassandra cluster.\nThe official website mark more regions. Or you can call [DescribeRegions](https://help.aliyun.com/document_detail/157540.html).\n\n\u003e **NOTE:** Create Cassandra dataCenter or change dataCenter type and storage would cost 30 minutes. Please make full preparation.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-cassandra/latest/cassandra-delisting-notice) from version `1.220.0`.\n\n## Example Usage\n\n### Create a cassandra dataCenter\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.cassandra.Cluster(\"default\", {\n clusterName: \"cassandra-cluster-name-tf\",\n dataCenterName: \"dc-1\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n majorVersion: \"3.11\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx1\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n maintainStartTime: \"18:00Z\",\n maintainEndTime: \"20:00Z\",\n ipWhite: \"127.0.0.1\",\n});\nconst defaultDataCenter = new alicloud.cassandra.DataCenter(\"default\", {\n clusterId: _default.id,\n dataCenterName: \"dc-2\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx2\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.cassandra.Cluster(\"default\",\n cluster_name=\"cassandra-cluster-name-tf\",\n data_center_name=\"dc-1\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n major_version=\"3.11\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx1\",\n disk_size=160,\n disk_type=\"cloud_ssd\",\n maintain_start_time=\"18:00Z\",\n maintain_end_time=\"20:00Z\",\n ip_white=\"127.0.0.1\")\ndefault_data_center = alicloud.cassandra.DataCenter(\"default\",\n cluster_id=default.id,\n data_center_name=\"dc-2\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx2\",\n disk_size=160,\n disk_type=\"cloud_ssd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Cassandra.Cluster(\"default\", new()\n {\n ClusterName = \"cassandra-cluster-name-tf\",\n DataCenterName = \"dc-1\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n MajorVersion = \"3.11\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx1\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n MaintainStartTime = \"18:00Z\",\n MaintainEndTime = \"20:00Z\",\n IpWhite = \"127.0.0.1\",\n });\n\n var defaultDataCenter = new AliCloud.Cassandra.DataCenter(\"default\", new()\n {\n ClusterId = @default.Id,\n DataCenterName = \"dc-2\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx2\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cassandra\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := cassandra.NewCluster(ctx, \"default\", \u0026cassandra.ClusterArgs{\n\t\t\tClusterName: pulumi.String(\"cassandra-cluster-name-tf\"),\n\t\t\tDataCenterName: pulumi.String(\"dc-1\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tMajorVersion: pulumi.String(\"3.11\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx1\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t\tMaintainStartTime: pulumi.String(\"18:00Z\"),\n\t\t\tMaintainEndTime: pulumi.String(\"20:00Z\"),\n\t\t\tIpWhite: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cassandra.NewDataCenter(ctx, \"default\", \u0026cassandra.DataCenterArgs{\n\t\t\tClusterId: _default.ID(),\n\t\t\tDataCenterName: pulumi.String(\"dc-2\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx2\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cassandra.Cluster;\nimport com.pulumi.alicloud.cassandra.ClusterArgs;\nimport com.pulumi.alicloud.cassandra.DataCenter;\nimport com.pulumi.alicloud.cassandra.DataCenterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Cluster(\"default\", ClusterArgs.builder()\n .clusterName(\"cassandra-cluster-name-tf\")\n .dataCenterName(\"dc-1\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .majorVersion(\"3.11\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx1\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .maintainStartTime(\"18:00Z\")\n .maintainEndTime(\"20:00Z\")\n .ipWhite(\"127.0.0.1\")\n .build());\n\n var defaultDataCenter = new DataCenter(\"defaultDataCenter\", DataCenterArgs.builder()\n .clusterId(default_.id())\n .dataCenterName(\"dc-2\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx2\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cassandra:Cluster\n properties:\n clusterName: cassandra-cluster-name-tf\n dataCenterName: dc-1\n autoRenew: 'false'\n instanceType: cassandra.c.large\n majorVersion: '3.11'\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx1\n diskSize: '160'\n diskType: cloud_ssd\n maintainStartTime: 18:00Z\n maintainEndTime: 20:00Z\n ipWhite: 127.0.0.1\n defaultDataCenter:\n type: alicloud:cassandra:DataCenter\n name: default\n properties:\n clusterId: ${default.id}\n dataCenterName: dc-2\n autoRenew: 'false'\n instanceType: cassandra.c.large\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx2\n diskSize: '160'\n diskType: cloud_ssd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nThis is a example for class netType dataCenter. You can find more detail with the examples/cassandra_data_center dir.\n\n## Import\n\nIf you need full function, please import Cassandra cluster first.\n\nCassandra dataCenter can be imported using the dcId:clusterId, e.g.\n\n```sh\n$ pulumi import alicloud:cassandra/dataCenter:DataCenter dc_2 cn-shenxxxx-x:cds-wz933ryoaurxxxxx\n```\n\n",
+ "description": "Provides a Cassandra dataCenter resource supports replica set dataCenters only. The Cassandra provides stable, reliable, and automatic scalable database services. \nIt offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms.\nYou can see detail product introduction [here](https://www.alibabacloud.com/help/product/49055.htm).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n\u003e **NOTE:** Create a cassandra dataCenter need a clusterId,so need create a cassandra cluster first.\n\n\u003e **NOTE:** The following regions support create Vpc network Cassandra cluster.\nThe official website mark more regions. Or you can call [DescribeRegions](https://help.aliyun.com/document_detail/157540.html).\n\n\u003e **NOTE:** Create Cassandra dataCenter or change dataCenter type and storage would cost 30 minutes. Please make full preparation.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-cassandra/latest/cassandra-delisting-notice) from version `1.220.0`.\n\n## Example Usage\n\n### Create a cassandra dataCenter\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.cassandra.Cluster(\"default\", {\n clusterName: \"cassandra-cluster-name-tf\",\n dataCenterName: \"dc-1\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n majorVersion: \"3.11\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx1\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n maintainStartTime: \"18:00Z\",\n maintainEndTime: \"20:00Z\",\n ipWhite: \"127.0.0.1\",\n});\nconst defaultDataCenter = new alicloud.cassandra.DataCenter(\"default\", {\n clusterId: _default.id,\n dataCenterName: \"dc-2\",\n autoRenew: false,\n instanceType: \"cassandra.c.large\",\n nodeCount: 2,\n payType: \"PayAsYouGo\",\n vswitchId: \"vsw-xxxx2\",\n diskSize: 160,\n diskType: \"cloud_ssd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.cassandra.Cluster(\"default\",\n cluster_name=\"cassandra-cluster-name-tf\",\n data_center_name=\"dc-1\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n major_version=\"3.11\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx1\",\n disk_size=160,\n disk_type=\"cloud_ssd\",\n maintain_start_time=\"18:00Z\",\n maintain_end_time=\"20:00Z\",\n ip_white=\"127.0.0.1\")\ndefault_data_center = alicloud.cassandra.DataCenter(\"default\",\n cluster_id=default.id,\n data_center_name=\"dc-2\",\n auto_renew=False,\n instance_type=\"cassandra.c.large\",\n node_count=2,\n pay_type=\"PayAsYouGo\",\n vswitch_id=\"vsw-xxxx2\",\n disk_size=160,\n disk_type=\"cloud_ssd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Cassandra.Cluster(\"default\", new()\n {\n ClusterName = \"cassandra-cluster-name-tf\",\n DataCenterName = \"dc-1\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n MajorVersion = \"3.11\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx1\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n MaintainStartTime = \"18:00Z\",\n MaintainEndTime = \"20:00Z\",\n IpWhite = \"127.0.0.1\",\n });\n\n var defaultDataCenter = new AliCloud.Cassandra.DataCenter(\"default\", new()\n {\n ClusterId = @default.Id,\n DataCenterName = \"dc-2\",\n AutoRenew = false,\n InstanceType = \"cassandra.c.large\",\n NodeCount = 2,\n PayType = \"PayAsYouGo\",\n VswitchId = \"vsw-xxxx2\",\n DiskSize = 160,\n DiskType = \"cloud_ssd\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cassandra\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := cassandra.NewCluster(ctx, \"default\", \u0026cassandra.ClusterArgs{\n\t\t\tClusterName: pulumi.String(\"cassandra-cluster-name-tf\"),\n\t\t\tDataCenterName: pulumi.String(\"dc-1\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tMajorVersion: pulumi.String(\"3.11\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx1\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t\tMaintainStartTime: pulumi.String(\"18:00Z\"),\n\t\t\tMaintainEndTime: pulumi.String(\"20:00Z\"),\n\t\t\tIpWhite: pulumi.String(\"127.0.0.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cassandra.NewDataCenter(ctx, \"default\", \u0026cassandra.DataCenterArgs{\n\t\t\tClusterId: _default.ID(),\n\t\t\tDataCenterName: pulumi.String(\"dc-2\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tInstanceType: pulumi.String(\"cassandra.c.large\"),\n\t\t\tNodeCount: pulumi.Int(2),\n\t\t\tPayType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: pulumi.String(\"vsw-xxxx2\"),\n\t\t\tDiskSize: pulumi.Int(160),\n\t\t\tDiskType: pulumi.String(\"cloud_ssd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cassandra.Cluster;\nimport com.pulumi.alicloud.cassandra.ClusterArgs;\nimport com.pulumi.alicloud.cassandra.DataCenter;\nimport com.pulumi.alicloud.cassandra.DataCenterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Cluster(\"default\", ClusterArgs.builder()\n .clusterName(\"cassandra-cluster-name-tf\")\n .dataCenterName(\"dc-1\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .majorVersion(\"3.11\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx1\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .maintainStartTime(\"18:00Z\")\n .maintainEndTime(\"20:00Z\")\n .ipWhite(\"127.0.0.1\")\n .build());\n\n var defaultDataCenter = new DataCenter(\"defaultDataCenter\", DataCenterArgs.builder()\n .clusterId(default_.id())\n .dataCenterName(\"dc-2\")\n .autoRenew(false)\n .instanceType(\"cassandra.c.large\")\n .nodeCount(2)\n .payType(\"PayAsYouGo\")\n .vswitchId(\"vsw-xxxx2\")\n .diskSize(160)\n .diskType(\"cloud_ssd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cassandra:Cluster\n properties:\n clusterName: cassandra-cluster-name-tf\n dataCenterName: dc-1\n autoRenew: 'false'\n instanceType: cassandra.c.large\n majorVersion: '3.11'\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx1\n diskSize: '160'\n diskType: cloud_ssd\n maintainStartTime: 18:00Z\n maintainEndTime: 20:00Z\n ipWhite: 127.0.0.1\n defaultDataCenter:\n type: alicloud:cassandra:DataCenter\n name: default\n properties:\n clusterId: ${default.id}\n dataCenterName: dc-2\n autoRenew: 'false'\n instanceType: cassandra.c.large\n nodeCount: '2'\n payType: PayAsYouGo\n vswitchId: vsw-xxxx2\n diskSize: '160'\n diskType: cloud_ssd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nThis is a example for class netType dataCenter. You can find more detail with the examples/cassandra_data_center dir.\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nIf you need full function, please import Cassandra cluster first.\n\nCassandra dataCenter can be imported using the dcId:clusterId, e.g.\n\n```sh\n$ pulumi import alicloud:cassandra/dataCenter:DataCenter dc_2 cn-shenxxxx-x:cds-wz933ryoaurxxxxx\n```\n\n",
"properties": {
"autoRenew": {
"type": "boolean",
@@ -111196,7 +113049,7 @@
}
},
"alicloud:cddc/dedicatedHostAccount:DedicatedHostAccount": {
- "description": "Provides a ApsaraDB for MyBase Dedicated Host Account resource.\n\nFor information about ApsaraDB for MyBase Dedicated Host Account and how to use it, see [What is Dedicated Host Account](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/creatededicatedhostaccount).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n\u003e **NOTE:** Each Dedicated host can have only one account. Before you create an account for a host, make sure that the existing account is deleted.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/notice-stop-selling-mybase-hosted-instances-from-august-31-2023) from version `1.225.1`. \n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cddc.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultDedicatedHostGroup = new alicloud.cddc.DedicatedHostGroup(\"default\", {\n engine: \"MySQL\",\n vpcId: defaultNetwork.id,\n cpuAllocationRatio: 101,\n memAllocationRatio: 50,\n diskAllocationRatio: 200,\n allocationPolicy: \"Evenly\",\n hostReplacePolicy: \"Manual\",\n dedicatedHostGroupDesc: name,\n openPermission: true,\n});\nconst defaultGetHostEcsLevelInfos = _default.then(_default =\u003e alicloud.cddc.getHostEcsLevelInfos({\n dbType: \"mysql\",\n zoneId: _default.ids?.[0],\n storageType: \"cloud_essd\",\n}));\nconst defaultDedicatedHost = new alicloud.cddc.DedicatedHost(\"default\", {\n hostName: name,\n dedicatedHostGroupId: defaultDedicatedHostGroup.id,\n hostClass: defaultGetHostEcsLevelInfos.then(defaultGetHostEcsLevelInfos =\u003e defaultGetHostEcsLevelInfos.infos?.[0]?.resClassCode),\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchId: defaultSwitch.id,\n paymentType: \"Subscription\",\n tags: {\n Created: \"TF\",\n For: \"CDDC_DEDICATED\",\n },\n});\nconst defaultDedicatedHostAccount = new alicloud.cddc.DedicatedHostAccount(\"default\", {\n accountName: name,\n accountPassword: \"Password1234\",\n dedicatedHostId: defaultDedicatedHost.dedicatedHostId,\n accountType: \"Normal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cddc.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.ids[0])\ndefault_dedicated_host_group = alicloud.cddc.DedicatedHostGroup(\"default\",\n engine=\"MySQL\",\n vpc_id=default_network.id,\n cpu_allocation_ratio=101,\n mem_allocation_ratio=50,\n disk_allocation_ratio=200,\n allocation_policy=\"Evenly\",\n host_replace_policy=\"Manual\",\n dedicated_host_group_desc=name,\n open_permission=True)\ndefault_get_host_ecs_level_infos = alicloud.cddc.get_host_ecs_level_infos(db_type=\"mysql\",\n zone_id=default.ids[0],\n storage_type=\"cloud_essd\")\ndefault_dedicated_host = alicloud.cddc.DedicatedHost(\"default\",\n host_name=name,\n dedicated_host_group_id=default_dedicated_host_group.id,\n host_class=default_get_host_ecs_level_infos.infos[0].res_class_code,\n zone_id=default.ids[0],\n vswitch_id=default_switch.id,\n payment_type=\"Subscription\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"CDDC_DEDICATED\",\n })\ndefault_dedicated_host_account = alicloud.cddc.DedicatedHostAccount(\"default\",\n account_name=name,\n account_password=\"Password1234\",\n dedicated_host_id=default_dedicated_host.dedicated_host_id,\n account_type=\"Normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cddc.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n });\n\n var defaultDedicatedHostGroup = new AliCloud.Cddc.DedicatedHostGroup(\"default\", new()\n {\n Engine = \"MySQL\",\n VpcId = defaultNetwork.Id,\n CpuAllocationRatio = 101,\n MemAllocationRatio = 50,\n DiskAllocationRatio = 200,\n AllocationPolicy = \"Evenly\",\n HostReplacePolicy = \"Manual\",\n DedicatedHostGroupDesc = name,\n OpenPermission = true,\n });\n\n var defaultGetHostEcsLevelInfos = AliCloud.Cddc.GetHostEcsLevelInfos.Invoke(new()\n {\n DbType = \"mysql\",\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n StorageType = \"cloud_essd\",\n });\n\n var defaultDedicatedHost = new AliCloud.Cddc.DedicatedHost(\"default\", new()\n {\n HostName = name,\n DedicatedHostGroupId = defaultDedicatedHostGroup.Id,\n HostClass = defaultGetHostEcsLevelInfos.Apply(getHostEcsLevelInfosResult =\u003e getHostEcsLevelInfosResult.Infos[0]?.ResClassCode),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchId = defaultSwitch.Id,\n PaymentType = \"Subscription\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"CDDC_DEDICATED\" },\n },\n });\n\n var defaultDedicatedHostAccount = new AliCloud.Cddc.DedicatedHostAccount(\"default\", new()\n {\n AccountName = name,\n AccountPassword = \"Password1234\",\n DedicatedHostId = defaultDedicatedHost.DedicatedHostId,\n AccountType = \"Normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cddc\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cddc.GetZones(ctx, \u0026cddc.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDedicatedHostGroup, err := cddc.NewDedicatedHostGroup(ctx, \"default\", \u0026cddc.DedicatedHostGroupArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCpuAllocationRatio: pulumi.Int(101),\n\t\t\tMemAllocationRatio: pulumi.Int(50),\n\t\t\tDiskAllocationRatio: pulumi.Int(200),\n\t\t\tAllocationPolicy: pulumi.String(\"Evenly\"),\n\t\t\tHostReplacePolicy: pulumi.String(\"Manual\"),\n\t\t\tDedicatedHostGroupDesc: pulumi.String(name),\n\t\t\tOpenPermission: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetHostEcsLevelInfos, err := cddc.GetHostEcsLevelInfos(ctx, \u0026cddc.GetHostEcsLevelInfosArgs{\n\t\t\tDbType: \"mysql\",\n\t\t\tZoneId: _default.Ids[0],\n\t\t\tStorageType: \"cloud_essd\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDedicatedHost, err := cddc.NewDedicatedHost(ctx, \"default\", \u0026cddc.DedicatedHostArgs{\n\t\t\tHostName: pulumi.String(name),\n\t\t\tDedicatedHostGroupId: defaultDedicatedHostGroup.ID(),\n\t\t\tHostClass: pulumi.String(defaultGetHostEcsLevelInfos.Infos[0].ResClassCode),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"CDDC_DEDICATED\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cddc.NewDedicatedHostAccount(ctx, \"default\", \u0026cddc.DedicatedHostAccountArgs{\n\t\t\tAccountName: pulumi.String(name),\n\t\t\tAccountPassword: pulumi.String(\"Password1234\"),\n\t\t\tDedicatedHostId: defaultDedicatedHost.DedicatedHostId,\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cddc.CddcFunctions;\nimport com.pulumi.alicloud.cddc.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroup;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroupArgs;\nimport com.pulumi.alicloud.cddc.inputs.GetHostEcsLevelInfosArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHost;\nimport com.pulumi.alicloud.cddc.DedicatedHostArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostAccount;\nimport com.pulumi.alicloud.cddc.DedicatedHostAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CddcFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultDedicatedHostGroup = new DedicatedHostGroup(\"defaultDedicatedHostGroup\", DedicatedHostGroupArgs.builder()\n .engine(\"MySQL\")\n .vpcId(defaultNetwork.id())\n .cpuAllocationRatio(101)\n .memAllocationRatio(50)\n .diskAllocationRatio(200)\n .allocationPolicy(\"Evenly\")\n .hostReplacePolicy(\"Manual\")\n .dedicatedHostGroupDesc(name)\n .openPermission(true)\n .build());\n\n final var defaultGetHostEcsLevelInfos = CddcFunctions.getHostEcsLevelInfos(GetHostEcsLevelInfosArgs.builder()\n .dbType(\"mysql\")\n .zoneId(default_.ids()[0])\n .storageType(\"cloud_essd\")\n .build());\n\n var defaultDedicatedHost = new DedicatedHost(\"defaultDedicatedHost\", DedicatedHostArgs.builder()\n .hostName(name)\n .dedicatedHostGroupId(defaultDedicatedHostGroup.id())\n .hostClass(defaultGetHostEcsLevelInfos.infos()[0].resClassCode())\n .zoneId(default_.ids()[0])\n .vswitchId(defaultSwitch.id())\n .paymentType(\"Subscription\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"CDDC_DEDICATED\")\n ))\n .build());\n\n var defaultDedicatedHostAccount = new DedicatedHostAccount(\"defaultDedicatedHostAccount\", DedicatedHostAccountArgs.builder()\n .accountName(name)\n .accountPassword(\"Password1234\")\n .dedicatedHostId(defaultDedicatedHost.dedicatedHostId())\n .accountType(\"Normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.ids[0]}\n defaultDedicatedHostGroup:\n type: alicloud:cddc:DedicatedHostGroup\n name: default\n properties:\n engine: MySQL\n vpcId: ${defaultNetwork.id}\n cpuAllocationRatio: 101\n memAllocationRatio: 50\n diskAllocationRatio: 200\n allocationPolicy: Evenly\n hostReplacePolicy: Manual\n dedicatedHostGroupDesc: ${name}\n openPermission: true\n defaultDedicatedHost:\n type: alicloud:cddc:DedicatedHost\n name: default\n properties:\n hostName: ${name}\n dedicatedHostGroupId: ${defaultDedicatedHostGroup.id}\n hostClass: ${defaultGetHostEcsLevelInfos.infos[0].resClassCode}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultSwitch.id}\n paymentType: Subscription\n tags:\n Created: TF\n For: CDDC_DEDICATED\n defaultDedicatedHostAccount:\n type: alicloud:cddc:DedicatedHostAccount\n name: default\n properties:\n accountName: ${name}\n accountPassword: Password1234\n dedicatedHostId: ${defaultDedicatedHost.dedicatedHostId}\n accountType: Normal\nvariables:\n default:\n fn::invoke:\n function: alicloud:cddc:getZones\n arguments: {}\n defaultGetHostEcsLevelInfos:\n fn::invoke:\n function: alicloud:cddc:getHostEcsLevelInfos\n arguments:\n dbType: mysql\n zoneId: ${default.ids[0]}\n storageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApsaraDB for MyBase Dedicated Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cddc/dedicatedHostAccount:DedicatedHostAccount example \u003cdedicated_host_id\u003e:\u003caccount_name\u003e\n```\n\n",
+ "description": "Provides a ApsaraDB for MyBase Dedicated Host Account resource.\n\nFor information about ApsaraDB for MyBase Dedicated Host Account and how to use it, see [What is Dedicated Host Account](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/creatededicatedhostaccount).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n\u003e **NOTE:** Each Dedicated host can have only one account. Before you create an account for a host, make sure that the existing account is deleted.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/notice-stop-selling-mybase-hosted-instances-from-august-31-2023) from version `1.225.1`. \n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cddc.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultDedicatedHostGroup = new alicloud.cddc.DedicatedHostGroup(\"default\", {\n engine: \"MySQL\",\n vpcId: defaultNetwork.id,\n cpuAllocationRatio: 101,\n memAllocationRatio: 50,\n diskAllocationRatio: 200,\n allocationPolicy: \"Evenly\",\n hostReplacePolicy: \"Manual\",\n dedicatedHostGroupDesc: name,\n openPermission: true,\n});\nconst defaultGetHostEcsLevelInfos = _default.then(_default =\u003e alicloud.cddc.getHostEcsLevelInfos({\n dbType: \"mysql\",\n zoneId: _default.ids?.[0],\n storageType: \"cloud_essd\",\n}));\nconst defaultDedicatedHost = new alicloud.cddc.DedicatedHost(\"default\", {\n hostName: name,\n dedicatedHostGroupId: defaultDedicatedHostGroup.id,\n hostClass: defaultGetHostEcsLevelInfos.then(defaultGetHostEcsLevelInfos =\u003e defaultGetHostEcsLevelInfos.infos?.[0]?.resClassCode),\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchId: defaultSwitch.id,\n paymentType: \"Subscription\",\n tags: {\n Created: \"TF\",\n For: \"CDDC_DEDICATED\",\n },\n});\nconst defaultDedicatedHostAccount = new alicloud.cddc.DedicatedHostAccount(\"default\", {\n accountName: name,\n accountPassword: \"Password1234\",\n dedicatedHostId: defaultDedicatedHost.dedicatedHostId,\n accountType: \"Normal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cddc.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.ids[0])\ndefault_dedicated_host_group = alicloud.cddc.DedicatedHostGroup(\"default\",\n engine=\"MySQL\",\n vpc_id=default_network.id,\n cpu_allocation_ratio=101,\n mem_allocation_ratio=50,\n disk_allocation_ratio=200,\n allocation_policy=\"Evenly\",\n host_replace_policy=\"Manual\",\n dedicated_host_group_desc=name,\n open_permission=True)\ndefault_get_host_ecs_level_infos = alicloud.cddc.get_host_ecs_level_infos(db_type=\"mysql\",\n zone_id=default.ids[0],\n storage_type=\"cloud_essd\")\ndefault_dedicated_host = alicloud.cddc.DedicatedHost(\"default\",\n host_name=name,\n dedicated_host_group_id=default_dedicated_host_group.id,\n host_class=default_get_host_ecs_level_infos.infos[0].res_class_code,\n zone_id=default.ids[0],\n vswitch_id=default_switch.id,\n payment_type=\"Subscription\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"CDDC_DEDICATED\",\n })\ndefault_dedicated_host_account = alicloud.cddc.DedicatedHostAccount(\"default\",\n account_name=name,\n account_password=\"Password1234\",\n dedicated_host_id=default_dedicated_host.dedicated_host_id,\n account_type=\"Normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cddc.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n });\n\n var defaultDedicatedHostGroup = new AliCloud.Cddc.DedicatedHostGroup(\"default\", new()\n {\n Engine = \"MySQL\",\n VpcId = defaultNetwork.Id,\n CpuAllocationRatio = 101,\n MemAllocationRatio = 50,\n DiskAllocationRatio = 200,\n AllocationPolicy = \"Evenly\",\n HostReplacePolicy = \"Manual\",\n DedicatedHostGroupDesc = name,\n OpenPermission = true,\n });\n\n var defaultGetHostEcsLevelInfos = AliCloud.Cddc.GetHostEcsLevelInfos.Invoke(new()\n {\n DbType = \"mysql\",\n ZoneId = @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0]),\n StorageType = \"cloud_essd\",\n });\n\n var defaultDedicatedHost = new AliCloud.Cddc.DedicatedHost(\"default\", new()\n {\n HostName = name,\n DedicatedHostGroupId = defaultDedicatedHostGroup.Id,\n HostClass = defaultGetHostEcsLevelInfos.Apply(getHostEcsLevelInfosResult =\u003e getHostEcsLevelInfosResult.Infos[0]?.ResClassCode),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchId = defaultSwitch.Id,\n PaymentType = \"Subscription\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"CDDC_DEDICATED\" },\n },\n });\n\n var defaultDedicatedHostAccount = new AliCloud.Cddc.DedicatedHostAccount(\"default\", new()\n {\n AccountName = name,\n AccountPassword = \"Password1234\",\n DedicatedHostId = defaultDedicatedHost.DedicatedHostId,\n AccountType = \"Normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cddc\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cddc.GetZones(ctx, \u0026cddc.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDedicatedHostGroup, err := cddc.NewDedicatedHostGroup(ctx, \"default\", \u0026cddc.DedicatedHostGroupArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCpuAllocationRatio: pulumi.Int(101),\n\t\t\tMemAllocationRatio: pulumi.Int(50),\n\t\t\tDiskAllocationRatio: pulumi.Int(200),\n\t\t\tAllocationPolicy: pulumi.String(\"Evenly\"),\n\t\t\tHostReplacePolicy: pulumi.String(\"Manual\"),\n\t\t\tDedicatedHostGroupDesc: pulumi.String(name),\n\t\t\tOpenPermission: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetHostEcsLevelInfos, err := cddc.GetHostEcsLevelInfos(ctx, \u0026cddc.GetHostEcsLevelInfosArgs{\n\t\t\tDbType: \"mysql\",\n\t\t\tZoneId: _default.Ids[0],\n\t\t\tStorageType: \"cloud_essd\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDedicatedHost, err := cddc.NewDedicatedHost(ctx, \"default\", \u0026cddc.DedicatedHostArgs{\n\t\t\tHostName: pulumi.String(name),\n\t\t\tDedicatedHostGroupId: defaultDedicatedHostGroup.ID(),\n\t\t\tHostClass: pulumi.String(defaultGetHostEcsLevelInfos.Infos[0].ResClassCode),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"CDDC_DEDICATED\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cddc.NewDedicatedHostAccount(ctx, \"default\", \u0026cddc.DedicatedHostAccountArgs{\n\t\t\tAccountName: pulumi.String(name),\n\t\t\tAccountPassword: pulumi.String(\"Password1234\"),\n\t\t\tDedicatedHostId: defaultDedicatedHost.DedicatedHostId,\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cddc.CddcFunctions;\nimport com.pulumi.alicloud.cddc.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroup;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroupArgs;\nimport com.pulumi.alicloud.cddc.inputs.GetHostEcsLevelInfosArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHost;\nimport com.pulumi.alicloud.cddc.DedicatedHostArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostAccount;\nimport com.pulumi.alicloud.cddc.DedicatedHostAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CddcFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultDedicatedHostGroup = new DedicatedHostGroup(\"defaultDedicatedHostGroup\", DedicatedHostGroupArgs.builder()\n .engine(\"MySQL\")\n .vpcId(defaultNetwork.id())\n .cpuAllocationRatio(101)\n .memAllocationRatio(50)\n .diskAllocationRatio(200)\n .allocationPolicy(\"Evenly\")\n .hostReplacePolicy(\"Manual\")\n .dedicatedHostGroupDesc(name)\n .openPermission(true)\n .build());\n\n final var defaultGetHostEcsLevelInfos = CddcFunctions.getHostEcsLevelInfos(GetHostEcsLevelInfosArgs.builder()\n .dbType(\"mysql\")\n .zoneId(default_.ids()[0])\n .storageType(\"cloud_essd\")\n .build());\n\n var defaultDedicatedHost = new DedicatedHost(\"defaultDedicatedHost\", DedicatedHostArgs.builder()\n .hostName(name)\n .dedicatedHostGroupId(defaultDedicatedHostGroup.id())\n .hostClass(defaultGetHostEcsLevelInfos.infos()[0].resClassCode())\n .zoneId(default_.ids()[0])\n .vswitchId(defaultSwitch.id())\n .paymentType(\"Subscription\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"CDDC_DEDICATED\")\n ))\n .build());\n\n var defaultDedicatedHostAccount = new DedicatedHostAccount(\"defaultDedicatedHostAccount\", DedicatedHostAccountArgs.builder()\n .accountName(name)\n .accountPassword(\"Password1234\")\n .dedicatedHostId(defaultDedicatedHost.dedicatedHostId())\n .accountType(\"Normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.ids[0]}\n defaultDedicatedHostGroup:\n type: alicloud:cddc:DedicatedHostGroup\n name: default\n properties:\n engine: MySQL\n vpcId: ${defaultNetwork.id}\n cpuAllocationRatio: 101\n memAllocationRatio: 50\n diskAllocationRatio: 200\n allocationPolicy: Evenly\n hostReplacePolicy: Manual\n dedicatedHostGroupDesc: ${name}\n openPermission: true\n defaultDedicatedHost:\n type: alicloud:cddc:DedicatedHost\n name: default\n properties:\n hostName: ${name}\n dedicatedHostGroupId: ${defaultDedicatedHostGroup.id}\n hostClass: ${defaultGetHostEcsLevelInfos.infos[0].resClassCode}\n zoneId: ${default.ids[0]}\n vswitchId: ${defaultSwitch.id}\n paymentType: Subscription\n tags:\n Created: TF\n For: CDDC_DEDICATED\n defaultDedicatedHostAccount:\n type: alicloud:cddc:DedicatedHostAccount\n name: default\n properties:\n accountName: ${name}\n accountPassword: Password1234\n dedicatedHostId: ${defaultDedicatedHost.dedicatedHostId}\n accountType: Normal\nvariables:\n default:\n fn::invoke:\n function: alicloud:cddc:getZones\n arguments: {}\n defaultGetHostEcsLevelInfos:\n fn::invoke:\n function: alicloud:cddc:getHostEcsLevelInfos\n arguments:\n dbType: mysql\n zoneId: ${default.ids[0]}\n storageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApsaraDB for MyBase Dedicated Host Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cddc/dedicatedHostAccount:DedicatedHostAccount example \u003cdedicated_host_id\u003e:\u003caccount_name\u003e\n```\n\n",
"properties": {
"accountName": {
"type": "string",
@@ -111276,7 +113129,7 @@
}
},
"alicloud:cddc/dedicatedHostGroup:DedicatedHostGroup": {
- "description": "Provides a ApsaraDB for MyBase Dedicated Host Group resource.\n\nFor information about ApsaraDB for MyBase Dedicated Host Group and how to use it, see [What is Dedicated Host Group](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/creatededicatedhostgroup).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/notice-stop-selling-mybase-hosted-instances-from-august-31-2023) from version `1.225.1`. \n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultDedicatedHostGroup = new alicloud.cddc.DedicatedHostGroup(\"default\", {\n engine: \"MySQL\",\n vpcId: _default.id,\n cpuAllocationRatio: 101,\n memAllocationRatio: 50,\n diskAllocationRatio: 200,\n allocationPolicy: \"Evenly\",\n hostReplacePolicy: \"Manual\",\n dedicatedHostGroupDesc: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_dedicated_host_group = alicloud.cddc.DedicatedHostGroup(\"default\",\n engine=\"MySQL\",\n vpc_id=default.id,\n cpu_allocation_ratio=101,\n mem_allocation_ratio=50,\n disk_allocation_ratio=200,\n allocation_policy=\"Evenly\",\n host_replace_policy=\"Manual\",\n dedicated_host_group_desc=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultDedicatedHostGroup = new AliCloud.Cddc.DedicatedHostGroup(\"default\", new()\n {\n Engine = \"MySQL\",\n VpcId = @default.Id,\n CpuAllocationRatio = 101,\n MemAllocationRatio = 50,\n DiskAllocationRatio = 200,\n AllocationPolicy = \"Evenly\",\n HostReplacePolicy = \"Manual\",\n DedicatedHostGroupDesc = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cddc\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cddc.NewDedicatedHostGroup(ctx, \"default\", \u0026cddc.DedicatedHostGroupArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tCpuAllocationRatio: pulumi.Int(101),\n\t\t\tMemAllocationRatio: pulumi.Int(50),\n\t\t\tDiskAllocationRatio: pulumi.Int(200),\n\t\t\tAllocationPolicy: pulumi.String(\"Evenly\"),\n\t\t\tHostReplacePolicy: pulumi.String(\"Manual\"),\n\t\t\tDedicatedHostGroupDesc: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroup;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultDedicatedHostGroup = new DedicatedHostGroup(\"defaultDedicatedHostGroup\", DedicatedHostGroupArgs.builder()\n .engine(\"MySQL\")\n .vpcId(default_.id())\n .cpuAllocationRatio(101)\n .memAllocationRatio(50)\n .diskAllocationRatio(200)\n .allocationPolicy(\"Evenly\")\n .hostReplacePolicy(\"Manual\")\n .dedicatedHostGroupDesc(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultDedicatedHostGroup:\n type: alicloud:cddc:DedicatedHostGroup\n name: default\n properties:\n engine: MySQL\n vpcId: ${default.id}\n cpuAllocationRatio: 101\n memAllocationRatio: 50\n diskAllocationRatio: 200\n allocationPolicy: Evenly\n hostReplacePolicy: Manual\n dedicatedHostGroupDesc: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApsaraDB for MyBase Dedicated Host Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cddc/dedicatedHostGroup:DedicatedHostGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ApsaraDB for MyBase Dedicated Host Group resource.\n\nFor information about ApsaraDB for MyBase Dedicated Host Group and how to use it, see [What is Dedicated Host Group](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/creatededicatedhostgroup).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n\u003e **DEPRECATED:** This resource has been [deprecated](https://www.alibabacloud.com/help/en/apsaradb-for-mybase/latest/notice-stop-selling-mybase-hosted-instances-from-august-31-2023) from version `1.225.1`. \n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultDedicatedHostGroup = new alicloud.cddc.DedicatedHostGroup(\"default\", {\n engine: \"MySQL\",\n vpcId: _default.id,\n cpuAllocationRatio: 101,\n memAllocationRatio: 50,\n diskAllocationRatio: 200,\n allocationPolicy: \"Evenly\",\n hostReplacePolicy: \"Manual\",\n dedicatedHostGroupDesc: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_dedicated_host_group = alicloud.cddc.DedicatedHostGroup(\"default\",\n engine=\"MySQL\",\n vpc_id=default.id,\n cpu_allocation_ratio=101,\n mem_allocation_ratio=50,\n disk_allocation_ratio=200,\n allocation_policy=\"Evenly\",\n host_replace_policy=\"Manual\",\n dedicated_host_group_desc=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultDedicatedHostGroup = new AliCloud.Cddc.DedicatedHostGroup(\"default\", new()\n {\n Engine = \"MySQL\",\n VpcId = @default.Id,\n CpuAllocationRatio = 101,\n MemAllocationRatio = 50,\n DiskAllocationRatio = 200,\n AllocationPolicy = \"Evenly\",\n HostReplacePolicy = \"Manual\",\n DedicatedHostGroupDesc = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cddc\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cddc.NewDedicatedHostGroup(ctx, \"default\", \u0026cddc.DedicatedHostGroupArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tCpuAllocationRatio: pulumi.Int(101),\n\t\t\tMemAllocationRatio: pulumi.Int(50),\n\t\t\tDiskAllocationRatio: pulumi.Int(200),\n\t\t\tAllocationPolicy: pulumi.String(\"Evenly\"),\n\t\t\tHostReplacePolicy: pulumi.String(\"Manual\"),\n\t\t\tDedicatedHostGroupDesc: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroup;\nimport com.pulumi.alicloud.cddc.DedicatedHostGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultDedicatedHostGroup = new DedicatedHostGroup(\"defaultDedicatedHostGroup\", DedicatedHostGroupArgs.builder()\n .engine(\"MySQL\")\n .vpcId(default_.id())\n .cpuAllocationRatio(101)\n .memAllocationRatio(50)\n .diskAllocationRatio(200)\n .allocationPolicy(\"Evenly\")\n .hostReplacePolicy(\"Manual\")\n .dedicatedHostGroupDesc(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultDedicatedHostGroup:\n type: alicloud:cddc:DedicatedHostGroup\n name: default\n properties:\n engine: MySQL\n vpcId: ${default.id}\n cpuAllocationRatio: 101\n memAllocationRatio: 50\n diskAllocationRatio: 200\n allocationPolicy: Evenly\n hostReplacePolicy: Manual\n dedicatedHostGroupDesc: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApsaraDB for MyBase Dedicated Host Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cddc/dedicatedHostGroup:DedicatedHostGroup example \u003cid\u003e\n```\n\n",
"properties": {
"allocationPolicy": {
"type": "string",
@@ -112083,7 +113936,7 @@
}
},
"alicloud:cdn/domainConfig:DomainConfig": {
- "description": "Provides a Cdn Domain Config resource.\n\nFor information about Cdn Domain Config and how to use it, see [What is Domain Config](https://www.alibabacloud.com/help/en/doc-detail/90915.htm)\n\n\u003e **NOTE:** Available since v1.34.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\n// Create a new Domain config.\nconst domain = new alicloud.cdn.DomainNew(\"domain\", {\n domainName: `mycdndomain-${_default.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n type: \"ipaddr\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\nconst config = new alicloud.cdn.DomainConfig(\"config\", {\n domainName: domain.domainName,\n functionName: \"ip_allow_list_set\",\n functionArgs: [{\n argName: \"ip_list\",\n argValue: \"110.110.110.110\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\n# Create a new Domain config.\ndomain = alicloud.cdn.DomainNew(\"domain\",\n domain_name=f\"mycdndomain-{default['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"type\": \"ipaddr\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\nconfig = alicloud.cdn.DomainConfig(\"config\",\n domain_name=domain.domain_name,\n function_name=\"ip_allow_list_set\",\n function_args=[{\n \"arg_name\": \"ip_list\",\n \"arg_value\": \"110.110.110.110\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n // Create a new Domain config.\n var domain = new AliCloud.Cdn.DomainNew(\"domain\", new()\n {\n DomainName = $\"mycdndomain-{@default.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Content = \"1.1.1.1\",\n Type = \"ipaddr\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n var config = new AliCloud.Cdn.DomainConfig(\"config\", new()\n {\n DomainName = domain.DomainName,\n FunctionName = \"ip_allow_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Cdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ip_list\",\n ArgValue = \"110.110.110.110\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a new Domain config.\n\t\tdomain, err := cdn.NewDomainNew(ctx, \"domain\", \u0026cdn.DomainNewArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", _default.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewDomainConfig(ctx, \"config\", \u0026cdn.DomainConfigArgs{\n\t\t\tDomainName: domain.DomainName,\n\t\t\tFunctionName: pulumi.String(\"ip_allow_list_set\"),\n\t\t\tFunctionArgs: cdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026cdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ip_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"110.110.110.110\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport com.pulumi.alicloud.cdn.DomainConfig;\nimport com.pulumi.alicloud.cdn.DomainConfigArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainConfigFunctionArgArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n // Create a new Domain config.\n var domain = new DomainNew(\"domain\", DomainNewArgs.builder()\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", default_.result()))\n .cdnType(\"web\")\n .scope(\"overseas\")\n .sources(DomainNewSourceArgs.builder()\n .content(\"1.1.1.1\")\n .type(\"ipaddr\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n var config = new DomainConfig(\"config\", DomainConfigArgs.builder()\n .domainName(domain.domainName())\n .functionName(\"ip_allow_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"ip_list\")\n .argValue(\"110.110.110.110\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n # Create a new Domain config.\n domain:\n type: alicloud:cdn:DomainNew\n properties:\n domainName: mycdndomain-${default.result}.alicloud-provider.cn\n cdnType: web\n scope: overseas\n sources:\n - content: 1.1.1.1\n type: ipaddr\n priority: '20'\n port: 80\n weight: '15'\n config:\n type: alicloud:cdn:DomainConfig\n properties:\n domainName: ${domain.domainName}\n functionName: ip_allow_list_set\n functionArgs:\n - argName: ip_list\n argValue: 110.110.110.110\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCDN domain config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e:\u003cconfig_id\u003e\n```\n\n```sh\n$ pulumi import alicloud:cdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e\n```\n\n",
+ "description": "Provides a Cdn Domain Config resource.\n\nFor information about Cdn Domain Config and how to use it, see [What is Domain Config](https://www.alibabacloud.com/help/en/doc-detail/90915.htm)\n\n\u003e **NOTE:** Available since v1.34.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\n// Create a new Domain config.\nconst domain = new alicloud.cdn.DomainNew(\"domain\", {\n domainName: `mycdndomain-${_default.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n type: \"ipaddr\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\nconst config = new alicloud.cdn.DomainConfig(\"config\", {\n domainName: domain.domainName,\n functionName: \"ip_allow_list_set\",\n functionArgs: [{\n argName: \"ip_list\",\n argValue: \"110.110.110.110\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\n# Create a new Domain config.\ndomain = alicloud.cdn.DomainNew(\"domain\",\n domain_name=f\"mycdndomain-{default['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"type\": \"ipaddr\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\nconfig = alicloud.cdn.DomainConfig(\"config\",\n domain_name=domain.domain_name,\n function_name=\"ip_allow_list_set\",\n function_args=[{\n \"arg_name\": \"ip_list\",\n \"arg_value\": \"110.110.110.110\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n // Create a new Domain config.\n var domain = new AliCloud.Cdn.DomainNew(\"domain\", new()\n {\n DomainName = $\"mycdndomain-{@default.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Content = \"1.1.1.1\",\n Type = \"ipaddr\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n var config = new AliCloud.Cdn.DomainConfig(\"config\", new()\n {\n DomainName = domain.DomainName,\n FunctionName = \"ip_allow_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Cdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ip_list\",\n ArgValue = \"110.110.110.110\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a new Domain config.\n\t\tdomain, err := cdn.NewDomainNew(ctx, \"domain\", \u0026cdn.DomainNewArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", _default.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewDomainConfig(ctx, \"config\", \u0026cdn.DomainConfigArgs{\n\t\t\tDomainName: domain.DomainName,\n\t\t\tFunctionName: pulumi.String(\"ip_allow_list_set\"),\n\t\t\tFunctionArgs: cdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026cdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ip_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"110.110.110.110\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport com.pulumi.alicloud.cdn.DomainConfig;\nimport com.pulumi.alicloud.cdn.DomainConfigArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainConfigFunctionArgArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n // Create a new Domain config.\n var domain = new DomainNew(\"domain\", DomainNewArgs.builder()\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", default_.result()))\n .cdnType(\"web\")\n .scope(\"overseas\")\n .sources(DomainNewSourceArgs.builder()\n .content(\"1.1.1.1\")\n .type(\"ipaddr\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n var config = new DomainConfig(\"config\", DomainConfigArgs.builder()\n .domainName(domain.domainName())\n .functionName(\"ip_allow_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"ip_list\")\n .argValue(\"110.110.110.110\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n # Create a new Domain config.\n domain:\n type: alicloud:cdn:DomainNew\n properties:\n domainName: mycdndomain-${default.result}.alicloud-provider.cn\n cdnType: web\n scope: overseas\n sources:\n - content: 1.1.1.1\n type: ipaddr\n priority: '20'\n port: 80\n weight: '15'\n config:\n type: alicloud:cdn:DomainConfig\n properties:\n domainName: ${domain.domainName}\n functionName: ip_allow_list_set\n functionArgs:\n - argName: ip_list\n argValue: 110.110.110.110\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCDN domain config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e:\u003cconfig_id\u003e\n```\n\n```sh\n$ pulumi import alicloud:cdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e\n```\n\n",
"properties": {
"configId": {
"type": "string",
@@ -112186,7 +114039,7 @@
}
},
"alicloud:cdn/domainNew:DomainNew": {
- "description": "Provides a CDN Domain resource.\n\nCDN domain name.\n\nFor information about CDN Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-addcdndomain).\n\n\u003e **NOTE:** Available since v1.34.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDomainNew = new alicloud.cdn.DomainNew(\"default\", {\n scope: \"overseas\",\n domainName: `mycdndomain-${_default.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n sources: [{\n type: \"ipaddr\",\n content: \"1.1.1.1\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_domain_new = alicloud.cdn.DomainNew(\"default\",\n scope=\"overseas\",\n domain_name=f\"mycdndomain-{default['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n sources=[{\n \"type\": \"ipaddr\",\n \"content\": \"1.1.1.1\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDomainNew = new AliCloud.Cdn.DomainNew(\"default\", new()\n {\n Scope = \"overseas\",\n DomainName = $\"mycdndomain-{@default.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Type = \"ipaddr\",\n Content = \"1.1.1.1\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewDomainNew(ctx, \"default\", \u0026cdn.DomainNewArgs{\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", _default.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultDomainNew = new DomainNew(\"defaultDomainNew\", DomainNewArgs.builder()\n .scope(\"overseas\")\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", default_.result()))\n .cdnType(\"web\")\n .sources(DomainNewSourceArgs.builder()\n .type(\"ipaddr\")\n .content(\"1.1.1.1\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultDomainNew:\n type: alicloud:cdn:DomainNew\n name: default\n properties:\n scope: overseas\n domainName: mycdndomain-${default.result}.alicloud-provider.cn\n cdnType: web\n sources:\n - type: ipaddr\n content: 1.1.1.1\n priority: 20\n port: 80\n weight: 15\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCDN Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/domainNew:DomainNew example \u003cid\u003e\n```\n\n",
+ "description": "Provides a CDN Domain resource.\n\nCDN domain name.\n\nFor information about CDN Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-addcdndomain).\n\n\u003e **NOTE:** Available since v1.34.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDomainNew = new alicloud.cdn.DomainNew(\"default\", {\n scope: \"overseas\",\n domainName: `mycdndomain-${_default.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n sources: [{\n type: \"ipaddr\",\n content: \"1.1.1.1\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_domain_new = alicloud.cdn.DomainNew(\"default\",\n scope=\"overseas\",\n domain_name=f\"mycdndomain-{default['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n sources=[{\n \"type\": \"ipaddr\",\n \"content\": \"1.1.1.1\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDomainNew = new AliCloud.Cdn.DomainNew(\"default\", new()\n {\n Scope = \"overseas\",\n DomainName = $\"mycdndomain-{@default.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Type = \"ipaddr\",\n Content = \"1.1.1.1\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewDomainNew(ctx, \"default\", \u0026cdn.DomainNewArgs{\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", _default.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultDomainNew = new DomainNew(\"defaultDomainNew\", DomainNewArgs.builder()\n .scope(\"overseas\")\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", default_.result()))\n .cdnType(\"web\")\n .sources(DomainNewSourceArgs.builder()\n .type(\"ipaddr\")\n .content(\"1.1.1.1\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultDomainNew:\n type: alicloud:cdn:DomainNew\n name: default\n properties:\n scope: overseas\n domainName: mycdndomain-${default.result}.alicloud-provider.cn\n cdnType: web\n sources:\n - type: ipaddr\n content: 1.1.1.1\n priority: 20\n port: 80\n weight: 15\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCDN Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/domainNew:DomainNew example \u003cid\u003e\n```\n\n",
"properties": {
"cdnType": {
"type": "string",
@@ -112364,7 +114217,7 @@
}
},
"alicloud:cdn/fcTrigger:FcTrigger": {
- "description": "Provides a CDN Fc Trigger resource.\n\nFor information about CDN Fc Trigger and how to use it, see [What is Fc Trigger](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-addfctrigger).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cdn.FcTrigger(\"example\", {\n eventMetaName: \"LogFileCreated\",\n eventMetaVersion: \"1.0.0\",\n notes: \"example_value\",\n roleArn: _default.then(_default =\u003e `acs:ram::${_default.id}:role/aliyuncdneventnotificationrole`),\n sourceArn: _default.then(_default =\u003e `acs:cdn:*:${_default.id}:domain/example.com`),\n triggerArn: Promise.all([defaultGetRegions, _default]).then(([defaultGetRegions, _default]) =\u003e `acs:fc:${defaultGetRegions.regions?.[0]?.id}:${_default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger`),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\nexample = alicloud.cdn.FcTrigger(\"example\",\n event_meta_name=\"LogFileCreated\",\n event_meta_version=\"1.0.0\",\n notes=\"example_value\",\n role_arn=f\"acs:ram::{default.id}:role/aliyuncdneventnotificationrole\",\n source_arn=f\"acs:cdn:*:{default.id}:domain/example.com\",\n trigger_arn=f\"acs:fc:{default_get_regions.regions[0].id}:{default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cdn.FcTrigger(\"example\", new()\n {\n EventMetaName = \"LogFileCreated\",\n EventMetaVersion = \"1.0.0\",\n Notes = \"example_value\",\n RoleArn = @default.Apply(@default =\u003e $\"acs:ram::{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:role/aliyuncdneventnotificationrole\"),\n SourceArn = @default.Apply(@default =\u003e $\"acs:cdn:*:{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:domain/example.com\"),\n TriggerArn = Output.Tuple(defaultGetRegions, @default).Apply(values =\u003e\n {\n var defaultGetRegions = values.Item1;\n var @default = values.Item2;\n return $\"acs:fc:{defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:services/FCTestService/functions/printEvent/triggers/testtrigger\";\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewFcTrigger(ctx, \"example\", \u0026cdn.FcTriggerArgs{\n\t\t\tEventMetaName: pulumi.String(\"LogFileCreated\"),\n\t\t\tEventMetaVersion: pulumi.String(\"1.0.0\"),\n\t\t\tNotes: pulumi.String(\"example_value\"),\n\t\t\tRoleArn: pulumi.Sprintf(\"acs:ram::%v:role/aliyuncdneventnotificationrole\", _default.Id),\n\t\t\tSourceArn: pulumi.Sprintf(\"acs:cdn:*:%v:domain/example.com\", _default.Id),\n\t\t\tTriggerArn: pulumi.Sprintf(\"acs:fc:%v:%v:services/FCTestService/functions/printEvent/triggers/testtrigger\", defaultGetRegions.Regions[0].Id, _default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cdn.FcTrigger;\nimport com.pulumi.alicloud.cdn.FcTriggerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new FcTrigger(\"example\", FcTriggerArgs.builder()\n .eventMetaName(\"LogFileCreated\")\n .eventMetaVersion(\"1.0.0\")\n .notes(\"example_value\")\n .roleArn(String.format(\"acs:ram::%s:role/aliyuncdneventnotificationrole\", default_.id()))\n .sourceArn(String.format(\"acs:cdn:*:%s:domain/example.com\", default_.id()))\n .triggerArn(String.format(\"acs:fc:%s:%s:services/FCTestService/functions/printEvent/triggers/testtrigger\", defaultGetRegions.regions()[0].id(),default_.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cdn:FcTrigger\n properties:\n eventMetaName: LogFileCreated\n eventMetaVersion: 1.0.0\n notes: example_value\n roleArn: acs:ram::${default.id}:role/aliyuncdneventnotificationrole\n sourceArn: acs:cdn:*:${default.id}:domain/example.com\n triggerArn: acs:fc:${defaultGetRegions.regions[0].id}:${default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCDN Fc Trigger can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/fcTrigger:FcTrigger example \u003ctrigger_arn\u003e\n```\n\n",
+ "description": "Provides a CDN Fc Trigger resource.\n\nFor information about CDN Fc Trigger and how to use it, see [What is Fc Trigger](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-addfctrigger).\n\n\u003e **NOTE:** Available since v1.165.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cdn.FcTrigger(\"example\", {\n eventMetaName: \"LogFileCreated\",\n eventMetaVersion: \"1.0.0\",\n notes: \"example_value\",\n roleArn: _default.then(_default =\u003e `acs:ram::${_default.id}:role/aliyuncdneventnotificationrole`),\n sourceArn: _default.then(_default =\u003e `acs:cdn:*:${_default.id}:domain/example.com`),\n triggerArn: Promise.all([defaultGetRegions, _default]).then(([defaultGetRegions, _default]) =\u003e `acs:fc:${defaultGetRegions.regions?.[0]?.id}:${_default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger`),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\nexample = alicloud.cdn.FcTrigger(\"example\",\n event_meta_name=\"LogFileCreated\",\n event_meta_version=\"1.0.0\",\n notes=\"example_value\",\n role_arn=f\"acs:ram::{default.id}:role/aliyuncdneventnotificationrole\",\n source_arn=f\"acs:cdn:*:{default.id}:domain/example.com\",\n trigger_arn=f\"acs:fc:{default_get_regions.regions[0].id}:{default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cdn.FcTrigger(\"example\", new()\n {\n EventMetaName = \"LogFileCreated\",\n EventMetaVersion = \"1.0.0\",\n Notes = \"example_value\",\n RoleArn = @default.Apply(@default =\u003e $\"acs:ram::{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:role/aliyuncdneventnotificationrole\"),\n SourceArn = @default.Apply(@default =\u003e $\"acs:cdn:*:{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:domain/example.com\"),\n TriggerArn = Output.Tuple(defaultGetRegions, @default).Apply(values =\u003e\n {\n var defaultGetRegions = values.Item1;\n var @default = values.Item2;\n return $\"acs:fc:{defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}:{@default.Apply(getAccountResult =\u003e getAccountResult.Id)}:services/FCTestService/functions/printEvent/triggers/testtrigger\";\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewFcTrigger(ctx, \"example\", \u0026cdn.FcTriggerArgs{\n\t\t\tEventMetaName: pulumi.String(\"LogFileCreated\"),\n\t\t\tEventMetaVersion: pulumi.String(\"1.0.0\"),\n\t\t\tNotes: pulumi.String(\"example_value\"),\n\t\t\tRoleArn: pulumi.Sprintf(\"acs:ram::%v:role/aliyuncdneventnotificationrole\", _default.Id),\n\t\t\tSourceArn: pulumi.Sprintf(\"acs:cdn:*:%v:domain/example.com\", _default.Id),\n\t\t\tTriggerArn: pulumi.Sprintf(\"acs:fc:%v:%v:services/FCTestService/functions/printEvent/triggers/testtrigger\", defaultGetRegions.Regions[0].Id, _default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cdn.FcTrigger;\nimport com.pulumi.alicloud.cdn.FcTriggerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new FcTrigger(\"example\", FcTriggerArgs.builder()\n .eventMetaName(\"LogFileCreated\")\n .eventMetaVersion(\"1.0.0\")\n .notes(\"example_value\")\n .roleArn(String.format(\"acs:ram::%s:role/aliyuncdneventnotificationrole\", default_.id()))\n .sourceArn(String.format(\"acs:cdn:*:%s:domain/example.com\", default_.id()))\n .triggerArn(String.format(\"acs:fc:%s:%s:services/FCTestService/functions/printEvent/triggers/testtrigger\", defaultGetRegions.regions()[0].id(),default_.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cdn:FcTrigger\n properties:\n eventMetaName: LogFileCreated\n eventMetaVersion: 1.0.0\n notes: example_value\n roleArn: acs:ram::${default.id}:role/aliyuncdneventnotificationrole\n sourceArn: acs:cdn:*:${default.id}:domain/example.com\n triggerArn: acs:fc:${defaultGetRegions.regions[0].id}:${default.id}:services/FCTestService/functions/printEvent/triggers/testtrigger\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCDN Fc Trigger can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/fcTrigger:FcTrigger example \u003ctrigger_arn\u003e\n```\n\n",
"properties": {
"eventMetaName": {
"type": "string",
@@ -112483,7 +114336,7 @@
}
},
"alicloud:cdn/realTimeLogDelivery:RealTimeLogDelivery": {
- "description": "Provides a CDN Real Time Log Delivery resource.\n\nAccelerate domain name real-time log push.\n\nFor information about CDN Real Time Log Delivery and how to use it, see [What is Real Time Log Delivery](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-createrealtimelogdelivery).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultDomainNew = new alicloud.cdn.DomainNew(\"default\", {\n scope: \"overseas\",\n domainName: `mycdndomain-${defaultInteger.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n sources: [{\n type: \"ipaddr\",\n content: \"1.1.3.1\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: \"example-store\",\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultRealTimeLogDelivery = new alicloud.cdn.RealTimeLogDelivery(\"default\", {\n domain: defaultDomainNew.domainName,\n logstore: defaultStore.logstoreName,\n project: defaultProject.projectName,\n slsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_domain_new = alicloud.cdn.DomainNew(\"default\",\n scope=\"overseas\",\n domain_name=f\"mycdndomain-{default_integer['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n sources=[{\n \"type\": \"ipaddr\",\n \"content\": \"1.1.3.1\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\ndefault_project = alicloud.log.Project(\"default\",\n project_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=\"example-store\",\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault = alicloud.get_regions(current=True)\ndefault_real_time_log_delivery = alicloud.cdn.RealTimeLogDelivery(\"default\",\n domain=default_domain_new.domain_name,\n logstore=default_store.logstore_name,\n project=default_project.project_name,\n sls_region=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultDomainNew = new AliCloud.Cdn.DomainNew(\"default\", new()\n {\n Scope = \"overseas\",\n DomainName = $\"mycdndomain-{defaultInteger.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Type = \"ipaddr\",\n Content = \"1.1.3.1\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = \"example-store\",\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultRealTimeLogDelivery = new AliCloud.Cdn.RealTimeLogDelivery(\"default\", new()\n {\n Domain = defaultDomainNew.DomainName,\n Logstore = defaultStore.LogstoreName,\n Project = defaultProject.ProjectName,\n SlsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDomainNew, err := cdn.NewDomainNew(ctx, \"default\", \u0026cdn.DomainNewArgs{\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", defaultInteger.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tContent: pulumi.String(\"1.1.3.1\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(\"example-store\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewRealTimeLogDelivery(ctx, \"default\", \u0026cdn.RealTimeLogDeliveryArgs{\n\t\t\tDomain: defaultDomainNew.DomainName,\n\t\t\tLogstore: defaultStore.LogstoreName,\n\t\t\tProject: defaultProject.ProjectName,\n\t\t\tSlsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cdn.RealTimeLogDelivery;\nimport com.pulumi.alicloud.cdn.RealTimeLogDeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultDomainNew = new DomainNew(\"defaultDomainNew\", DomainNewArgs.builder()\n .scope(\"overseas\")\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", defaultInteger.result()))\n .cdnType(\"web\")\n .sources(DomainNewSourceArgs.builder()\n .type(\"ipaddr\")\n .content(\"1.1.3.1\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(\"example-store\")\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultRealTimeLogDelivery = new RealTimeLogDelivery(\"defaultRealTimeLogDelivery\", RealTimeLogDeliveryArgs.builder()\n .domain(defaultDomainNew.domainName())\n .logstore(defaultStore.logstoreName())\n .project(defaultProject.projectName())\n .slsRegion(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultDomainNew:\n type: alicloud:cdn:DomainNew\n name: default\n properties:\n scope: overseas\n domainName: mycdndomain-${defaultInteger.result}.alicloud-provider.cn\n cdnType: web\n sources:\n - type: ipaddr\n content: 1.1.3.1\n priority: 20\n port: 80\n weight: 15\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: example-store\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultRealTimeLogDelivery:\n type: alicloud:cdn:RealTimeLogDelivery\n name: default\n properties:\n domain: ${defaultDomainNew.domainName}\n logstore: ${defaultStore.logstoreName}\n project: ${defaultProject.projectName}\n slsRegion: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCDN Real Time Log Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/realTimeLogDelivery:RealTimeLogDelivery example \u003cid\u003e\n```\n\n",
+ "description": "Provides a CDN Real Time Log Delivery resource.\n\nAccelerate domain name real-time log push.\n\nFor information about CDN Real Time Log Delivery and how to use it, see [What is Real Time Log Delivery](https://www.alibabacloud.com/help/en/cdn/developer-reference/api-cdn-2018-05-10-createrealtimelogdelivery).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultDomainNew = new alicloud.cdn.DomainNew(\"default\", {\n scope: \"overseas\",\n domainName: `mycdndomain-${defaultInteger.result}.alicloud-provider.cn`,\n cdnType: \"web\",\n sources: [{\n type: \"ipaddr\",\n content: \"1.1.3.1\",\n priority: 20,\n port: 80,\n weight: 15,\n }],\n});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: \"example-store\",\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultRealTimeLogDelivery = new alicloud.cdn.RealTimeLogDelivery(\"default\", {\n domain: defaultDomainNew.domainName,\n logstore: defaultStore.logstoreName,\n project: defaultProject.projectName,\n slsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_domain_new = alicloud.cdn.DomainNew(\"default\",\n scope=\"overseas\",\n domain_name=f\"mycdndomain-{default_integer['result']}.alicloud-provider.cn\",\n cdn_type=\"web\",\n sources=[{\n \"type\": \"ipaddr\",\n \"content\": \"1.1.3.1\",\n \"priority\": 20,\n \"port\": 80,\n \"weight\": 15,\n }])\ndefault_project = alicloud.log.Project(\"default\",\n project_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=\"example-store\",\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault = alicloud.get_regions(current=True)\ndefault_real_time_log_delivery = alicloud.cdn.RealTimeLogDelivery(\"default\",\n domain=default_domain_new.domain_name,\n logstore=default_store.logstore_name,\n project=default_project.project_name,\n sls_region=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultDomainNew = new AliCloud.Cdn.DomainNew(\"default\", new()\n {\n Scope = \"overseas\",\n DomainName = $\"mycdndomain-{defaultInteger.Result}.alicloud-provider.cn\",\n CdnType = \"web\",\n Sources = new[]\n {\n new AliCloud.Cdn.Inputs.DomainNewSourceArgs\n {\n Type = \"ipaddr\",\n Content = \"1.1.3.1\",\n Priority = 20,\n Port = 80,\n Weight = 15,\n },\n },\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = \"example-store\",\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultRealTimeLogDelivery = new AliCloud.Cdn.RealTimeLogDelivery(\"default\", new()\n {\n Domain = defaultDomainNew.DomainName,\n Logstore = defaultStore.LogstoreName,\n Project = defaultProject.ProjectName,\n SlsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cdn\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDomainNew, err := cdn.NewDomainNew(ctx, \"default\", \u0026cdn.DomainNewArgs{\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tDomainName: pulumi.Sprintf(\"mycdndomain-%v.alicloud-provider.cn\", defaultInteger.Result),\n\t\t\tCdnType: pulumi.String(\"web\"),\n\t\t\tSources: cdn.DomainNewSourceArray{\n\t\t\t\t\u0026cdn.DomainNewSourceArgs{\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tContent: pulumi.String(\"1.1.3.1\"),\n\t\t\t\t\tPriority: pulumi.Int(20),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.Int(15),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(\"example-store\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewRealTimeLogDelivery(ctx, \"default\", \u0026cdn.RealTimeLogDeliveryArgs{\n\t\t\tDomain: defaultDomainNew.DomainName,\n\t\t\tLogstore: defaultStore.LogstoreName,\n\t\t\tProject: defaultProject.ProjectName,\n\t\t\tSlsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cdn.DomainNew;\nimport com.pulumi.alicloud.cdn.DomainNewArgs;\nimport com.pulumi.alicloud.cdn.inputs.DomainNewSourceArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cdn.RealTimeLogDelivery;\nimport com.pulumi.alicloud.cdn.RealTimeLogDeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultDomainNew = new DomainNew(\"defaultDomainNew\", DomainNewArgs.builder()\n .scope(\"overseas\")\n .domainName(String.format(\"mycdndomain-%s.alicloud-provider.cn\", defaultInteger.result()))\n .cdnType(\"web\")\n .sources(DomainNewSourceArgs.builder()\n .type(\"ipaddr\")\n .content(\"1.1.3.1\")\n .priority(20)\n .port(80)\n .weight(15)\n .build())\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(\"example-store\")\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultRealTimeLogDelivery = new RealTimeLogDelivery(\"defaultRealTimeLogDelivery\", RealTimeLogDeliveryArgs.builder()\n .domain(defaultDomainNew.domainName())\n .logstore(defaultStore.logstoreName())\n .project(defaultProject.projectName())\n .slsRegion(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultDomainNew:\n type: alicloud:cdn:DomainNew\n name: default\n properties:\n scope: overseas\n domainName: mycdndomain-${defaultInteger.result}.alicloud-provider.cn\n cdnType: web\n sources:\n - type: ipaddr\n content: 1.1.3.1\n priority: 20\n port: 80\n weight: 15\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: example-store\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultRealTimeLogDelivery:\n type: alicloud:cdn:RealTimeLogDelivery\n name: default\n properties:\n domain: ${defaultDomainNew.domainName}\n logstore: ${defaultStore.logstoreName}\n project: ${defaultProject.projectName}\n slsRegion: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCDN Real Time Log Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cdn/realTimeLogDelivery:RealTimeLogDelivery example \u003cid\u003e\n```\n\n",
"properties": {
"domain": {
"type": "string",
@@ -112571,7 +114424,7 @@
}
},
"alicloud:cen/bandwidthLimit:BandwidthLimit": {
- "description": "Provides a CEN cross-regional interconnection bandwidth resource. To connect networks in different regions, you must set cross-region interconnection bandwidth after buying a bandwidth package. The total bandwidth set for all the interconnected regions of a bandwidth package cannot exceed the bandwidth of the bandwidth package. By default, 1 Kbps bandwidth is provided for connectivity test. To run normal business, you must buy a bandwidth package and set a proper interconnection bandwidth.\n\nFor example, a CEN instance is bound to a bandwidth package of 20 Mbps and the interconnection areas are Mainland China and North America. You can set the cross-region interconnection bandwidth between US West 1 and China East 1, China East 2, China South 1, and so on. However, the total bandwidth set for all the interconnected regions cannot exceed 20 Mbps.\n\nFor information about CEN and how to use it, see [Cross-region interconnection bandwidth](https://www.alibabacloud.com/help/doc-detail/65983.htm)\n\n\u003e **NOTE:** Available since v1.18.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region1 = config.get(\"region1\") || \"eu-central-1\";\nconst region2 = config.get(\"region2\") || \"ap-southeast-1\";\nconst vpc1 = new alicloud.vpc.Network(\"vpc1\", {\n vpcName: \"tf-example\",\n cidrBlock: \"192.168.0.0/16\",\n});\nconst vpc2 = new alicloud.vpc.Network(\"vpc2\", {\n vpcName: \"tf-example\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst example1 = new alicloud.cen.InstanceAttachment(\"example1\", {\n instanceId: example.id,\n childInstanceId: vpc1.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: region1,\n});\nconst example2 = new alicloud.cen.InstanceAttachment(\"example2\", {\n instanceId: example.id,\n childInstanceId: vpc2.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: region2,\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"Europe\",\n geographicRegionBId: \"Asia-Pacific\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\nconst exampleBandwidthLimit = new alicloud.cen.BandwidthLimit(\"example\", {\n instanceId: exampleBandwidthPackageAttachment.instanceId,\n regionIds: [\n example1.childInstanceRegionId,\n example2.childInstanceRegionId,\n ],\n bandwidthLimit: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion1 = config.get(\"region1\")\nif region1 is None:\n region1 = \"eu-central-1\"\nregion2 = config.get(\"region2\")\nif region2 is None:\n region2 = \"ap-southeast-1\"\nvpc1 = alicloud.vpc.Network(\"vpc1\",\n vpc_name=\"tf-example\",\n cidr_block=\"192.168.0.0/16\")\nvpc2 = alicloud.vpc.Network(\"vpc2\",\n vpc_name=\"tf-example\",\n cidr_block=\"172.16.0.0/12\")\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample1 = alicloud.cen.InstanceAttachment(\"example1\",\n instance_id=example.id,\n child_instance_id=vpc1.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=region1)\nexample2 = alicloud.cen.InstanceAttachment(\"example2\",\n instance_id=example.id,\n child_instance_id=vpc2.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=region2)\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"Europe\",\n geographic_region_b_id=\"Asia-Pacific\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\nexample_bandwidth_limit = alicloud.cen.BandwidthLimit(\"example\",\n instance_id=example_bandwidth_package_attachment.instance_id,\n region_ids=[\n example1.child_instance_region_id,\n example2.child_instance_region_id,\n ],\n bandwidth_limit=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region1 = config.Get(\"region1\") ?? \"eu-central-1\";\n var region2 = config.Get(\"region2\") ?? \"ap-southeast-1\";\n var vpc1 = new AliCloud.Vpc.Network(\"vpc1\", new()\n {\n VpcName = \"tf-example\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var vpc2 = new AliCloud.Vpc.Network(\"vpc2\", new()\n {\n VpcName = \"tf-example\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var example1 = new AliCloud.Cen.InstanceAttachment(\"example1\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = vpc1.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = region1,\n });\n\n var example2 = new AliCloud.Cen.InstanceAttachment(\"example2\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = vpc2.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = region2,\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"Europe\",\n GeographicRegionBId = \"Asia-Pacific\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n var exampleBandwidthLimit = new AliCloud.Cen.BandwidthLimit(\"example\", new()\n {\n InstanceId = exampleBandwidthPackageAttachment.InstanceId,\n RegionIds = new[]\n {\n example1.ChildInstanceRegionId,\n example2.ChildInstanceRegionId,\n },\n Limit = 4,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion1 := \"eu-central-1\"\n\t\tif param := cfg.Get(\"region1\"); param != \"\" {\n\t\t\tregion1 = param\n\t\t}\n\t\tregion2 := \"ap-southeast-1\"\n\t\tif param := cfg.Get(\"region2\"); param != \"\" {\n\t\t\tregion2 = param\n\t\t}\n\t\tvpc1, err := vpc.NewNetwork(ctx, \"vpc1\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf-example\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc2, err := vpc.NewNetwork(ctx, \"vpc2\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample1, err := cen.NewInstanceAttachment(ctx, \"example1\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: vpc1.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(region1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample2, err := cen.NewInstanceAttachment(ctx, \"example2\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: vpc2.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(region2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"Europe\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"Asia-Pacific\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewBandwidthLimit(ctx, \"example\", \u0026cen.BandwidthLimitArgs{\n\t\t\tInstanceId: exampleBandwidthPackageAttachment.InstanceId,\n\t\t\tRegionIds: pulumi.StringArray{\n\t\t\t\texample1.ChildInstanceRegionId,\n\t\t\t\texample2.ChildInstanceRegionId,\n\t\t\t},\n\t\t\tBandwidthLimit: pulumi.Int(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.BandwidthLimit;\nimport com.pulumi.alicloud.cen.BandwidthLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region1 = config.get(\"region1\").orElse(\"eu-central-1\");\n final var region2 = config.get(\"region2\").orElse(\"ap-southeast-1\");\n var vpc1 = new Network(\"vpc1\", NetworkArgs.builder()\n .vpcName(\"tf-example\")\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var vpc2 = new Network(\"vpc2\", NetworkArgs.builder()\n .vpcName(\"tf-example\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var example1 = new InstanceAttachment(\"example1\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(vpc1.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(region1)\n .build());\n\n var example2 = new InstanceAttachment(\"example2\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(vpc2.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(region2)\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"Europe\")\n .geographicRegionBId(\"Asia-Pacific\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n var exampleBandwidthLimit = new BandwidthLimit(\"exampleBandwidthLimit\", BandwidthLimitArgs.builder()\n .instanceId(exampleBandwidthPackageAttachment.instanceId())\n .regionIds( \n example1.childInstanceRegionId(),\n example2.childInstanceRegionId())\n .bandwidthLimit(4)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region1:\n type: string\n default: eu-central-1\n region2:\n type: string\n default: ap-southeast-1\nresources:\n vpc1:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf-example\n cidrBlock: 192.168.0.0/16\n vpc2:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf-example\n cidrBlock: 172.16.0.0/12\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n example1:\n type: alicloud:cen:InstanceAttachment\n properties:\n instanceId: ${example.id}\n childInstanceId: ${vpc1.id}\n childInstanceType: VPC\n childInstanceRegionId: ${region1}\n example2:\n type: alicloud:cen:InstanceAttachment\n properties:\n instanceId: ${example.id}\n childInstanceId: ${vpc2.id}\n childInstanceType: VPC\n childInstanceRegionId: ${region2}\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: Europe\n geographicRegionBId: Asia-Pacific\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n exampleBandwidthLimit:\n type: alicloud:cen:BandwidthLimit\n name: example\n properties:\n instanceId: ${exampleBandwidthPackageAttachment.instanceId}\n regionIds:\n - ${example1.childInstanceRegionId}\n - ${example2.childInstanceRegionId}\n bandwidthLimit: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN bandwidth limit can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/bandwidthLimit:BandwidthLimit example cen-abc123456:cn-beijing:eu-west-1\n```\n\n",
+ "description": "Provides a CEN cross-regional interconnection bandwidth resource. To connect networks in different regions, you must set cross-region interconnection bandwidth after buying a bandwidth package. The total bandwidth set for all the interconnected regions of a bandwidth package cannot exceed the bandwidth of the bandwidth package. By default, 1 Kbps bandwidth is provided for connectivity test. To run normal business, you must buy a bandwidth package and set a proper interconnection bandwidth.\n\nFor example, a CEN instance is bound to a bandwidth package of 20 Mbps and the interconnection areas are Mainland China and North America. You can set the cross-region interconnection bandwidth between US West 1 and China East 1, China East 2, China South 1, and so on. However, the total bandwidth set for all the interconnected regions cannot exceed 20 Mbps.\n\nFor information about CEN and how to use it, see [Cross-region interconnection bandwidth](https://www.alibabacloud.com/help/doc-detail/65983.htm)\n\n\u003e **NOTE:** Available since v1.18.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region1 = config.get(\"region1\") || \"eu-central-1\";\nconst region2 = config.get(\"region2\") || \"ap-southeast-1\";\nconst vpc1 = new alicloud.vpc.Network(\"vpc1\", {\n vpcName: \"tf-example\",\n cidrBlock: \"192.168.0.0/16\",\n});\nconst vpc2 = new alicloud.vpc.Network(\"vpc2\", {\n vpcName: \"tf-example\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst example1 = new alicloud.cen.InstanceAttachment(\"example1\", {\n instanceId: example.id,\n childInstanceId: vpc1.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: region1,\n});\nconst example2 = new alicloud.cen.InstanceAttachment(\"example2\", {\n instanceId: example.id,\n childInstanceId: vpc2.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: region2,\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"Europe\",\n geographicRegionBId: \"Asia-Pacific\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\nconst exampleBandwidthLimit = new alicloud.cen.BandwidthLimit(\"example\", {\n instanceId: exampleBandwidthPackageAttachment.instanceId,\n regionIds: [\n example1.childInstanceRegionId,\n example2.childInstanceRegionId,\n ],\n bandwidthLimit: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion1 = config.get(\"region1\")\nif region1 is None:\n region1 = \"eu-central-1\"\nregion2 = config.get(\"region2\")\nif region2 is None:\n region2 = \"ap-southeast-1\"\nvpc1 = alicloud.vpc.Network(\"vpc1\",\n vpc_name=\"tf-example\",\n cidr_block=\"192.168.0.0/16\")\nvpc2 = alicloud.vpc.Network(\"vpc2\",\n vpc_name=\"tf-example\",\n cidr_block=\"172.16.0.0/12\")\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample1 = alicloud.cen.InstanceAttachment(\"example1\",\n instance_id=example.id,\n child_instance_id=vpc1.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=region1)\nexample2 = alicloud.cen.InstanceAttachment(\"example2\",\n instance_id=example.id,\n child_instance_id=vpc2.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=region2)\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"Europe\",\n geographic_region_b_id=\"Asia-Pacific\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\nexample_bandwidth_limit = alicloud.cen.BandwidthLimit(\"example\",\n instance_id=example_bandwidth_package_attachment.instance_id,\n region_ids=[\n example1.child_instance_region_id,\n example2.child_instance_region_id,\n ],\n bandwidth_limit=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region1 = config.Get(\"region1\") ?? \"eu-central-1\";\n var region2 = config.Get(\"region2\") ?? \"ap-southeast-1\";\n var vpc1 = new AliCloud.Vpc.Network(\"vpc1\", new()\n {\n VpcName = \"tf-example\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var vpc2 = new AliCloud.Vpc.Network(\"vpc2\", new()\n {\n VpcName = \"tf-example\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var example1 = new AliCloud.Cen.InstanceAttachment(\"example1\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = vpc1.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = region1,\n });\n\n var example2 = new AliCloud.Cen.InstanceAttachment(\"example2\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = vpc2.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = region2,\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"Europe\",\n GeographicRegionBId = \"Asia-Pacific\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n var exampleBandwidthLimit = new AliCloud.Cen.BandwidthLimit(\"example\", new()\n {\n InstanceId = exampleBandwidthPackageAttachment.InstanceId,\n RegionIds = new[]\n {\n example1.ChildInstanceRegionId,\n example2.ChildInstanceRegionId,\n },\n Limit = 4,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion1 := \"eu-central-1\"\n\t\tif param := cfg.Get(\"region1\"); param != \"\" {\n\t\t\tregion1 = param\n\t\t}\n\t\tregion2 := \"ap-southeast-1\"\n\t\tif param := cfg.Get(\"region2\"); param != \"\" {\n\t\t\tregion2 = param\n\t\t}\n\t\tvpc1, err := vpc.NewNetwork(ctx, \"vpc1\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf-example\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc2, err := vpc.NewNetwork(ctx, \"vpc2\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample1, err := cen.NewInstanceAttachment(ctx, \"example1\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: vpc1.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(region1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample2, err := cen.NewInstanceAttachment(ctx, \"example2\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: vpc2.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(region2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"Europe\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"Asia-Pacific\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewBandwidthLimit(ctx, \"example\", \u0026cen.BandwidthLimitArgs{\n\t\t\tInstanceId: exampleBandwidthPackageAttachment.InstanceId,\n\t\t\tRegionIds: pulumi.StringArray{\n\t\t\t\texample1.ChildInstanceRegionId,\n\t\t\t\texample2.ChildInstanceRegionId,\n\t\t\t},\n\t\t\tBandwidthLimit: pulumi.Int(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.BandwidthLimit;\nimport com.pulumi.alicloud.cen.BandwidthLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region1 = config.get(\"region1\").orElse(\"eu-central-1\");\n final var region2 = config.get(\"region2\").orElse(\"ap-southeast-1\");\n var vpc1 = new Network(\"vpc1\", NetworkArgs.builder()\n .vpcName(\"tf-example\")\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var vpc2 = new Network(\"vpc2\", NetworkArgs.builder()\n .vpcName(\"tf-example\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var example1 = new InstanceAttachment(\"example1\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(vpc1.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(region1)\n .build());\n\n var example2 = new InstanceAttachment(\"example2\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(vpc2.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(region2)\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"Europe\")\n .geographicRegionBId(\"Asia-Pacific\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n var exampleBandwidthLimit = new BandwidthLimit(\"exampleBandwidthLimit\", BandwidthLimitArgs.builder()\n .instanceId(exampleBandwidthPackageAttachment.instanceId())\n .regionIds( \n example1.childInstanceRegionId(),\n example2.childInstanceRegionId())\n .bandwidthLimit(4)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region1:\n type: string\n default: eu-central-1\n region2:\n type: string\n default: ap-southeast-1\nresources:\n vpc1:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf-example\n cidrBlock: 192.168.0.0/16\n vpc2:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf-example\n cidrBlock: 172.16.0.0/12\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n example1:\n type: alicloud:cen:InstanceAttachment\n properties:\n instanceId: ${example.id}\n childInstanceId: ${vpc1.id}\n childInstanceType: VPC\n childInstanceRegionId: ${region1}\n example2:\n type: alicloud:cen:InstanceAttachment\n properties:\n instanceId: ${example.id}\n childInstanceId: ${vpc2.id}\n childInstanceType: VPC\n childInstanceRegionId: ${region2}\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: Europe\n geographicRegionBId: Asia-Pacific\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n exampleBandwidthLimit:\n type: alicloud:cen:BandwidthLimit\n name: example\n properties:\n instanceId: ${exampleBandwidthPackageAttachment.instanceId}\n regionIds:\n - ${example1.childInstanceRegionId}\n - ${example2.childInstanceRegionId}\n bandwidthLimit: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN bandwidth limit can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/bandwidthLimit:BandwidthLimit example cen-abc123456:cn-beijing:eu-west-1\n```\n\n",
"properties": {
"bandwidthLimit": {
"type": "integer",
@@ -112660,13 +114513,17 @@
"alicloud:cen/bandwidthPackage:BandwidthPackage": {
"description": "\n\n## Import\n\nCEN bandwidth package can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/bandwidthPackage:BandwidthPackage example cenbwp-abc123456\n```\n\n",
"properties": {
+ "autoRenew": {
+ "type": "boolean",
+ "description": "Whether to enable auto-renewal for the bandwidth package. Only applicable when \u003cspan pulumi-lang-nodejs=\"`paymentType`\" pulumi-lang-dotnet=\"`PaymentType`\" pulumi-lang-go=\"`paymentType`\" pulumi-lang-python=\"`payment_type`\" pulumi-lang-yaml=\"`paymentType`\" pulumi-lang-java=\"`paymentType`\"\u003e`payment_type`\u003c/span\u003e is `PrePaid`. Valid values: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Default to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n"
+ },
"bandwidth": {
"type": "integer",
"description": "The bandwidth in Mbps of the bandwidth package. Cannot be less than 2Mbps.\n"
},
"cenBandwidthPackageName": {
"type": "string",
- "description": "The name of the bandwidth package. Defaults to null.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n\n-\u003e**NOTE:** The PostPaid mode is only for test. Please open a ticket if you need.\n"
+ "description": "The name of the bandwidth package. Defaults to null.\n"
},
"chargeType": {
"type": "string",
@@ -112728,13 +114585,17 @@
"status"
],
"inputProperties": {
+ "autoRenew": {
+ "type": "boolean",
+ "description": "Whether to enable auto-renewal for the bandwidth package. Only applicable when \u003cspan pulumi-lang-nodejs=\"`paymentType`\" pulumi-lang-dotnet=\"`PaymentType`\" pulumi-lang-go=\"`paymentType`\" pulumi-lang-python=\"`payment_type`\" pulumi-lang-yaml=\"`paymentType`\" pulumi-lang-java=\"`paymentType`\"\u003e`payment_type`\u003c/span\u003e is `PrePaid`. Valid values: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Default to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n"
+ },
"bandwidth": {
"type": "integer",
"description": "The bandwidth in Mbps of the bandwidth package. Cannot be less than 2Mbps.\n"
},
"cenBandwidthPackageName": {
"type": "string",
- "description": "The name of the bandwidth package. Defaults to null.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n\n-\u003e**NOTE:** The PostPaid mode is only for test. Please open a ticket if you need.\n"
+ "description": "The name of the bandwidth package. Defaults to null.\n"
},
"chargeType": {
"type": "string",
@@ -112786,13 +114647,17 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering BandwidthPackage resources.\n",
"properties": {
+ "autoRenew": {
+ "type": "boolean",
+ "description": "Whether to enable auto-renewal for the bandwidth package. Only applicable when \u003cspan pulumi-lang-nodejs=\"`paymentType`\" pulumi-lang-dotnet=\"`PaymentType`\" pulumi-lang-go=\"`paymentType`\" pulumi-lang-python=\"`payment_type`\" pulumi-lang-yaml=\"`paymentType`\" pulumi-lang-java=\"`paymentType`\"\u003e`payment_type`\u003c/span\u003e is `PrePaid`. Valid values: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Default to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n"
+ },
"bandwidth": {
"type": "integer",
"description": "The bandwidth in Mbps of the bandwidth package. Cannot be less than 2Mbps.\n"
},
"cenBandwidthPackageName": {
"type": "string",
- "description": "The name of the bandwidth package. Defaults to null.\n\n-\u003e**NOTE:** PrePaid mode will deduct fees from the account directly and the bandwidth package can't be deleted before expired time.\n\n-\u003e**NOTE:** The PostPaid mode is only for test. Please open a ticket if you need.\n"
+ "description": "The name of the bandwidth package. Defaults to null.\n"
},
"chargeType": {
"type": "string",
@@ -112850,7 +114715,7 @@
}
},
"alicloud:cen/bandwidthPackageAttachment:BandwidthPackageAttachment": {
- "description": "Provides a CEN bandwidth package attachment resource. The resource can be used to bind a bandwidth package to a specified CEN instance.\n\n\u003e **NOTE:** Available since v1.18.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN bandwidth package attachment resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/bandwidthPackageAttachment:BandwidthPackageAttachment example bwp-abc123456\n```\n\n",
+ "description": "Provides a CEN bandwidth package attachment resource. The resource can be used to bind a bandwidth package to a specified CEN instance.\n\n\u003e **NOTE:** Available since v1.18.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN bandwidth package attachment resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/bandwidthPackageAttachment:BandwidthPackageAttachment example bwp-abc123456\n```\n\n",
"properties": {
"bandwidthPackageId": {
"type": "string",
@@ -112899,7 +114764,7 @@
}
},
"alicloud:cen/childInstanceRouteEntryToAttachment:ChildInstanceRouteEntryToAttachment": {
- "description": "Provides a Cen Child Instance Route Entry To Attachment resource.\n\nFor information about Cen Child Instance Route Entry To Attachment and how to use it, see [What is Child Instance Route Entry To Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createcenchildinstancerouteentrytoattachment).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleRouteTable = new alicloud.vpc.RouteTable(\"example\", {\n vpcId: example.id,\n routeTableName: name,\n description: name,\n});\nconst exampleChildInstanceRouteEntryToAttachment = new alicloud.cen.ChildInstanceRouteEntryToAttachment(\"example\", {\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n cenId: exampleInstance.id,\n destinationCidrBlock: \"10.0.0.0/24\",\n childInstanceRouteTableId: exampleRouteTable.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_route_table = alicloud.vpc.RouteTable(\"example\",\n vpc_id=example.id,\n route_table_name=name,\n description=name)\nexample_child_instance_route_entry_to_attachment = alicloud.cen.ChildInstanceRouteEntryToAttachment(\"example\",\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n cen_id=example_instance.id,\n destination_cidr_block=\"10.0.0.0/24\",\n child_instance_route_table_id=example_route_table.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleRouteTable = new AliCloud.Vpc.RouteTable(\"example\", new()\n {\n VpcId = example.Id,\n RouteTableName = name,\n Description = name,\n });\n\n var exampleChildInstanceRouteEntryToAttachment = new AliCloud.Cen.ChildInstanceRouteEntryToAttachment(\"example\", new()\n {\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n CenId = exampleInstance.Id,\n DestinationCidrBlock = \"10.0.0.0/24\",\n ChildInstanceRouteTableId = exampleRouteTable.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRouteTable, err := vpc.NewRouteTable(ctx, \"example\", \u0026vpc.RouteTableArgs{\n\t\t\tVpcId: example.ID(),\n\t\t\tRouteTableName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewChildInstanceRouteEntryToAttachment(ctx, \"example\", \u0026cen.ChildInstanceRouteEntryToAttachmentArgs{\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tDestinationCidrBlock: pulumi.String(\"10.0.0.0/24\"),\n\t\t\tChildInstanceRouteTableId: exampleRouteTable.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.vpc.RouteTable;\nimport com.pulumi.alicloud.vpc.RouteTableArgs;\nimport com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachment;\nimport com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleRouteTable = new RouteTable(\"exampleRouteTable\", RouteTableArgs.builder()\n .vpcId(example.id())\n .routeTableName(name)\n .description(name)\n .build());\n\n var exampleChildInstanceRouteEntryToAttachment = new ChildInstanceRouteEntryToAttachment(\"exampleChildInstanceRouteEntryToAttachment\", ChildInstanceRouteEntryToAttachmentArgs.builder()\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .cenId(exampleInstance.id())\n .destinationCidrBlock(\"10.0.0.0/24\")\n .childInstanceRouteTableId(exampleRouteTable.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleRouteTable:\n type: alicloud:vpc:RouteTable\n name: example\n properties:\n vpcId: ${example.id}\n routeTableName: ${name}\n description: ${name}\n exampleChildInstanceRouteEntryToAttachment:\n type: alicloud:cen:ChildInstanceRouteEntryToAttachment\n name: example\n properties:\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n cenId: ${exampleInstance.id}\n destinationCidrBlock: 10.0.0.0/24\n childInstanceRouteTableId: ${exampleRouteTable.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCen Child Instance Route Entry To Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/childInstanceRouteEntryToAttachment:ChildInstanceRouteEntryToAttachment example \u003ccen_id\u003e:\u003cchild_instance_route_table_id\u003e:\u003ctransit_router_attachment_id\u003e:\u003cdestination_cidr_block\u003e\n```\n\n",
+ "description": "Provides a Cen Child Instance Route Entry To Attachment resource.\n\nFor information about Cen Child Instance Route Entry To Attachment and how to use it, see [What is Child Instance Route Entry To Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createcenchildinstancerouteentrytoattachment).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleRouteTable = new alicloud.vpc.RouteTable(\"example\", {\n vpcId: example.id,\n routeTableName: name,\n description: name,\n});\nconst exampleChildInstanceRouteEntryToAttachment = new alicloud.cen.ChildInstanceRouteEntryToAttachment(\"example\", {\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n cenId: exampleInstance.id,\n destinationCidrBlock: \"10.0.0.0/24\",\n childInstanceRouteTableId: exampleRouteTable.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_route_table = alicloud.vpc.RouteTable(\"example\",\n vpc_id=example.id,\n route_table_name=name,\n description=name)\nexample_child_instance_route_entry_to_attachment = alicloud.cen.ChildInstanceRouteEntryToAttachment(\"example\",\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n cen_id=example_instance.id,\n destination_cidr_block=\"10.0.0.0/24\",\n child_instance_route_table_id=example_route_table.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleRouteTable = new AliCloud.Vpc.RouteTable(\"example\", new()\n {\n VpcId = example.Id,\n RouteTableName = name,\n Description = name,\n });\n\n var exampleChildInstanceRouteEntryToAttachment = new AliCloud.Cen.ChildInstanceRouteEntryToAttachment(\"example\", new()\n {\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n CenId = exampleInstance.Id,\n DestinationCidrBlock = \"10.0.0.0/24\",\n ChildInstanceRouteTableId = exampleRouteTable.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRouteTable, err := vpc.NewRouteTable(ctx, \"example\", \u0026vpc.RouteTableArgs{\n\t\t\tVpcId: example.ID(),\n\t\t\tRouteTableName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewChildInstanceRouteEntryToAttachment(ctx, \"example\", \u0026cen.ChildInstanceRouteEntryToAttachmentArgs{\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tDestinationCidrBlock: pulumi.String(\"10.0.0.0/24\"),\n\t\t\tChildInstanceRouteTableId: exampleRouteTable.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.vpc.RouteTable;\nimport com.pulumi.alicloud.vpc.RouteTableArgs;\nimport com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachment;\nimport com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleRouteTable = new RouteTable(\"exampleRouteTable\", RouteTableArgs.builder()\n .vpcId(example.id())\n .routeTableName(name)\n .description(name)\n .build());\n\n var exampleChildInstanceRouteEntryToAttachment = new ChildInstanceRouteEntryToAttachment(\"exampleChildInstanceRouteEntryToAttachment\", ChildInstanceRouteEntryToAttachmentArgs.builder()\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .cenId(exampleInstance.id())\n .destinationCidrBlock(\"10.0.0.0/24\")\n .childInstanceRouteTableId(exampleRouteTable.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleRouteTable:\n type: alicloud:vpc:RouteTable\n name: example\n properties:\n vpcId: ${example.id}\n routeTableName: ${name}\n description: ${name}\n exampleChildInstanceRouteEntryToAttachment:\n type: alicloud:cen:ChildInstanceRouteEntryToAttachment\n name: example\n properties:\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n cenId: ${exampleInstance.id}\n destinationCidrBlock: 10.0.0.0/24\n childInstanceRouteTableId: ${exampleRouteTable.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCen Child Instance Route Entry To Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/childInstanceRouteEntryToAttachment:ChildInstanceRouteEntryToAttachment example \u003ccen_id\u003e:\u003cchild_instance_route_table_id\u003e:\u003ctransit_router_attachment_id\u003e:\u003cdestination_cidr_block\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -113010,7 +114875,7 @@
}
},
"alicloud:cen/flowLog:FlowLog": {
- "description": "Provides a CEN Flow Log resource.\n\n\n\nFor information about CEN Flow Log and how to use it, see [What is Flow Log](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createflowlog).\n\n\u003e **NOTE:** Available since v1.73.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\nconst _default = new alicloud.cen.Instance(\"default\", {name: \"my-cen\"});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n name: \"sls-for-flowlog\",\n description: \"create by terraform\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n project: defaultProject.name,\n name: \"sls-for-flowlog\",\n retentionPeriod: 3650,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultFlowLog = new alicloud.cen.FlowLog(\"default\", {\n flowLogName: \"my-flowlog\",\n cenId: _default.id,\n projectName: defaultProject.name,\n logStoreName: defaultStore.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\ndefault = alicloud.cen.Instance(\"default\", name=\"my-cen\")\ndefault_project = alicloud.log.Project(\"default\",\n name=\"sls-for-flowlog\",\n description=\"create by terraform\")\ndefault_store = alicloud.log.Store(\"default\",\n project=default_project.name,\n name=\"sls-for-flowlog\",\n retention_period=3650,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_flow_log = alicloud.cen.FlowLog(\"default\",\n flow_log_name=\"my-flowlog\",\n cen_id=default.id,\n project_name=default_project.name,\n log_store_name=default_store.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n Name = \"my-cen\",\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n Name = \"sls-for-flowlog\",\n Description = \"create by terraform\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n Project = defaultProject.Name,\n Name = \"sls-for-flowlog\",\n RetentionPeriod = 3650,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultFlowLog = new AliCloud.Cen.FlowLog(\"default\", new()\n {\n FlowLogName = \"my-flowlog\",\n CenId = @default.Id,\n ProjectName = defaultProject.Name,\n LogStoreName = defaultStore.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tName: pulumi.String(\"my-cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tName: pulumi.String(\"sls-for-flowlog\"),\n\t\t\tDescription: pulumi.String(\"create by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProject: defaultProject.Name,\n\t\t\tName: pulumi.String(\"sls-for-flowlog\"),\n\t\t\tRetentionPeriod: pulumi.Int(3650),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewFlowLog(ctx, \"default\", \u0026cen.FlowLogArgs{\n\t\t\tFlowLogName: pulumi.String(\"my-flowlog\"),\n\t\t\tCenId: _default.ID(),\n\t\t\tProjectName: defaultProject.Name,\n\t\t\tLogStoreName: defaultStore.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cen.FlowLog;\nimport com.pulumi.alicloud.cen.FlowLogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .name(\"my-cen\")\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .name(\"sls-for-flowlog\")\n .description(\"create by terraform\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .project(defaultProject.name())\n .name(\"sls-for-flowlog\")\n .retentionPeriod(3650)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultFlowLog = new FlowLog(\"defaultFlowLog\", FlowLogArgs.builder()\n .flowLogName(\"my-flowlog\")\n .cenId(default_.id())\n .projectName(defaultProject.name())\n .logStoreName(defaultStore.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n default:\n type: alicloud:cen:Instance\n properties:\n name: my-cen\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n name: sls-for-flowlog\n description: create by terraform\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n project: ${defaultProject.name}\n name: sls-for-flowlog\n retentionPeriod: 3650\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultFlowLog:\n type: alicloud:cen:FlowLog\n name: default\n properties:\n flowLogName: my-flowlog\n cenId: ${default.id}\n projectName: ${defaultProject.name}\n logStoreName: ${defaultStore.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN Flow Log can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/flowLog:FlowLog example \u003cid\u003e\n```\n\n",
+ "description": "Provides a CEN Flow Log resource.\n\n\n\nFor information about CEN Flow Log and how to use it, see [What is Flow Log](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createflowlog).\n\n\u003e **NOTE:** Available since v1.73.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\nconst _default = new alicloud.cen.Instance(\"default\", {name: \"my-cen\"});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n name: \"sls-for-flowlog\",\n description: \"create by terraform\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n project: defaultProject.name,\n name: \"sls-for-flowlog\",\n retentionPeriod: 3650,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultFlowLog = new alicloud.cen.FlowLog(\"default\", {\n flowLogName: \"my-flowlog\",\n cenId: _default.id,\n projectName: defaultProject.name,\n logStoreName: defaultStore.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\ndefault = alicloud.cen.Instance(\"default\", name=\"my-cen\")\ndefault_project = alicloud.log.Project(\"default\",\n name=\"sls-for-flowlog\",\n description=\"create by terraform\")\ndefault_store = alicloud.log.Store(\"default\",\n project=default_project.name,\n name=\"sls-for-flowlog\",\n retention_period=3650,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_flow_log = alicloud.cen.FlowLog(\"default\",\n flow_log_name=\"my-flowlog\",\n cen_id=default.id,\n project_name=default_project.name,\n log_store_name=default_store.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n Name = \"my-cen\",\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n Name = \"sls-for-flowlog\",\n Description = \"create by terraform\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n Project = defaultProject.Name,\n Name = \"sls-for-flowlog\",\n RetentionPeriod = 3650,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultFlowLog = new AliCloud.Cen.FlowLog(\"default\", new()\n {\n FlowLogName = \"my-flowlog\",\n CenId = @default.Id,\n ProjectName = defaultProject.Name,\n LogStoreName = defaultStore.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tName: pulumi.String(\"my-cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tName: pulumi.String(\"sls-for-flowlog\"),\n\t\t\tDescription: pulumi.String(\"create by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProject: defaultProject.Name,\n\t\t\tName: pulumi.String(\"sls-for-flowlog\"),\n\t\t\tRetentionPeriod: pulumi.Int(3650),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewFlowLog(ctx, \"default\", \u0026cen.FlowLogArgs{\n\t\t\tFlowLogName: pulumi.String(\"my-flowlog\"),\n\t\t\tCenId: _default.ID(),\n\t\t\tProjectName: defaultProject.Name,\n\t\t\tLogStoreName: defaultStore.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cen.FlowLog;\nimport com.pulumi.alicloud.cen.FlowLogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .name(\"my-cen\")\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .name(\"sls-for-flowlog\")\n .description(\"create by terraform\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .project(defaultProject.name())\n .name(\"sls-for-flowlog\")\n .retentionPeriod(3650)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultFlowLog = new FlowLog(\"defaultFlowLog\", FlowLogArgs.builder()\n .flowLogName(\"my-flowlog\")\n .cenId(default_.id())\n .projectName(defaultProject.name())\n .logStoreName(defaultStore.name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a cen flowlog resource and use it to publish a route entry pointing to an ECS.\n default:\n type: alicloud:cen:Instance\n properties:\n name: my-cen\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n name: sls-for-flowlog\n description: create by terraform\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n project: ${defaultProject.name}\n name: sls-for-flowlog\n retentionPeriod: 3650\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultFlowLog:\n type: alicloud:cen:FlowLog\n name: default\n properties:\n flowLogName: my-flowlog\n cenId: ${default.id}\n projectName: ${defaultProject.name}\n logStoreName: ${defaultStore.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN Flow Log can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/flowLog:FlowLog example \u003cid\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -113205,7 +115070,7 @@
}
},
"alicloud:cen/instance:Instance": {
- "description": "Provides a Cloud Enterprise Network (CEN) Cen Instance resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Cen Instance and how to use it, see [What is Cen Instance](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createcen).\n\n\u003e **NOTE:** Available since v1.15.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Cen Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Cen Instance resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Cen Instance and how to use it, see [What is Cen Instance](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createcen).\n\n\u003e **NOTE:** Available since v1.15.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Cen Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"cenInstanceName": {
"type": "string",
@@ -113326,7 +115191,7 @@
}
},
"alicloud:cen/instanceAttachment:InstanceAttachment": {
- "description": "Provides a CEN child instance attachment resource that associate the network(VPC, CCN, VBR) with the CEN instance.\n\n\u003e **NOTE:** Available since v1.42.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instanceAttachment:InstanceAttachment example cen-m7i7pjmkon********:vpc-2ze2w07mcy9nz********:VPC:cn-beijing\n```\n\n",
+ "description": "Provides a CEN child instance attachment resource that associate the network(VPC, CCN, VBR) with the CEN instance.\n\n\u003e **NOTE:** Available since v1.42.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instanceAttachment:InstanceAttachment example cen-m7i7pjmkon********:vpc-2ze2w07mcy9nz********:VPC:cn-beijing\n```\n\n",
"properties": {
"cenOwnerId": {
"type": "integer",
@@ -113441,7 +115306,7 @@
}
},
"alicloud:cen/instanceGrant:InstanceGrant": {
- "description": "Provides a CEN child instance grant resource, which allow you to authorize a VPC or VBR to a CEN of a different account.\n\nFor more information about how to use it, see [Attach a network in a different account](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-attachcenchildinstance). \n\n\u003e **NOTE:** Deprecated since v1.241.0. The resource have been deprecated and new resource type\u003cspan pulumi-lang-nodejs=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-dotnet=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-go=\" cen.TransitRouterGrantAttachment \" pulumi-lang-python=\" cen.TransitRouterGrantAttachment \" pulumi-lang-yaml=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-java=\" alicloud.cen.TransitRouterGrantAttachment \"\u003e alicloud.cen.TransitRouterGrantAttachment \u003c/span\u003eis recommended.\n\n\u003e **NOTE:** Available since v1.37.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst anotherUid = config.get(\"anotherUid\") || \"xxxx\";\nconst yourAccount = alicloud.getAccount({});\nconst childAccount = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst childAccountNetwork = new alicloud.vpc.Network(\"child_account\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst childAccountInstanceGrant = new alicloud.cen.InstanceGrant(\"child_account\", {\n cenId: example.id,\n childInstanceId: childAccountNetwork.id,\n cenOwnerId: yourAccount.then(yourAccount =\u003e yourAccount.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nanother_uid = config.get(\"anotherUid\")\nif another_uid is None:\n another_uid = \"xxxx\"\nyour_account = alicloud.get_account()\nchild_account = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nchild_account_network = alicloud.vpc.Network(\"child_account\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nchild_account_instance_grant = alicloud.cen.InstanceGrant(\"child_account\",\n cen_id=example.id,\n child_instance_id=child_account_network.id,\n cen_owner_id=your_account.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var anotherUid = config.Get(\"anotherUid\") ?? \"xxxx\";\n var yourAccount = AliCloud.GetAccount.Invoke();\n\n var childAccount = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var childAccountNetwork = new AliCloud.Vpc.Network(\"child_account\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var childAccountInstanceGrant = new AliCloud.Cen.InstanceGrant(\"child_account\", new()\n {\n CenId = example.Id,\n ChildInstanceId = childAccountNetwork.Id,\n CenOwnerId = yourAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tanotherUid := \"xxxx\"\n\t\tif param := cfg.Get(\"anotherUid\"); param != \"\" {\n\t\t\tanotherUid = param\n\t\t}\n\t\tyourAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tchildAccountNetwork, err := vpc.NewNetwork(ctx, \"child_account\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInstanceGrant(ctx, \"child_account\", \u0026cen.InstanceGrantArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tChildInstanceId: childAccountNetwork.ID(),\n\t\t\tCenOwnerId: pulumi.String(yourAccount.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.InstanceGrant;\nimport com.pulumi.alicloud.cen.InstanceGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var anotherUid = config.get(\"anotherUid\").orElse(\"xxxx\");\n final var yourAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var childAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var childAccountNetwork = new Network(\"childAccountNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var childAccountInstanceGrant = new InstanceGrant(\"childAccountInstanceGrant\", InstanceGrantArgs.builder()\n .cenId(example.id())\n .childInstanceId(childAccountNetwork.id())\n .cenOwnerId(yourAccount.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n anotherUid:\n type: string\n default: xxxx\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n childAccountNetwork:\n type: alicloud:vpc:Network\n name: child_account\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n childAccountInstanceGrant:\n type: alicloud:cen:InstanceGrant\n name: child_account\n properties:\n cenId: ${example.id}\n childInstanceId: ${childAccountNetwork.id}\n cenOwnerId: ${yourAccount.id}\nvariables:\n yourAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n childAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instanceGrant:InstanceGrant example cen-abc123456:vpc-abc123456:uid123456\n```\n\n",
+ "description": "Provides a CEN child instance grant resource, which allow you to authorize a VPC or VBR to a CEN of a different account.\n\nFor more information about how to use it, see [Attach a network in a different account](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-attachcenchildinstance). \n\n\u003e **NOTE:** Deprecated since v1.241.0. The resource have been deprecated and new resource type\u003cspan pulumi-lang-nodejs=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-dotnet=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-go=\" cen.TransitRouterGrantAttachment \" pulumi-lang-python=\" cen.TransitRouterGrantAttachment \" pulumi-lang-yaml=\" alicloud.cen.TransitRouterGrantAttachment \" pulumi-lang-java=\" alicloud.cen.TransitRouterGrantAttachment \"\u003e alicloud.cen.TransitRouterGrantAttachment \u003c/span\u003eis recommended.\n\n\u003e **NOTE:** Available since v1.37.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst anotherUid = config.get(\"anotherUid\") || \"xxxx\";\nconst yourAccount = alicloud.getAccount({});\nconst childAccount = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst childAccountNetwork = new alicloud.vpc.Network(\"child_account\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst childAccountInstanceGrant = new alicloud.cen.InstanceGrant(\"child_account\", {\n cenId: example.id,\n childInstanceId: childAccountNetwork.id,\n cenOwnerId: yourAccount.then(yourAccount =\u003e yourAccount.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nanother_uid = config.get(\"anotherUid\")\nif another_uid is None:\n another_uid = \"xxxx\"\nyour_account = alicloud.get_account()\nchild_account = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nchild_account_network = alicloud.vpc.Network(\"child_account\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nchild_account_instance_grant = alicloud.cen.InstanceGrant(\"child_account\",\n cen_id=example.id,\n child_instance_id=child_account_network.id,\n cen_owner_id=your_account.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var anotherUid = config.Get(\"anotherUid\") ?? \"xxxx\";\n var yourAccount = AliCloud.GetAccount.Invoke();\n\n var childAccount = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var childAccountNetwork = new AliCloud.Vpc.Network(\"child_account\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var childAccountInstanceGrant = new AliCloud.Cen.InstanceGrant(\"child_account\", new()\n {\n CenId = example.Id,\n ChildInstanceId = childAccountNetwork.Id,\n CenOwnerId = yourAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tanotherUid := \"xxxx\"\n\t\tif param := cfg.Get(\"anotherUid\"); param != \"\" {\n\t\t\tanotherUid = param\n\t\t}\n\t\tyourAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tchildAccountNetwork, err := vpc.NewNetwork(ctx, \"child_account\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInstanceGrant(ctx, \"child_account\", \u0026cen.InstanceGrantArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tChildInstanceId: childAccountNetwork.ID(),\n\t\t\tCenOwnerId: pulumi.String(yourAccount.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.InstanceGrant;\nimport com.pulumi.alicloud.cen.InstanceGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var anotherUid = config.get(\"anotherUid\").orElse(\"xxxx\");\n final var yourAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var childAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var childAccountNetwork = new Network(\"childAccountNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var childAccountInstanceGrant = new InstanceGrant(\"childAccountInstanceGrant\", InstanceGrantArgs.builder()\n .cenId(example.id())\n .childInstanceId(childAccountNetwork.id())\n .cenOwnerId(yourAccount.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n anotherUid:\n type: string\n default: xxxx\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n childAccountNetwork:\n type: alicloud:vpc:Network\n name: child_account\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n childAccountInstanceGrant:\n type: alicloud:cen:InstanceGrant\n name: child_account\n properties:\n cenId: ${example.id}\n childInstanceId: ${childAccountNetwork.id}\n cenOwnerId: ${yourAccount.id}\nvariables:\n yourAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n childAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/instanceGrant:InstanceGrant example cen-abc123456:vpc-abc123456:uid123456\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -113506,7 +115371,7 @@
}
},
"alicloud:cen/interRegionTrafficQosPolicy:InterRegionTrafficQosPolicy": {
- "description": "Provides a Cloud Enterprise Network (CEN) Inter Region Traffic Qos Policy resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Inter Region Traffic Qos Policy and how to use it, see [What is Inter Region Traffic Qos Policy](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateCenInterRegionTrafficQosPolicy).\n\n\u003e **NOTE:** Available since v1.246.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultpSZB78 = new alicloud.cen.Instance(\"defaultpSZB78\", {});\nconst defaultUmmxnE = new alicloud.cen.TransitRouter(\"defaultUmmxnE\", {cenId: defaultpSZB78.id});\nconst defaultksqgSa = new alicloud.cen.TransitRouter(\"defaultksqgSa\", {cenId: defaultpSZB78.id});\nconst defaultnXZ83y = new alicloud.cen.TransitRouterPeerAttachment(\"defaultnXZ83y\", {\n defaultLinkType: \"Platinum\",\n bandwidthType: \"DataTransfer\",\n cenId: defaultpSZB78.id,\n peerTransitRouterRegionId: \"cn-hangzhou\",\n transitRouterId: defaultUmmxnE.transitRouterId,\n peerTransitRouterId: defaultksqgSa.transitRouterId,\n bandwidth: 10,\n});\nconst _default = new alicloud.cen.InterRegionTrafficQosPolicy(\"default\", {\n transitRouterAttachmentId: defaultnXZ83y.transitRouterAttachmentId,\n interRegionTrafficQosPolicyName: \"example1\",\n interRegionTrafficQosPolicyDescription: \"example1\",\n bandwidthGuaranteeMode: \"byBandwidthPercent\",\n transitRouterId: defaultksqgSa.transitRouterId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultp_szb78 = alicloud.cen.Instance(\"defaultpSZB78\")\ndefault_ummxn_e = alicloud.cen.TransitRouter(\"defaultUmmxnE\", cen_id=defaultp_szb78.id)\ndefaultksqg_sa = alicloud.cen.TransitRouter(\"defaultksqgSa\", cen_id=defaultp_szb78.id)\ndefaultn_xz83y = alicloud.cen.TransitRouterPeerAttachment(\"defaultnXZ83y\",\n default_link_type=\"Platinum\",\n bandwidth_type=\"DataTransfer\",\n cen_id=defaultp_szb78.id,\n peer_transit_router_region_id=\"cn-hangzhou\",\n transit_router_id=default_ummxn_e.transit_router_id,\n peer_transit_router_id=defaultksqg_sa.transit_router_id,\n bandwidth=10)\ndefault = alicloud.cen.InterRegionTrafficQosPolicy(\"default\",\n transit_router_attachment_id=defaultn_xz83y.transit_router_attachment_id,\n inter_region_traffic_qos_policy_name=\"example1\",\n inter_region_traffic_qos_policy_description=\"example1\",\n bandwidth_guarantee_mode=\"byBandwidthPercent\",\n transit_router_id=defaultksqg_sa.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultpSZB78 = new AliCloud.Cen.Instance(\"defaultpSZB78\");\n\n var defaultUmmxnE = new AliCloud.Cen.TransitRouter(\"defaultUmmxnE\", new()\n {\n CenId = defaultpSZB78.Id,\n });\n\n var defaultksqgSa = new AliCloud.Cen.TransitRouter(\"defaultksqgSa\", new()\n {\n CenId = defaultpSZB78.Id,\n });\n\n var defaultnXZ83y = new AliCloud.Cen.TransitRouterPeerAttachment(\"defaultnXZ83y\", new()\n {\n DefaultLinkType = \"Platinum\",\n BandwidthType = \"DataTransfer\",\n CenId = defaultpSZB78.Id,\n PeerTransitRouterRegionId = \"cn-hangzhou\",\n TransitRouterId = defaultUmmxnE.TransitRouterId,\n PeerTransitRouterId = defaultksqgSa.TransitRouterId,\n Bandwidth = 10,\n });\n\n var @default = new AliCloud.Cen.InterRegionTrafficQosPolicy(\"default\", new()\n {\n TransitRouterAttachmentId = defaultnXZ83y.TransitRouterAttachmentId,\n InterRegionTrafficQosPolicyName = \"example1\",\n InterRegionTrafficQosPolicyDescription = \"example1\",\n BandwidthGuaranteeMode = \"byBandwidthPercent\",\n TransitRouterId = defaultksqgSa.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultpSZB78, err := cen.NewInstance(ctx, \"defaultpSZB78\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUmmxnE, err := cen.NewTransitRouter(ctx, \"defaultUmmxnE\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultksqgSa, err := cen.NewTransitRouter(ctx, \"defaultksqgSa\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultnXZ83y, err := cen.NewTransitRouterPeerAttachment(ctx, \"defaultnXZ83y\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tDefaultLinkType: pulumi.String(\"Platinum\"),\n\t\t\tBandwidthType: pulumi.String(\"DataTransfer\"),\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t\tPeerTransitRouterRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tTransitRouterId: defaultUmmxnE.TransitRouterId,\n\t\t\tPeerTransitRouterId: defaultksqgSa.TransitRouterId,\n\t\t\tBandwidth: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInterRegionTrafficQosPolicy(ctx, \"default\", \u0026cen.InterRegionTrafficQosPolicyArgs{\n\t\t\tTransitRouterAttachmentId: defaultnXZ83y.TransitRouterAttachmentId,\n\t\t\tInterRegionTrafficQosPolicyName: pulumi.String(\"example1\"),\n\t\t\tInterRegionTrafficQosPolicyDescription: pulumi.String(\"example1\"),\n\t\t\tBandwidthGuaranteeMode: pulumi.String(\"byBandwidthPercent\"),\n\t\t\tTransitRouterId: defaultksqgSa.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicy;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultpSZB78 = new Instance(\"defaultpSZB78\");\n\n var defaultUmmxnE = new TransitRouter(\"defaultUmmxnE\", TransitRouterArgs.builder()\n .cenId(defaultpSZB78.id())\n .build());\n\n var defaultksqgSa = new TransitRouter(\"defaultksqgSa\", TransitRouterArgs.builder()\n .cenId(defaultpSZB78.id())\n .build());\n\n var defaultnXZ83y = new TransitRouterPeerAttachment(\"defaultnXZ83y\", TransitRouterPeerAttachmentArgs.builder()\n .defaultLinkType(\"Platinum\")\n .bandwidthType(\"DataTransfer\")\n .cenId(defaultpSZB78.id())\n .peerTransitRouterRegionId(\"cn-hangzhou\")\n .transitRouterId(defaultUmmxnE.transitRouterId())\n .peerTransitRouterId(defaultksqgSa.transitRouterId())\n .bandwidth(10)\n .build());\n\n var default_ = new InterRegionTrafficQosPolicy(\"default\", InterRegionTrafficQosPolicyArgs.builder()\n .transitRouterAttachmentId(defaultnXZ83y.transitRouterAttachmentId())\n .interRegionTrafficQosPolicyName(\"example1\")\n .interRegionTrafficQosPolicyDescription(\"example1\")\n .bandwidthGuaranteeMode(\"byBandwidthPercent\")\n .transitRouterId(defaultksqgSa.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultpSZB78:\n type: alicloud:cen:Instance\n defaultUmmxnE:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultpSZB78.id}\n defaultksqgSa:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultpSZB78.id}\n defaultnXZ83y:\n type: alicloud:cen:TransitRouterPeerAttachment\n properties:\n defaultLinkType: Platinum\n bandwidthType: DataTransfer\n cenId: ${defaultpSZB78.id}\n peerTransitRouterRegionId: cn-hangzhou\n transitRouterId: ${defaultUmmxnE.transitRouterId}\n peerTransitRouterId: ${defaultksqgSa.transitRouterId}\n bandwidth: '10'\n default:\n type: alicloud:cen:InterRegionTrafficQosPolicy\n properties:\n transitRouterAttachmentId: ${defaultnXZ83y.transitRouterAttachmentId}\n interRegionTrafficQosPolicyName: example1\n interRegionTrafficQosPolicyDescription: example1\n bandwidthGuaranteeMode: byBandwidthPercent\n transitRouterId: ${defaultksqgSa.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Inter Region Traffic Qos Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/interRegionTrafficQosPolicy:InterRegionTrafficQosPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Inter Region Traffic Qos Policy resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Inter Region Traffic Qos Policy and how to use it, see [What is Inter Region Traffic Qos Policy](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateCenInterRegionTrafficQosPolicy).\n\n\u003e **NOTE:** Available since v1.246.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultpSZB78 = new alicloud.cen.Instance(\"defaultpSZB78\", {});\nconst defaultUmmxnE = new alicloud.cen.TransitRouter(\"defaultUmmxnE\", {cenId: defaultpSZB78.id});\nconst defaultksqgSa = new alicloud.cen.TransitRouter(\"defaultksqgSa\", {cenId: defaultpSZB78.id});\nconst defaultnXZ83y = new alicloud.cen.TransitRouterPeerAttachment(\"defaultnXZ83y\", {\n defaultLinkType: \"Platinum\",\n bandwidthType: \"DataTransfer\",\n cenId: defaultpSZB78.id,\n peerTransitRouterRegionId: \"cn-hangzhou\",\n transitRouterId: defaultUmmxnE.transitRouterId,\n peerTransitRouterId: defaultksqgSa.transitRouterId,\n bandwidth: 10,\n});\nconst _default = new alicloud.cen.InterRegionTrafficQosPolicy(\"default\", {\n transitRouterAttachmentId: defaultnXZ83y.transitRouterAttachmentId,\n interRegionTrafficQosPolicyName: \"example1\",\n interRegionTrafficQosPolicyDescription: \"example1\",\n bandwidthGuaranteeMode: \"byBandwidthPercent\",\n transitRouterId: defaultksqgSa.transitRouterId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultp_szb78 = alicloud.cen.Instance(\"defaultpSZB78\")\ndefault_ummxn_e = alicloud.cen.TransitRouter(\"defaultUmmxnE\", cen_id=defaultp_szb78.id)\ndefaultksqg_sa = alicloud.cen.TransitRouter(\"defaultksqgSa\", cen_id=defaultp_szb78.id)\ndefaultn_xz83y = alicloud.cen.TransitRouterPeerAttachment(\"defaultnXZ83y\",\n default_link_type=\"Platinum\",\n bandwidth_type=\"DataTransfer\",\n cen_id=defaultp_szb78.id,\n peer_transit_router_region_id=\"cn-hangzhou\",\n transit_router_id=default_ummxn_e.transit_router_id,\n peer_transit_router_id=defaultksqg_sa.transit_router_id,\n bandwidth=10)\ndefault = alicloud.cen.InterRegionTrafficQosPolicy(\"default\",\n transit_router_attachment_id=defaultn_xz83y.transit_router_attachment_id,\n inter_region_traffic_qos_policy_name=\"example1\",\n inter_region_traffic_qos_policy_description=\"example1\",\n bandwidth_guarantee_mode=\"byBandwidthPercent\",\n transit_router_id=defaultksqg_sa.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultpSZB78 = new AliCloud.Cen.Instance(\"defaultpSZB78\");\n\n var defaultUmmxnE = new AliCloud.Cen.TransitRouter(\"defaultUmmxnE\", new()\n {\n CenId = defaultpSZB78.Id,\n });\n\n var defaultksqgSa = new AliCloud.Cen.TransitRouter(\"defaultksqgSa\", new()\n {\n CenId = defaultpSZB78.Id,\n });\n\n var defaultnXZ83y = new AliCloud.Cen.TransitRouterPeerAttachment(\"defaultnXZ83y\", new()\n {\n DefaultLinkType = \"Platinum\",\n BandwidthType = \"DataTransfer\",\n CenId = defaultpSZB78.Id,\n PeerTransitRouterRegionId = \"cn-hangzhou\",\n TransitRouterId = defaultUmmxnE.TransitRouterId,\n PeerTransitRouterId = defaultksqgSa.TransitRouterId,\n Bandwidth = 10,\n });\n\n var @default = new AliCloud.Cen.InterRegionTrafficQosPolicy(\"default\", new()\n {\n TransitRouterAttachmentId = defaultnXZ83y.TransitRouterAttachmentId,\n InterRegionTrafficQosPolicyName = \"example1\",\n InterRegionTrafficQosPolicyDescription = \"example1\",\n BandwidthGuaranteeMode = \"byBandwidthPercent\",\n TransitRouterId = defaultksqgSa.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultpSZB78, err := cen.NewInstance(ctx, \"defaultpSZB78\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUmmxnE, err := cen.NewTransitRouter(ctx, \"defaultUmmxnE\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultksqgSa, err := cen.NewTransitRouter(ctx, \"defaultksqgSa\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultnXZ83y, err := cen.NewTransitRouterPeerAttachment(ctx, \"defaultnXZ83y\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tDefaultLinkType: pulumi.String(\"Platinum\"),\n\t\t\tBandwidthType: pulumi.String(\"DataTransfer\"),\n\t\t\tCenId: defaultpSZB78.ID(),\n\t\t\tPeerTransitRouterRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tTransitRouterId: defaultUmmxnE.TransitRouterId,\n\t\t\tPeerTransitRouterId: defaultksqgSa.TransitRouterId,\n\t\t\tBandwidth: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInterRegionTrafficQosPolicy(ctx, \"default\", \u0026cen.InterRegionTrafficQosPolicyArgs{\n\t\t\tTransitRouterAttachmentId: defaultnXZ83y.TransitRouterAttachmentId,\n\t\t\tInterRegionTrafficQosPolicyName: pulumi.String(\"example1\"),\n\t\t\tInterRegionTrafficQosPolicyDescription: pulumi.String(\"example1\"),\n\t\t\tBandwidthGuaranteeMode: pulumi.String(\"byBandwidthPercent\"),\n\t\t\tTransitRouterId: defaultksqgSa.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicy;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultpSZB78 = new Instance(\"defaultpSZB78\");\n\n var defaultUmmxnE = new TransitRouter(\"defaultUmmxnE\", TransitRouterArgs.builder()\n .cenId(defaultpSZB78.id())\n .build());\n\n var defaultksqgSa = new TransitRouter(\"defaultksqgSa\", TransitRouterArgs.builder()\n .cenId(defaultpSZB78.id())\n .build());\n\n var defaultnXZ83y = new TransitRouterPeerAttachment(\"defaultnXZ83y\", TransitRouterPeerAttachmentArgs.builder()\n .defaultLinkType(\"Platinum\")\n .bandwidthType(\"DataTransfer\")\n .cenId(defaultpSZB78.id())\n .peerTransitRouterRegionId(\"cn-hangzhou\")\n .transitRouterId(defaultUmmxnE.transitRouterId())\n .peerTransitRouterId(defaultksqgSa.transitRouterId())\n .bandwidth(10)\n .build());\n\n var default_ = new InterRegionTrafficQosPolicy(\"default\", InterRegionTrafficQosPolicyArgs.builder()\n .transitRouterAttachmentId(defaultnXZ83y.transitRouterAttachmentId())\n .interRegionTrafficQosPolicyName(\"example1\")\n .interRegionTrafficQosPolicyDescription(\"example1\")\n .bandwidthGuaranteeMode(\"byBandwidthPercent\")\n .transitRouterId(defaultksqgSa.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultpSZB78:\n type: alicloud:cen:Instance\n defaultUmmxnE:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultpSZB78.id}\n defaultksqgSa:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultpSZB78.id}\n defaultnXZ83y:\n type: alicloud:cen:TransitRouterPeerAttachment\n properties:\n defaultLinkType: Platinum\n bandwidthType: DataTransfer\n cenId: ${defaultpSZB78.id}\n peerTransitRouterRegionId: cn-hangzhou\n transitRouterId: ${defaultUmmxnE.transitRouterId}\n peerTransitRouterId: ${defaultksqgSa.transitRouterId}\n bandwidth: '10'\n default:\n type: alicloud:cen:InterRegionTrafficQosPolicy\n properties:\n transitRouterAttachmentId: ${defaultnXZ83y.transitRouterAttachmentId}\n interRegionTrafficQosPolicyName: example1\n interRegionTrafficQosPolicyDescription: example1\n bandwidthGuaranteeMode: byBandwidthPercent\n transitRouterId: ${defaultksqgSa.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Inter Region Traffic Qos Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/interRegionTrafficQosPolicy:InterRegionTrafficQosPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidthGuaranteeMode": {
"type": "string",
@@ -113603,7 +115468,7 @@
}
},
"alicloud:cen/interRegionTrafficQosQueue:InterRegionTrafficQosQueue": {
- "description": "Provides a Cloud Enterprise Network (CEN) Inter Region Traffic Qos Queue resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Inter Region Traffic Qos Queue and how to use it, see [What is Inter Region Traffic Qos Queue](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateCenInterRegionTrafficQosQueue).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst defaultRegion = config.get(\"defaultRegion\") || \"cn-hangzhou\";\nconst peerRegion = config.get(\"peerRegion\") || \"cn-beijing\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultBandwidthPackage = new alicloud.cen.BandwidthPackage(\"default\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst defaultBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"default\", {\n instanceId: _default.id,\n bandwidthPackageId: defaultBandwidthPackage.id,\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: _default.id,\n supportMulticast: true,\n});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {\n cenId: defaultTransitRouter.cenId,\n supportMulticast: true,\n});\nconst defaultTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"default\", {\n cenId: _default.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n peerTransitRouterRegionId: peerRegion,\n peerTransitRouterId: peer.transitRouterId,\n cenBandwidthPackageId: defaultBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\nconst defaultInterRegionTrafficQosPolicy = new alicloud.cen.InterRegionTrafficQosPolicy(\"default\", {\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterAttachmentId: defaultTransitRouterPeerAttachment.transitRouterAttachmentId,\n interRegionTrafficQosPolicyName: name,\n interRegionTrafficQosPolicyDescription: name,\n});\nconst defaultInterRegionTrafficQosQueue = new alicloud.cen.InterRegionTrafficQosQueue(\"default\", {\n remainBandwidthPercent: 20,\n trafficQosPolicyId: defaultInterRegionTrafficQosPolicy.id,\n dscps: [\n 1,\n 2,\n ],\n interRegionTrafficQosQueueDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault_region = config.get(\"defaultRegion\")\nif default_region is None:\n default_region = \"cn-hangzhou\"\npeer_region = config.get(\"peerRegion\")\nif peer_region is None:\n peer_region = \"cn-beijing\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_bandwidth_package = alicloud.cen.BandwidthPackage(\"default\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\ndefault_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"default\",\n instance_id=default.id,\n bandwidth_package_id=default_bandwidth_package.id)\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default.id,\n support_multicast=True)\npeer = alicloud.cen.TransitRouter(\"peer\",\n cen_id=default_transit_router.cen_id,\n support_multicast=True)\ndefault_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"default\",\n cen_id=default.id,\n transit_router_id=default_transit_router.transit_router_id,\n peer_transit_router_region_id=peer_region,\n peer_transit_router_id=peer.transit_router_id,\n cen_bandwidth_package_id=default_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\ndefault_inter_region_traffic_qos_policy = alicloud.cen.InterRegionTrafficQosPolicy(\"default\",\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_attachment_id=default_transit_router_peer_attachment.transit_router_attachment_id,\n inter_region_traffic_qos_policy_name=name,\n inter_region_traffic_qos_policy_description=name)\ndefault_inter_region_traffic_qos_queue = alicloud.cen.InterRegionTrafficQosQueue(\"default\",\n remain_bandwidth_percent=20,\n traffic_qos_policy_id=default_inter_region_traffic_qos_policy.id,\n dscps=[\n 1,\n 2,\n ],\n inter_region_traffic_qos_queue_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var defaultRegion = config.Get(\"defaultRegion\") ?? \"cn-hangzhou\";\n var peerRegion = config.Get(\"peerRegion\") ?? \"cn-beijing\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"default\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var defaultBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n BandwidthPackageId = defaultBandwidthPackage.Id,\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = @default.Id,\n SupportMulticast = true,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = defaultTransitRouter.CenId,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"default\", new()\n {\n CenId = @default.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n PeerTransitRouterRegionId = peerRegion,\n PeerTransitRouterId = peer.TransitRouterId,\n CenBandwidthPackageId = defaultBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n var defaultInterRegionTrafficQosPolicy = new AliCloud.Cen.InterRegionTrafficQosPolicy(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterAttachmentId = defaultTransitRouterPeerAttachment.TransitRouterAttachmentId,\n InterRegionTrafficQosPolicyName = name,\n InterRegionTrafficQosPolicyDescription = name,\n });\n\n var defaultInterRegionTrafficQosQueue = new AliCloud.Cen.InterRegionTrafficQosQueue(\"default\", new()\n {\n RemainBandwidthPercent = 20,\n TrafficQosPolicyId = defaultInterRegionTrafficQosPolicy.Id,\n Dscps = new[]\n {\n 1,\n 2,\n },\n InterRegionTrafficQosQueueDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultRegion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"defaultRegion\"); param != \"\" {\n\t\t\tdefaultRegion = param\n\t\t}\n\t\tpeerRegion := \"cn-beijing\"\n\t\tif param := cfg.Get(\"peerRegion\"); param != \"\" {\n\t\t\tpeerRegion = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"default\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"default\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tBandwidthPackageId: defaultBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultTransitRouter.CenId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterPeerAttachment, err := cen.NewTransitRouterPeerAttachment(ctx, \"default\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(peerRegion),\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tCenBandwidthPackageId: defaultBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInterRegionTrafficQosPolicy, err := cen.NewInterRegionTrafficQosPolicy(ctx, \"default\", \u0026cen.InterRegionTrafficQosPolicyArgs{\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tTransitRouterAttachmentId: defaultTransitRouterPeerAttachment.TransitRouterAttachmentId,\n\t\t\tInterRegionTrafficQosPolicyName: pulumi.String(name),\n\t\t\tInterRegionTrafficQosPolicyDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInterRegionTrafficQosQueue(ctx, \"default\", \u0026cen.InterRegionTrafficQosQueueArgs{\n\t\t\tRemainBandwidthPercent: pulumi.Int(20),\n\t\t\tTrafficQosPolicyId: defaultInterRegionTrafficQosPolicy.ID(),\n\t\t\tDscps: pulumi.IntArray{\n\t\t\t\tpulumi.Int(1),\n\t\t\t\tpulumi.Int(2),\n\t\t\t},\n\t\t\tInterRegionTrafficQosQueueDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicy;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicyArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosQueue;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosQueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var defaultRegion = config.get(\"defaultRegion\").orElse(\"cn-hangzhou\");\n final var peerRegion = config.get(\"peerRegion\").orElse(\"cn-beijing\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultBandwidthPackage = new BandwidthPackage(\"defaultBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var defaultBandwidthPackageAttachment = new BandwidthPackageAttachment(\"defaultBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(default_.id())\n .bandwidthPackageId(defaultBandwidthPackage.id())\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(default_.id())\n .supportMulticast(true)\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(defaultTransitRouter.cenId())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"defaultTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(default_.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .peerTransitRouterRegionId(peerRegion)\n .peerTransitRouterId(peer.transitRouterId())\n .cenBandwidthPackageId(defaultBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n var defaultInterRegionTrafficQosPolicy = new InterRegionTrafficQosPolicy(\"defaultInterRegionTrafficQosPolicy\", InterRegionTrafficQosPolicyArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterAttachmentId(defaultTransitRouterPeerAttachment.transitRouterAttachmentId())\n .interRegionTrafficQosPolicyName(name)\n .interRegionTrafficQosPolicyDescription(name)\n .build());\n\n var defaultInterRegionTrafficQosQueue = new InterRegionTrafficQosQueue(\"defaultInterRegionTrafficQosQueue\", InterRegionTrafficQosQueueArgs.builder()\n .remainBandwidthPercent(20)\n .trafficQosPolicyId(defaultInterRegionTrafficQosPolicy.id())\n .dscps( \n 1,\n 2)\n .interRegionTrafficQosQueueDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n defaultRegion:\n type: string\n default: cn-hangzhou\n peerRegion:\n type: string\n default: cn-beijing\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: default\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n defaultBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: default\n properties:\n instanceId: ${default.id}\n bandwidthPackageId: ${defaultBandwidthPackage.id}\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${default.id}\n supportMulticast: true\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultTransitRouter.cenId}\n supportMulticast: true\n defaultTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: default\n properties:\n cenId: ${default.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n peerTransitRouterRegionId: ${peerRegion}\n peerTransitRouterId: ${peer.transitRouterId}\n cenBandwidthPackageId: ${defaultBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n defaultInterRegionTrafficQosPolicy:\n type: alicloud:cen:InterRegionTrafficQosPolicy\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterAttachmentId: ${defaultTransitRouterPeerAttachment.transitRouterAttachmentId}\n interRegionTrafficQosPolicyName: ${name}\n interRegionTrafficQosPolicyDescription: ${name}\n defaultInterRegionTrafficQosQueue:\n type: alicloud:cen:InterRegionTrafficQosQueue\n name: default\n properties:\n remainBandwidthPercent: 20\n trafficQosPolicyId: ${defaultInterRegionTrafficQosPolicy.id}\n dscps:\n - 1\n - 2\n interRegionTrafficQosQueueDescription: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Inter Region Traffic Qos Queue can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/interRegionTrafficQosQueue:InterRegionTrafficQosQueue example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Inter Region Traffic Qos Queue resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Inter Region Traffic Qos Queue and how to use it, see [What is Inter Region Traffic Qos Queue](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateCenInterRegionTrafficQosQueue).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst defaultRegion = config.get(\"defaultRegion\") || \"cn-hangzhou\";\nconst peerRegion = config.get(\"peerRegion\") || \"cn-beijing\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultBandwidthPackage = new alicloud.cen.BandwidthPackage(\"default\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst defaultBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"default\", {\n instanceId: _default.id,\n bandwidthPackageId: defaultBandwidthPackage.id,\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: _default.id,\n supportMulticast: true,\n});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {\n cenId: defaultTransitRouter.cenId,\n supportMulticast: true,\n});\nconst defaultTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"default\", {\n cenId: _default.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n peerTransitRouterRegionId: peerRegion,\n peerTransitRouterId: peer.transitRouterId,\n cenBandwidthPackageId: defaultBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\nconst defaultInterRegionTrafficQosPolicy = new alicloud.cen.InterRegionTrafficQosPolicy(\"default\", {\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterAttachmentId: defaultTransitRouterPeerAttachment.transitRouterAttachmentId,\n interRegionTrafficQosPolicyName: name,\n interRegionTrafficQosPolicyDescription: name,\n});\nconst defaultInterRegionTrafficQosQueue = new alicloud.cen.InterRegionTrafficQosQueue(\"default\", {\n remainBandwidthPercent: 20,\n trafficQosPolicyId: defaultInterRegionTrafficQosPolicy.id,\n dscps: [\n 1,\n 2,\n ],\n interRegionTrafficQosQueueDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault_region = config.get(\"defaultRegion\")\nif default_region is None:\n default_region = \"cn-hangzhou\"\npeer_region = config.get(\"peerRegion\")\nif peer_region is None:\n peer_region = \"cn-beijing\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_bandwidth_package = alicloud.cen.BandwidthPackage(\"default\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\ndefault_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"default\",\n instance_id=default.id,\n bandwidth_package_id=default_bandwidth_package.id)\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default.id,\n support_multicast=True)\npeer = alicloud.cen.TransitRouter(\"peer\",\n cen_id=default_transit_router.cen_id,\n support_multicast=True)\ndefault_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"default\",\n cen_id=default.id,\n transit_router_id=default_transit_router.transit_router_id,\n peer_transit_router_region_id=peer_region,\n peer_transit_router_id=peer.transit_router_id,\n cen_bandwidth_package_id=default_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\ndefault_inter_region_traffic_qos_policy = alicloud.cen.InterRegionTrafficQosPolicy(\"default\",\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_attachment_id=default_transit_router_peer_attachment.transit_router_attachment_id,\n inter_region_traffic_qos_policy_name=name,\n inter_region_traffic_qos_policy_description=name)\ndefault_inter_region_traffic_qos_queue = alicloud.cen.InterRegionTrafficQosQueue(\"default\",\n remain_bandwidth_percent=20,\n traffic_qos_policy_id=default_inter_region_traffic_qos_policy.id,\n dscps=[\n 1,\n 2,\n ],\n inter_region_traffic_qos_queue_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var defaultRegion = config.Get(\"defaultRegion\") ?? \"cn-hangzhou\";\n var peerRegion = config.Get(\"peerRegion\") ?? \"cn-beijing\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"default\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var defaultBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n BandwidthPackageId = defaultBandwidthPackage.Id,\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = @default.Id,\n SupportMulticast = true,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = defaultTransitRouter.CenId,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"default\", new()\n {\n CenId = @default.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n PeerTransitRouterRegionId = peerRegion,\n PeerTransitRouterId = peer.TransitRouterId,\n CenBandwidthPackageId = defaultBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n var defaultInterRegionTrafficQosPolicy = new AliCloud.Cen.InterRegionTrafficQosPolicy(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterAttachmentId = defaultTransitRouterPeerAttachment.TransitRouterAttachmentId,\n InterRegionTrafficQosPolicyName = name,\n InterRegionTrafficQosPolicyDescription = name,\n });\n\n var defaultInterRegionTrafficQosQueue = new AliCloud.Cen.InterRegionTrafficQosQueue(\"default\", new()\n {\n RemainBandwidthPercent = 20,\n TrafficQosPolicyId = defaultInterRegionTrafficQosPolicy.Id,\n Dscps = new[]\n {\n 1,\n 2,\n },\n InterRegionTrafficQosQueueDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultRegion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"defaultRegion\"); param != \"\" {\n\t\t\tdefaultRegion = param\n\t\t}\n\t\tpeerRegion := \"cn-beijing\"\n\t\tif param := cfg.Get(\"peerRegion\"); param != \"\" {\n\t\t\tpeerRegion = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"default\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"default\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tBandwidthPackageId: defaultBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultTransitRouter.CenId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterPeerAttachment, err := cen.NewTransitRouterPeerAttachment(ctx, \"default\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(peerRegion),\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tCenBandwidthPackageId: defaultBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInterRegionTrafficQosPolicy, err := cen.NewInterRegionTrafficQosPolicy(ctx, \"default\", \u0026cen.InterRegionTrafficQosPolicyArgs{\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tTransitRouterAttachmentId: defaultTransitRouterPeerAttachment.TransitRouterAttachmentId,\n\t\t\tInterRegionTrafficQosPolicyName: pulumi.String(name),\n\t\t\tInterRegionTrafficQosPolicyDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewInterRegionTrafficQosQueue(ctx, \"default\", \u0026cen.InterRegionTrafficQosQueueArgs{\n\t\t\tRemainBandwidthPercent: pulumi.Int(20),\n\t\t\tTrafficQosPolicyId: defaultInterRegionTrafficQosPolicy.ID(),\n\t\t\tDscps: pulumi.IntArray{\n\t\t\t\tpulumi.Int(1),\n\t\t\t\tpulumi.Int(2),\n\t\t\t},\n\t\t\tInterRegionTrafficQosQueueDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicy;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosPolicyArgs;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosQueue;\nimport com.pulumi.alicloud.cen.InterRegionTrafficQosQueueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var defaultRegion = config.get(\"defaultRegion\").orElse(\"cn-hangzhou\");\n final var peerRegion = config.get(\"peerRegion\").orElse(\"cn-beijing\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultBandwidthPackage = new BandwidthPackage(\"defaultBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var defaultBandwidthPackageAttachment = new BandwidthPackageAttachment(\"defaultBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(default_.id())\n .bandwidthPackageId(defaultBandwidthPackage.id())\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(default_.id())\n .supportMulticast(true)\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(defaultTransitRouter.cenId())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"defaultTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(default_.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .peerTransitRouterRegionId(peerRegion)\n .peerTransitRouterId(peer.transitRouterId())\n .cenBandwidthPackageId(defaultBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n var defaultInterRegionTrafficQosPolicy = new InterRegionTrafficQosPolicy(\"defaultInterRegionTrafficQosPolicy\", InterRegionTrafficQosPolicyArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterAttachmentId(defaultTransitRouterPeerAttachment.transitRouterAttachmentId())\n .interRegionTrafficQosPolicyName(name)\n .interRegionTrafficQosPolicyDescription(name)\n .build());\n\n var defaultInterRegionTrafficQosQueue = new InterRegionTrafficQosQueue(\"defaultInterRegionTrafficQosQueue\", InterRegionTrafficQosQueueArgs.builder()\n .remainBandwidthPercent(20)\n .trafficQosPolicyId(defaultInterRegionTrafficQosPolicy.id())\n .dscps( \n 1,\n 2)\n .interRegionTrafficQosQueueDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n defaultRegion:\n type: string\n default: cn-hangzhou\n peerRegion:\n type: string\n default: cn-beijing\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: default\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n defaultBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: default\n properties:\n instanceId: ${default.id}\n bandwidthPackageId: ${defaultBandwidthPackage.id}\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${default.id}\n supportMulticast: true\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultTransitRouter.cenId}\n supportMulticast: true\n defaultTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: default\n properties:\n cenId: ${default.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n peerTransitRouterRegionId: ${peerRegion}\n peerTransitRouterId: ${peer.transitRouterId}\n cenBandwidthPackageId: ${defaultBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n defaultInterRegionTrafficQosPolicy:\n type: alicloud:cen:InterRegionTrafficQosPolicy\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterAttachmentId: ${defaultTransitRouterPeerAttachment.transitRouterAttachmentId}\n interRegionTrafficQosPolicyName: ${name}\n interRegionTrafficQosPolicyDescription: ${name}\n defaultInterRegionTrafficQosQueue:\n type: alicloud:cen:InterRegionTrafficQosQueue\n name: default\n properties:\n remainBandwidthPercent: 20\n trafficQosPolicyId: ${defaultInterRegionTrafficQosPolicy.id}\n dscps:\n - 1\n - 2\n interRegionTrafficQosQueueDescription: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Inter Region Traffic Qos Queue can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/interRegionTrafficQosQueue:InterRegionTrafficQosQueue example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "string",
@@ -113716,7 +115581,7 @@
}
},
"alicloud:cen/privateZone:PrivateZone": {
- "description": "Provides a Cloud Enterprise Network (CEN) Private Zone resource.\n\nFor information about Cloud Enterprise Network (CEN) Private Zone and how to use it, see [What is Private Zone](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-routeprivatezoneincentovpc).\n\n\u003e **NOTE:** Available since v1.83.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: name,\n});\nconst defaultInstanceAttachment = new alicloud.cen.InstanceAttachment(\"default\", {\n instanceId: defaultInstance.id,\n childInstanceId: defaultNetwork.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst defaultPrivateZone = new alicloud.cen.PrivateZone(\"default\", {\n cenId: defaultInstanceAttachment.instanceId,\n accessRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostVpcId: defaultNetwork.id,\n hostRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.17.3.0/24\")\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=name)\ndefault_instance_attachment = alicloud.cen.InstanceAttachment(\"default\",\n instance_id=default_instance.id,\n child_instance_id=default_network.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\ndefault_private_zone = alicloud.cen.PrivateZone(\"default\",\n cen_id=default_instance_attachment.instance_id,\n access_region_id=default.regions[0].id,\n host_vpc_id=default_network.id,\n host_region_id=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n var defaultInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ChildInstanceId = defaultNetwork.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var defaultPrivateZone = new AliCloud.Cen.PrivateZone(\"default\", new()\n {\n CenId = defaultInstanceAttachment.InstanceId,\n AccessRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostVpcId = defaultNetwork.Id,\n HostRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"default\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tChildInstanceId: defaultNetwork.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewPrivateZone(ctx, \"default\", \u0026cen.PrivateZoneArgs{\n\t\t\tCenId: defaultInstanceAttachment.InstanceId,\n\t\t\tAccessRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostVpcId: defaultNetwork.ID(),\n\t\t\tHostRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.PrivateZone;\nimport com.pulumi.alicloud.cen.PrivateZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n var defaultInstanceAttachment = new InstanceAttachment(\"defaultInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .childInstanceId(defaultNetwork.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var defaultPrivateZone = new PrivateZone(\"defaultPrivateZone\", PrivateZoneArgs.builder()\n .cenId(defaultInstanceAttachment.instanceId())\n .accessRegionId(default_.regions()[0].id())\n .hostVpcId(defaultNetwork.id())\n .hostRegionId(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.17.3.0/24\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n description: ${name}\n defaultInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n childInstanceId: ${defaultNetwork.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n defaultPrivateZone:\n type: alicloud:cen:PrivateZone\n name: default\n properties:\n cenId: ${defaultInstanceAttachment.instanceId}\n accessRegionId: ${default.regions[0].id}\n hostVpcId: ${defaultNetwork.id}\n hostRegionId: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Private Zone can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/privateZone:PrivateZone example \u003ccen_id\u003e:\u003caccess_region_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Private Zone resource.\n\nFor information about Cloud Enterprise Network (CEN) Private Zone and how to use it, see [What is Private Zone](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-routeprivatezoneincentovpc).\n\n\u003e **NOTE:** Available since v1.83.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: name,\n});\nconst defaultInstanceAttachment = new alicloud.cen.InstanceAttachment(\"default\", {\n instanceId: defaultInstance.id,\n childInstanceId: defaultNetwork.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst defaultPrivateZone = new alicloud.cen.PrivateZone(\"default\", {\n cenId: defaultInstanceAttachment.instanceId,\n accessRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostVpcId: defaultNetwork.id,\n hostRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.17.3.0/24\")\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=name)\ndefault_instance_attachment = alicloud.cen.InstanceAttachment(\"default\",\n instance_id=default_instance.id,\n child_instance_id=default_network.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\ndefault_private_zone = alicloud.cen.PrivateZone(\"default\",\n cen_id=default_instance_attachment.instance_id,\n access_region_id=default.regions[0].id,\n host_vpc_id=default_network.id,\n host_region_id=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n var defaultInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ChildInstanceId = defaultNetwork.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var defaultPrivateZone = new AliCloud.Cen.PrivateZone(\"default\", new()\n {\n CenId = defaultInstanceAttachment.InstanceId,\n AccessRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostVpcId = defaultNetwork.Id,\n HostRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"default\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tChildInstanceId: defaultNetwork.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewPrivateZone(ctx, \"default\", \u0026cen.PrivateZoneArgs{\n\t\t\tCenId: defaultInstanceAttachment.InstanceId,\n\t\t\tAccessRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostVpcId: defaultNetwork.ID(),\n\t\t\tHostRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.PrivateZone;\nimport com.pulumi.alicloud.cen.PrivateZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n var defaultInstanceAttachment = new InstanceAttachment(\"defaultInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(defaultInstance.id())\n .childInstanceId(defaultNetwork.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var defaultPrivateZone = new PrivateZone(\"defaultPrivateZone\", PrivateZoneArgs.builder()\n .cenId(defaultInstanceAttachment.instanceId())\n .accessRegionId(default_.regions()[0].id())\n .hostVpcId(defaultNetwork.id())\n .hostRegionId(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.17.3.0/24\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n description: ${name}\n defaultInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n childInstanceId: ${defaultNetwork.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n defaultPrivateZone:\n type: alicloud:cen:PrivateZone\n name: default\n properties:\n cenId: ${defaultInstanceAttachment.instanceId}\n accessRegionId: ${default.regions[0].id}\n hostVpcId: ${defaultNetwork.id}\n hostRegionId: ${default.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Private Zone can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/privateZone:PrivateZone example \u003ccen_id\u003e:\u003caccess_region_id\u003e\n```\n\n",
"properties": {
"accessRegionId": {
"type": "string",
@@ -113806,7 +115671,7 @@
}
},
"alicloud:cen/routeEntry:RouteEntry": {
- "description": "Provides a CEN route entry resource. Cloud Enterprise Network (CEN) supports publishing and withdrawing route entries of attached networks. You can publish a route entry of an attached VPC or VBR to a CEN instance, then other attached networks can learn the route if there is no route conflict. You can withdraw a published route entry when CEN does not need it any more.\n\nFor information about CEN route entries publishment and how to use it, see [Manage network routes](https://www.alibabacloud.com/help/doc-detail/86980.htm).\n\n\u003e **NOTE:** Available since v1.20.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n internetMaxBandwidthOut: 5,\n});\nconst exampleInstance2 = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance2.id,\n childInstanceId: exampleNetwork.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleRouteEntry = new alicloud.vpc.RouteEntry(\"example\", {\n routeTableId: exampleNetwork.routeTableId,\n destinationCidrblock: \"11.0.0.0/16\",\n nexthopType: \"Instance\",\n nexthopId: exampleInstance.id,\n});\nconst exampleRouteEntry2 = new alicloud.cen.RouteEntry(\"example\", {\n instanceId: exampleInstanceAttachment.instanceId,\n routeTableId: exampleNetwork.routeTableId,\n cidrBlock: exampleRouteEntry.destinationCidrblock,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=\"terraform-example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id,\n internet_max_bandwidth_out=5)\nexample_instance2 = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance2.id,\n child_instance_id=example_network.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\nexample_route_entry = alicloud.vpc.RouteEntry(\"example\",\n route_table_id=example_network.route_table_id,\n destination_cidrblock=\"11.0.0.0/16\",\n nexthop_type=\"Instance\",\n nexthop_id=example_instance.id)\nexample_route_entry2 = alicloud.cen.RouteEntry(\"example\",\n instance_id=example_instance_attachment.instance_id,\n route_table_id=example_network.route_table_id,\n cidr_block=example_route_entry.destination_cidrblock)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = \"terraform-example\",\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n InternetMaxBandwidthOut = 5,\n });\n\n var exampleInstance2 = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance2.Id,\n ChildInstanceId = exampleNetwork.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleRouteEntry = new AliCloud.Vpc.RouteEntry(\"example\", new()\n {\n RouteTableId = exampleNetwork.RouteTableId,\n DestinationCidrblock = \"11.0.0.0/16\",\n NexthopType = \"Instance\",\n NexthopId = exampleInstance.Id,\n });\n\n var exampleRouteEntry2 = new AliCloud.Cen.RouteEntry(\"example\", new()\n {\n InstanceId = exampleInstanceAttachment.InstanceId,\n RouteTableId = exampleNetwork.RouteTableId,\n CidrBlock = exampleRouteEntry.DestinationCidrblock,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance2, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance2.ID(),\n\t\t\tChildInstanceId: exampleNetwork.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRouteEntry, err := vpc.NewRouteEntry(ctx, \"example\", \u0026vpc.RouteEntryArgs{\n\t\t\tRouteTableId: exampleNetwork.RouteTableId,\n\t\t\tDestinationCidrblock: pulumi.String(\"11.0.0.0/16\"),\n\t\t\tNexthopType: pulumi.String(\"Instance\"),\n\t\t\tNexthopId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteEntry(ctx, \"example\", \u0026cen.RouteEntryArgs{\n\t\t\tInstanceId: exampleInstanceAttachment.InstanceId,\n\t\t\tRouteTableId: exampleNetwork.RouteTableId,\n\t\t\tCidrBlock: exampleRouteEntry.DestinationCidrblock,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new com.pulumi.alicloud.ecs.Instance(\"exampleInstance\", com.pulumi.alicloud.ecs.InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(\"terraform-example\")\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .internetMaxBandwidthOut(5)\n .build());\n\n var exampleInstance2 = new com.pulumi.alicloud.cen.Instance(\"exampleInstance2\", com.pulumi.alicloud.cen.InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance2.id())\n .childInstanceId(exampleNetwork.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleRouteEntry = new com.pulumi.alicloud.vpc.RouteEntry(\"exampleRouteEntry\", com.pulumi.alicloud.vpc.RouteEntryArgs.builder()\n .routeTableId(exampleNetwork.routeTableId())\n .destinationCidrblock(\"11.0.0.0/16\")\n .nexthopType(\"Instance\")\n .nexthopId(exampleInstance.id())\n .build());\n\n var exampleRouteEntry2 = new com.pulumi.alicloud.cen.RouteEntry(\"exampleRouteEntry2\", com.pulumi.alicloud.cen.RouteEntryArgs.builder()\n .instanceId(exampleInstanceAttachment.instanceId())\n .routeTableId(exampleNetwork.routeTableId())\n .cidrBlock(exampleRouteEntry.destinationCidrblock())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: terraform-example\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n internetMaxBandwidthOut: 5\n exampleInstance2:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance2.id}\n childInstanceId: ${exampleNetwork.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n exampleRouteEntry:\n type: alicloud:vpc:RouteEntry\n name: example\n properties:\n routeTableId: ${exampleNetwork.routeTableId}\n destinationCidrblock: 11.0.0.0/16\n nexthopType: Instance\n nexthopId: ${exampleInstance.id}\n exampleRouteEntry2:\n type: alicloud:cen:RouteEntry\n name: example\n properties:\n instanceId: ${exampleInstanceAttachment.instanceId}\n routeTableId: ${exampleNetwork.routeTableId}\n cidrBlock: ${exampleRouteEntry.destinationCidrblock}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeEntry:RouteEntry example cen-abc123456:vtb-abc123:192.168.0.0/24\n```\n\n",
+ "description": "Provides a CEN route entry resource. Cloud Enterprise Network (CEN) supports publishing and withdrawing route entries of attached networks. You can publish a route entry of an attached VPC or VBR to a CEN instance, then other attached networks can learn the route if there is no route conflict. You can withdraw a published route entry when CEN does not need it any more.\n\nFor information about CEN route entries publishment and how to use it, see [Manage network routes](https://www.alibabacloud.com/help/doc-detail/86980.htm).\n\n\u003e **NOTE:** Available since v1.20.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n internetMaxBandwidthOut: 5,\n});\nconst exampleInstance2 = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance2.id,\n childInstanceId: exampleNetwork.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleRouteEntry = new alicloud.vpc.RouteEntry(\"example\", {\n routeTableId: exampleNetwork.routeTableId,\n destinationCidrblock: \"11.0.0.0/16\",\n nexthopType: \"Instance\",\n nexthopId: exampleInstance.id,\n});\nconst exampleRouteEntry2 = new alicloud.cen.RouteEntry(\"example\", {\n instanceId: exampleInstanceAttachment.instanceId,\n routeTableId: exampleNetwork.routeTableId,\n cidrBlock: exampleRouteEntry.destinationCidrblock,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=\"terraform-example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id,\n internet_max_bandwidth_out=5)\nexample_instance2 = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance2.id,\n child_instance_id=example_network.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\nexample_route_entry = alicloud.vpc.RouteEntry(\"example\",\n route_table_id=example_network.route_table_id,\n destination_cidrblock=\"11.0.0.0/16\",\n nexthop_type=\"Instance\",\n nexthop_id=example_instance.id)\nexample_route_entry2 = alicloud.cen.RouteEntry(\"example\",\n instance_id=example_instance_attachment.instance_id,\n route_table_id=example_network.route_table_id,\n cidr_block=example_route_entry.destination_cidrblock)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = \"terraform-example\",\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n InternetMaxBandwidthOut = 5,\n });\n\n var exampleInstance2 = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance2.Id,\n ChildInstanceId = exampleNetwork.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleRouteEntry = new AliCloud.Vpc.RouteEntry(\"example\", new()\n {\n RouteTableId = exampleNetwork.RouteTableId,\n DestinationCidrblock = \"11.0.0.0/16\",\n NexthopType = \"Instance\",\n NexthopId = exampleInstance.Id,\n });\n\n var exampleRouteEntry2 = new AliCloud.Cen.RouteEntry(\"example\", new()\n {\n InstanceId = exampleInstanceAttachment.InstanceId,\n RouteTableId = exampleNetwork.RouteTableId,\n CidrBlock = exampleRouteEntry.DestinationCidrblock,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance2, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance2.ID(),\n\t\t\tChildInstanceId: exampleNetwork.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRouteEntry, err := vpc.NewRouteEntry(ctx, \"example\", \u0026vpc.RouteEntryArgs{\n\t\t\tRouteTableId: exampleNetwork.RouteTableId,\n\t\t\tDestinationCidrblock: pulumi.String(\"11.0.0.0/16\"),\n\t\t\tNexthopType: pulumi.String(\"Instance\"),\n\t\t\tNexthopId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteEntry(ctx, \"example\", \u0026cen.RouteEntryArgs{\n\t\t\tInstanceId: exampleInstanceAttachment.InstanceId,\n\t\t\tRouteTableId: exampleNetwork.RouteTableId,\n\t\t\tCidrBlock: exampleRouteEntry.DestinationCidrblock,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new com.pulumi.alicloud.ecs.Instance(\"exampleInstance\", com.pulumi.alicloud.ecs.InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(\"terraform-example\")\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .internetMaxBandwidthOut(5)\n .build());\n\n var exampleInstance2 = new com.pulumi.alicloud.cen.Instance(\"exampleInstance2\", com.pulumi.alicloud.cen.InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance2.id())\n .childInstanceId(exampleNetwork.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleRouteEntry = new com.pulumi.alicloud.vpc.RouteEntry(\"exampleRouteEntry\", com.pulumi.alicloud.vpc.RouteEntryArgs.builder()\n .routeTableId(exampleNetwork.routeTableId())\n .destinationCidrblock(\"11.0.0.0/16\")\n .nexthopType(\"Instance\")\n .nexthopId(exampleInstance.id())\n .build());\n\n var exampleRouteEntry2 = new com.pulumi.alicloud.cen.RouteEntry(\"exampleRouteEntry2\", com.pulumi.alicloud.cen.RouteEntryArgs.builder()\n .instanceId(exampleInstanceAttachment.instanceId())\n .routeTableId(exampleNetwork.routeTableId())\n .cidrBlock(exampleRouteEntry.destinationCidrblock())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: terraform-example\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n internetMaxBandwidthOut: 5\n exampleInstance2:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance2.id}\n childInstanceId: ${exampleNetwork.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n exampleRouteEntry:\n type: alicloud:vpc:RouteEntry\n name: example\n properties:\n routeTableId: ${exampleNetwork.routeTableId}\n destinationCidrblock: 11.0.0.0/16\n nexthopType: Instance\n nexthopId: ${exampleInstance.id}\n exampleRouteEntry2:\n type: alicloud:cen:RouteEntry\n name: example\n properties:\n instanceId: ${exampleInstanceAttachment.instanceId}\n routeTableId: ${exampleNetwork.routeTableId}\n cidrBlock: ${exampleRouteEntry.destinationCidrblock}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeEntry:RouteEntry example cen-abc123456:vtb-abc123:192.168.0.0/24\n```\n\n",
"properties": {
"cidrBlock": {
"type": "string",
@@ -113871,7 +115736,7 @@
}
},
"alicloud:cen/routeMap:RouteMap": {
- "description": "This topic provides an overview of the route map function of Cloud Enterprise Networks (CENs).\nYou can use the route map function to filter routes and modify route attributes.\nBy doing so, you can manage the communication between networks attached to a CEN. \n\nFor information about CEN Route Map and how to use it, see [Manage CEN Route Map](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-createcenroutemap).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst sourceRegion = config.get(\"sourceRegion\") || \"cn-hangzhou\";\nconst destinationRegion = config.get(\"destinationRegion\") || \"cn-shanghai\";\nconst exampleHz = new alicloud.vpc.Network(\"example_hz\", {\n vpcName: \"tf_example\",\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSh = new alicloud.vpc.Network(\"example_sh\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleHzInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example_hz\", {\n instanceId: example.id,\n childInstanceId: exampleHz.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: sourceRegion,\n});\nconst exampleShInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example_sh\", {\n instanceId: example.id,\n childInstanceId: exampleSh.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: destinationRegion,\n});\nconst _default = new alicloud.cen.RouteMap(\"default\", {\n cenRegionId: sourceRegion,\n cenId: example.id,\n description: \"tf_example\",\n priority: 1,\n transmitDirection: \"RegionIn\",\n mapResult: \"Permit\",\n nextPriority: 1,\n sourceRegionIds: [sourceRegion],\n sourceInstanceIds: [exampleHzInstanceAttachment.childInstanceId],\n sourceInstanceIdsReverseMatch: false,\n destinationInstanceIds: [exampleShInstanceAttachment.childInstanceId],\n destinationInstanceIdsReverseMatch: false,\n sourceRouteTableIds: [exampleHz.routeTableId],\n destinationRouteTableIds: [exampleSh.routeTableId],\n sourceChildInstanceTypes: [\"VPC\"],\n destinationChildInstanceTypes: [\"VPC\"],\n destinationCidrBlocks: [exampleSh.cidrBlock],\n cidrMatchMode: \"Include\",\n routeTypes: [\"System\"],\n matchAsns: [\"65501\"],\n asPathMatchMode: \"Include\",\n matchCommunitySets: [\"65501:1\"],\n communityMatchMode: \"Include\",\n communityOperateMode: \"Additive\",\n operateCommunitySets: [\"65501:1\"],\n preference: 20,\n prependAsPaths: [\"65501\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nsource_region = config.get(\"sourceRegion\")\nif source_region is None:\n source_region = \"cn-hangzhou\"\ndestination_region = config.get(\"destinationRegion\")\nif destination_region is None:\n destination_region = \"cn-shanghai\"\nexample_hz = alicloud.vpc.Network(\"example_hz\",\n vpc_name=\"tf_example\",\n cidr_block=\"192.168.0.0/16\")\nexample_sh = alicloud.vpc.Network(\"example_sh\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.16.0.0/12\")\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_hz_instance_attachment = alicloud.cen.InstanceAttachment(\"example_hz\",\n instance_id=example.id,\n child_instance_id=example_hz.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=source_region)\nexample_sh_instance_attachment = alicloud.cen.InstanceAttachment(\"example_sh\",\n instance_id=example.id,\n child_instance_id=example_sh.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=destination_region)\ndefault = alicloud.cen.RouteMap(\"default\",\n cen_region_id=source_region,\n cen_id=example.id,\n description=\"tf_example\",\n priority=1,\n transmit_direction=\"RegionIn\",\n map_result=\"Permit\",\n next_priority=1,\n source_region_ids=[source_region],\n source_instance_ids=[example_hz_instance_attachment.child_instance_id],\n source_instance_ids_reverse_match=False,\n destination_instance_ids=[example_sh_instance_attachment.child_instance_id],\n destination_instance_ids_reverse_match=False,\n source_route_table_ids=[example_hz.route_table_id],\n destination_route_table_ids=[example_sh.route_table_id],\n source_child_instance_types=[\"VPC\"],\n destination_child_instance_types=[\"VPC\"],\n destination_cidr_blocks=[example_sh.cidr_block],\n cidr_match_mode=\"Include\",\n route_types=[\"System\"],\n match_asns=[\"65501\"],\n as_path_match_mode=\"Include\",\n match_community_sets=[\"65501:1\"],\n community_match_mode=\"Include\",\n community_operate_mode=\"Additive\",\n operate_community_sets=[\"65501:1\"],\n preference=20,\n prepend_as_paths=[\"65501\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var sourceRegion = config.Get(\"sourceRegion\") ?? \"cn-hangzhou\";\n var destinationRegion = config.Get(\"destinationRegion\") ?? \"cn-shanghai\";\n var exampleHz = new AliCloud.Vpc.Network(\"example_hz\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSh = new AliCloud.Vpc.Network(\"example_sh\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleHzInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example_hz\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = exampleHz.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = sourceRegion,\n });\n\n var exampleShInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example_sh\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = exampleSh.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = destinationRegion,\n });\n\n var @default = new AliCloud.Cen.RouteMap(\"default\", new()\n {\n CenRegionId = sourceRegion,\n CenId = example.Id,\n Description = \"tf_example\",\n Priority = 1,\n TransmitDirection = \"RegionIn\",\n MapResult = \"Permit\",\n NextPriority = 1,\n SourceRegionIds = new[]\n {\n sourceRegion,\n },\n SourceInstanceIds = new[]\n {\n exampleHzInstanceAttachment.ChildInstanceId,\n },\n SourceInstanceIdsReverseMatch = false,\n DestinationInstanceIds = new[]\n {\n exampleShInstanceAttachment.ChildInstanceId,\n },\n DestinationInstanceIdsReverseMatch = false,\n SourceRouteTableIds = new[]\n {\n exampleHz.RouteTableId,\n },\n DestinationRouteTableIds = new[]\n {\n exampleSh.RouteTableId,\n },\n SourceChildInstanceTypes = new[]\n {\n \"VPC\",\n },\n DestinationChildInstanceTypes = new[]\n {\n \"VPC\",\n },\n DestinationCidrBlocks = new[]\n {\n exampleSh.CidrBlock,\n },\n CidrMatchMode = \"Include\",\n RouteTypes = new[]\n {\n \"System\",\n },\n MatchAsns = new[]\n {\n \"65501\",\n },\n AsPathMatchMode = \"Include\",\n MatchCommunitySets = new[]\n {\n \"65501:1\",\n },\n CommunityMatchMode = \"Include\",\n CommunityOperateMode = \"Additive\",\n OperateCommunitySets = new[]\n {\n \"65501:1\",\n },\n Preference = 20,\n PrependAsPaths = new[]\n {\n \"65501\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tsourceRegion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"sourceRegion\"); param != \"\" {\n\t\t\tsourceRegion = param\n\t\t}\n\t\tdestinationRegion := \"cn-shanghai\"\n\t\tif param := cfg.Get(\"destinationRegion\"); param != \"\" {\n\t\t\tdestinationRegion = param\n\t\t}\n\t\texampleHz, err := vpc.NewNetwork(ctx, \"example_hz\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSh, err := vpc.NewNetwork(ctx, \"example_sh\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleHzInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example_hz\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: exampleHz.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(sourceRegion),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleShInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example_sh\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: exampleSh.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(destinationRegion),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteMap(ctx, \"default\", \u0026cen.RouteMapArgs{\n\t\t\tCenRegionId: pulumi.String(sourceRegion),\n\t\t\tCenId: example.ID(),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tTransmitDirection: pulumi.String(\"RegionIn\"),\n\t\t\tMapResult: pulumi.String(\"Permit\"),\n\t\t\tNextPriority: pulumi.Int(1),\n\t\t\tSourceRegionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(sourceRegion),\n\t\t\t},\n\t\t\tSourceInstanceIds: pulumi.StringArray{\n\t\t\t\texampleHzInstanceAttachment.ChildInstanceId,\n\t\t\t},\n\t\t\tSourceInstanceIdsReverseMatch: pulumi.Bool(false),\n\t\t\tDestinationInstanceIds: pulumi.StringArray{\n\t\t\t\texampleShInstanceAttachment.ChildInstanceId,\n\t\t\t},\n\t\t\tDestinationInstanceIdsReverseMatch: pulumi.Bool(false),\n\t\t\tSourceRouteTableIds: pulumi.StringArray{\n\t\t\t\texampleHz.RouteTableId,\n\t\t\t},\n\t\t\tDestinationRouteTableIds: pulumi.StringArray{\n\t\t\t\texampleSh.RouteTableId,\n\t\t\t},\n\t\t\tSourceChildInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VPC\"),\n\t\t\t},\n\t\t\tDestinationChildInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VPC\"),\n\t\t\t},\n\t\t\tDestinationCidrBlocks: pulumi.StringArray{\n\t\t\t\texampleSh.CidrBlock,\n\t\t\t},\n\t\t\tCidrMatchMode: pulumi.String(\"Include\"),\n\t\t\tRouteTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"System\"),\n\t\t\t},\n\t\t\tMatchAsns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501\"),\n\t\t\t},\n\t\t\tAsPathMatchMode: pulumi.String(\"Include\"),\n\t\t\tMatchCommunitySets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501:1\"),\n\t\t\t},\n\t\t\tCommunityMatchMode: pulumi.String(\"Include\"),\n\t\t\tCommunityOperateMode: pulumi.String(\"Additive\"),\n\t\t\tOperateCommunitySets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501:1\"),\n\t\t\t},\n\t\t\tPreference: pulumi.Int(20),\n\t\t\tPrependAsPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.RouteMap;\nimport com.pulumi.alicloud.cen.RouteMapArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var sourceRegion = config.get(\"sourceRegion\").orElse(\"cn-hangzhou\");\n final var destinationRegion = config.get(\"destinationRegion\").orElse(\"cn-shanghai\");\n var exampleHz = new Network(\"exampleHz\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSh = new Network(\"exampleSh\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleHzInstanceAttachment = new InstanceAttachment(\"exampleHzInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(exampleHz.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(sourceRegion)\n .build());\n\n var exampleShInstanceAttachment = new InstanceAttachment(\"exampleShInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(exampleSh.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(destinationRegion)\n .build());\n\n var default_ = new RouteMap(\"default\", RouteMapArgs.builder()\n .cenRegionId(sourceRegion)\n .cenId(example.id())\n .description(\"tf_example\")\n .priority(1)\n .transmitDirection(\"RegionIn\")\n .mapResult(\"Permit\")\n .nextPriority(1)\n .sourceRegionIds(sourceRegion)\n .sourceInstanceIds(exampleHzInstanceAttachment.childInstanceId())\n .sourceInstanceIdsReverseMatch(false)\n .destinationInstanceIds(exampleShInstanceAttachment.childInstanceId())\n .destinationInstanceIdsReverseMatch(false)\n .sourceRouteTableIds(exampleHz.routeTableId())\n .destinationRouteTableIds(exampleSh.routeTableId())\n .sourceChildInstanceTypes(\"VPC\")\n .destinationChildInstanceTypes(\"VPC\")\n .destinationCidrBlocks(exampleSh.cidrBlock())\n .cidrMatchMode(\"Include\")\n .routeTypes(\"System\")\n .matchAsns(\"65501\")\n .asPathMatchMode(\"Include\")\n .matchCommunitySets(\"65501:1\")\n .communityMatchMode(\"Include\")\n .communityOperateMode(\"Additive\")\n .operateCommunitySets(\"65501:1\")\n .preference(20)\n .prependAsPaths(\"65501\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n sourceRegion:\n type: string\n default: cn-hangzhou\n destinationRegion:\n type: string\n default: cn-shanghai\nresources:\n exampleHz:\n type: alicloud:vpc:Network\n name: example_hz\n properties:\n vpcName: tf_example\n cidrBlock: 192.168.0.0/16\n exampleSh:\n type: alicloud:vpc:Network\n name: example_sh\n properties:\n vpcName: tf_example\n cidrBlock: 172.16.0.0/12\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleHzInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example_hz\n properties:\n instanceId: ${example.id}\n childInstanceId: ${exampleHz.id}\n childInstanceType: VPC\n childInstanceRegionId: ${sourceRegion}\n exampleShInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example_sh\n properties:\n instanceId: ${example.id}\n childInstanceId: ${exampleSh.id}\n childInstanceType: VPC\n childInstanceRegionId: ${destinationRegion}\n default:\n type: alicloud:cen:RouteMap\n properties:\n cenRegionId: ${sourceRegion}\n cenId: ${example.id}\n description: tf_example\n priority: '1'\n transmitDirection: RegionIn\n mapResult: Permit\n nextPriority: '1'\n sourceRegionIds:\n - ${sourceRegion}\n sourceInstanceIds:\n - ${exampleHzInstanceAttachment.childInstanceId}\n sourceInstanceIdsReverseMatch: 'false'\n destinationInstanceIds:\n - ${exampleShInstanceAttachment.childInstanceId}\n destinationInstanceIdsReverseMatch: 'false'\n sourceRouteTableIds:\n - ${exampleHz.routeTableId}\n destinationRouteTableIds:\n - ${exampleSh.routeTableId}\n sourceChildInstanceTypes:\n - VPC\n destinationChildInstanceTypes:\n - VPC\n destinationCidrBlocks:\n - ${exampleSh.cidrBlock}\n cidrMatchMode: Include\n routeTypes:\n - System\n matchAsns:\n - '65501'\n asPathMatchMode: Include\n matchCommunitySets:\n - 65501:1\n communityMatchMode: Include\n communityOperateMode: Additive\n operateCommunitySets:\n - 65501:1\n preference: '20'\n prependAsPaths:\n - '65501'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN RouteMap can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeMap:RouteMap default \u003ccen_id\u003e:\u003croute_map_id\u003e.\n```\n\n",
+ "description": "This topic provides an overview of the route map function of Cloud Enterprise Networks (CENs).\nYou can use the route map function to filter routes and modify route attributes.\nBy doing so, you can manage the communication between networks attached to a CEN. \n\nFor information about CEN Route Map and how to use it, see [Manage CEN Route Map](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-createcenroutemap).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst sourceRegion = config.get(\"sourceRegion\") || \"cn-hangzhou\";\nconst destinationRegion = config.get(\"destinationRegion\") || \"cn-shanghai\";\nconst exampleHz = new alicloud.vpc.Network(\"example_hz\", {\n vpcName: \"tf_example\",\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSh = new alicloud.vpc.Network(\"example_sh\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleHzInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example_hz\", {\n instanceId: example.id,\n childInstanceId: exampleHz.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: sourceRegion,\n});\nconst exampleShInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example_sh\", {\n instanceId: example.id,\n childInstanceId: exampleSh.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: destinationRegion,\n});\nconst _default = new alicloud.cen.RouteMap(\"default\", {\n cenRegionId: sourceRegion,\n cenId: example.id,\n description: \"tf_example\",\n priority: 1,\n transmitDirection: \"RegionIn\",\n mapResult: \"Permit\",\n nextPriority: 1,\n sourceRegionIds: [sourceRegion],\n sourceInstanceIds: [exampleHzInstanceAttachment.childInstanceId],\n sourceInstanceIdsReverseMatch: false,\n destinationInstanceIds: [exampleShInstanceAttachment.childInstanceId],\n destinationInstanceIdsReverseMatch: false,\n sourceRouteTableIds: [exampleHz.routeTableId],\n destinationRouteTableIds: [exampleSh.routeTableId],\n sourceChildInstanceTypes: [\"VPC\"],\n destinationChildInstanceTypes: [\"VPC\"],\n destinationCidrBlocks: [exampleSh.cidrBlock],\n cidrMatchMode: \"Include\",\n routeTypes: [\"System\"],\n matchAsns: [\"65501\"],\n asPathMatchMode: \"Include\",\n matchCommunitySets: [\"65501:1\"],\n communityMatchMode: \"Include\",\n communityOperateMode: \"Additive\",\n operateCommunitySets: [\"65501:1\"],\n preference: 20,\n prependAsPaths: [\"65501\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nsource_region = config.get(\"sourceRegion\")\nif source_region is None:\n source_region = \"cn-hangzhou\"\ndestination_region = config.get(\"destinationRegion\")\nif destination_region is None:\n destination_region = \"cn-shanghai\"\nexample_hz = alicloud.vpc.Network(\"example_hz\",\n vpc_name=\"tf_example\",\n cidr_block=\"192.168.0.0/16\")\nexample_sh = alicloud.vpc.Network(\"example_sh\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.16.0.0/12\")\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_hz_instance_attachment = alicloud.cen.InstanceAttachment(\"example_hz\",\n instance_id=example.id,\n child_instance_id=example_hz.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=source_region)\nexample_sh_instance_attachment = alicloud.cen.InstanceAttachment(\"example_sh\",\n instance_id=example.id,\n child_instance_id=example_sh.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=destination_region)\ndefault = alicloud.cen.RouteMap(\"default\",\n cen_region_id=source_region,\n cen_id=example.id,\n description=\"tf_example\",\n priority=1,\n transmit_direction=\"RegionIn\",\n map_result=\"Permit\",\n next_priority=1,\n source_region_ids=[source_region],\n source_instance_ids=[example_hz_instance_attachment.child_instance_id],\n source_instance_ids_reverse_match=False,\n destination_instance_ids=[example_sh_instance_attachment.child_instance_id],\n destination_instance_ids_reverse_match=False,\n source_route_table_ids=[example_hz.route_table_id],\n destination_route_table_ids=[example_sh.route_table_id],\n source_child_instance_types=[\"VPC\"],\n destination_child_instance_types=[\"VPC\"],\n destination_cidr_blocks=[example_sh.cidr_block],\n cidr_match_mode=\"Include\",\n route_types=[\"System\"],\n match_asns=[\"65501\"],\n as_path_match_mode=\"Include\",\n match_community_sets=[\"65501:1\"],\n community_match_mode=\"Include\",\n community_operate_mode=\"Additive\",\n operate_community_sets=[\"65501:1\"],\n preference=20,\n prepend_as_paths=[\"65501\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var sourceRegion = config.Get(\"sourceRegion\") ?? \"cn-hangzhou\";\n var destinationRegion = config.Get(\"destinationRegion\") ?? \"cn-shanghai\";\n var exampleHz = new AliCloud.Vpc.Network(\"example_hz\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSh = new AliCloud.Vpc.Network(\"example_sh\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleHzInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example_hz\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = exampleHz.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = sourceRegion,\n });\n\n var exampleShInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example_sh\", new()\n {\n InstanceId = example.Id,\n ChildInstanceId = exampleSh.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = destinationRegion,\n });\n\n var @default = new AliCloud.Cen.RouteMap(\"default\", new()\n {\n CenRegionId = sourceRegion,\n CenId = example.Id,\n Description = \"tf_example\",\n Priority = 1,\n TransmitDirection = \"RegionIn\",\n MapResult = \"Permit\",\n NextPriority = 1,\n SourceRegionIds = new[]\n {\n sourceRegion,\n },\n SourceInstanceIds = new[]\n {\n exampleHzInstanceAttachment.ChildInstanceId,\n },\n SourceInstanceIdsReverseMatch = false,\n DestinationInstanceIds = new[]\n {\n exampleShInstanceAttachment.ChildInstanceId,\n },\n DestinationInstanceIdsReverseMatch = false,\n SourceRouteTableIds = new[]\n {\n exampleHz.RouteTableId,\n },\n DestinationRouteTableIds = new[]\n {\n exampleSh.RouteTableId,\n },\n SourceChildInstanceTypes = new[]\n {\n \"VPC\",\n },\n DestinationChildInstanceTypes = new[]\n {\n \"VPC\",\n },\n DestinationCidrBlocks = new[]\n {\n exampleSh.CidrBlock,\n },\n CidrMatchMode = \"Include\",\n RouteTypes = new[]\n {\n \"System\",\n },\n MatchAsns = new[]\n {\n \"65501\",\n },\n AsPathMatchMode = \"Include\",\n MatchCommunitySets = new[]\n {\n \"65501:1\",\n },\n CommunityMatchMode = \"Include\",\n CommunityOperateMode = \"Additive\",\n OperateCommunitySets = new[]\n {\n \"65501:1\",\n },\n Preference = 20,\n PrependAsPaths = new[]\n {\n \"65501\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tsourceRegion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"sourceRegion\"); param != \"\" {\n\t\t\tsourceRegion = param\n\t\t}\n\t\tdestinationRegion := \"cn-shanghai\"\n\t\tif param := cfg.Get(\"destinationRegion\"); param != \"\" {\n\t\t\tdestinationRegion = param\n\t\t}\n\t\texampleHz, err := vpc.NewNetwork(ctx, \"example_hz\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSh, err := vpc.NewNetwork(ctx, \"example_sh\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleHzInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example_hz\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: exampleHz.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(sourceRegion),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleShInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example_sh\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tChildInstanceId: exampleSh.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(destinationRegion),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteMap(ctx, \"default\", \u0026cen.RouteMapArgs{\n\t\t\tCenRegionId: pulumi.String(sourceRegion),\n\t\t\tCenId: example.ID(),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tTransmitDirection: pulumi.String(\"RegionIn\"),\n\t\t\tMapResult: pulumi.String(\"Permit\"),\n\t\t\tNextPriority: pulumi.Int(1),\n\t\t\tSourceRegionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(sourceRegion),\n\t\t\t},\n\t\t\tSourceInstanceIds: pulumi.StringArray{\n\t\t\t\texampleHzInstanceAttachment.ChildInstanceId,\n\t\t\t},\n\t\t\tSourceInstanceIdsReverseMatch: pulumi.Bool(false),\n\t\t\tDestinationInstanceIds: pulumi.StringArray{\n\t\t\t\texampleShInstanceAttachment.ChildInstanceId,\n\t\t\t},\n\t\t\tDestinationInstanceIdsReverseMatch: pulumi.Bool(false),\n\t\t\tSourceRouteTableIds: pulumi.StringArray{\n\t\t\t\texampleHz.RouteTableId,\n\t\t\t},\n\t\t\tDestinationRouteTableIds: pulumi.StringArray{\n\t\t\t\texampleSh.RouteTableId,\n\t\t\t},\n\t\t\tSourceChildInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VPC\"),\n\t\t\t},\n\t\t\tDestinationChildInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VPC\"),\n\t\t\t},\n\t\t\tDestinationCidrBlocks: pulumi.StringArray{\n\t\t\t\texampleSh.CidrBlock,\n\t\t\t},\n\t\t\tCidrMatchMode: pulumi.String(\"Include\"),\n\t\t\tRouteTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"System\"),\n\t\t\t},\n\t\t\tMatchAsns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501\"),\n\t\t\t},\n\t\t\tAsPathMatchMode: pulumi.String(\"Include\"),\n\t\t\tMatchCommunitySets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501:1\"),\n\t\t\t},\n\t\t\tCommunityMatchMode: pulumi.String(\"Include\"),\n\t\t\tCommunityOperateMode: pulumi.String(\"Additive\"),\n\t\t\tOperateCommunitySets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501:1\"),\n\t\t\t},\n\t\t\tPreference: pulumi.Int(20),\n\t\t\tPrependAsPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"65501\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.RouteMap;\nimport com.pulumi.alicloud.cen.RouteMapArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var sourceRegion = config.get(\"sourceRegion\").orElse(\"cn-hangzhou\");\n final var destinationRegion = config.get(\"destinationRegion\").orElse(\"cn-shanghai\");\n var exampleHz = new Network(\"exampleHz\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSh = new Network(\"exampleSh\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleHzInstanceAttachment = new InstanceAttachment(\"exampleHzInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(exampleHz.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(sourceRegion)\n .build());\n\n var exampleShInstanceAttachment = new InstanceAttachment(\"exampleShInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(example.id())\n .childInstanceId(exampleSh.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(destinationRegion)\n .build());\n\n var default_ = new RouteMap(\"default\", RouteMapArgs.builder()\n .cenRegionId(sourceRegion)\n .cenId(example.id())\n .description(\"tf_example\")\n .priority(1)\n .transmitDirection(\"RegionIn\")\n .mapResult(\"Permit\")\n .nextPriority(1)\n .sourceRegionIds(sourceRegion)\n .sourceInstanceIds(exampleHzInstanceAttachment.childInstanceId())\n .sourceInstanceIdsReverseMatch(false)\n .destinationInstanceIds(exampleShInstanceAttachment.childInstanceId())\n .destinationInstanceIdsReverseMatch(false)\n .sourceRouteTableIds(exampleHz.routeTableId())\n .destinationRouteTableIds(exampleSh.routeTableId())\n .sourceChildInstanceTypes(\"VPC\")\n .destinationChildInstanceTypes(\"VPC\")\n .destinationCidrBlocks(exampleSh.cidrBlock())\n .cidrMatchMode(\"Include\")\n .routeTypes(\"System\")\n .matchAsns(\"65501\")\n .asPathMatchMode(\"Include\")\n .matchCommunitySets(\"65501:1\")\n .communityMatchMode(\"Include\")\n .communityOperateMode(\"Additive\")\n .operateCommunitySets(\"65501:1\")\n .preference(20)\n .prependAsPaths(\"65501\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n sourceRegion:\n type: string\n default: cn-hangzhou\n destinationRegion:\n type: string\n default: cn-shanghai\nresources:\n exampleHz:\n type: alicloud:vpc:Network\n name: example_hz\n properties:\n vpcName: tf_example\n cidrBlock: 192.168.0.0/16\n exampleSh:\n type: alicloud:vpc:Network\n name: example_sh\n properties:\n vpcName: tf_example\n cidrBlock: 172.16.0.0/12\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleHzInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example_hz\n properties:\n instanceId: ${example.id}\n childInstanceId: ${exampleHz.id}\n childInstanceType: VPC\n childInstanceRegionId: ${sourceRegion}\n exampleShInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example_sh\n properties:\n instanceId: ${example.id}\n childInstanceId: ${exampleSh.id}\n childInstanceType: VPC\n childInstanceRegionId: ${destinationRegion}\n default:\n type: alicloud:cen:RouteMap\n properties:\n cenRegionId: ${sourceRegion}\n cenId: ${example.id}\n description: tf_example\n priority: '1'\n transmitDirection: RegionIn\n mapResult: Permit\n nextPriority: '1'\n sourceRegionIds:\n - ${sourceRegion}\n sourceInstanceIds:\n - ${exampleHzInstanceAttachment.childInstanceId}\n sourceInstanceIdsReverseMatch: 'false'\n destinationInstanceIds:\n - ${exampleShInstanceAttachment.childInstanceId}\n destinationInstanceIdsReverseMatch: 'false'\n sourceRouteTableIds:\n - ${exampleHz.routeTableId}\n destinationRouteTableIds:\n - ${exampleSh.routeTableId}\n sourceChildInstanceTypes:\n - VPC\n destinationChildInstanceTypes:\n - VPC\n destinationCidrBlocks:\n - ${exampleSh.cidrBlock}\n cidrMatchMode: Include\n routeTypes:\n - System\n matchAsns:\n - '65501'\n asPathMatchMode: Include\n matchCommunitySets:\n - 65501:1\n communityMatchMode: Include\n communityOperateMode: Additive\n operateCommunitySets:\n - 65501:1\n preference: '20'\n prependAsPaths:\n - '65501'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN RouteMap can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeMap:RouteMap default \u003ccen_id\u003e:\u003croute_map_id\u003e.\n```\n\n",
"properties": {
"asPathMatchMode": {
"type": "string",
@@ -114376,7 +116241,7 @@
}
},
"alicloud:cen/routeService:RouteService": {
- "description": "Provides a CEN Route Service resource. The virtual border routers (VBRs) and Cloud Connect Network (CCN) instances attached to Cloud Enterprise Network (CEN) instances can access the cloud services deployed in VPCs through the CEN instances.\n\nFor information about CEN Route Service and how to use it, see [What is Route Service](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-resolveandrouteserviceincen).\n\n\u003e **NOTE:** Available since v1.99.0.\n\n\u003e **NOTE:** Ensure that at least one VPC in the selected region is attached to the CEN instance.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleRouteService = new alicloud.cen.RouteService(\"example\", {\n accessRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostVpcId: example.id,\n cenId: exampleInstanceAttachment.instanceId,\n host: \"100.118.28.52/32\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\nexample_route_service = alicloud.cen.RouteService(\"example\",\n access_region_id=default.regions[0].id,\n host_region_id=default.regions[0].id,\n host_vpc_id=example.id,\n cen_id=example_instance_attachment.instance_id,\n host=\"100.118.28.52/32\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleRouteService = new AliCloud.Cen.RouteService(\"example\", new()\n {\n AccessRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostVpcId = example.Id,\n CenId = exampleInstanceAttachment.InstanceId,\n Host = \"100.118.28.52/32\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteService(ctx, \"example\", \u0026cen.RouteServiceArgs{\n\t\t\tAccessRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostVpcId: example.ID(),\n\t\t\tCenId: exampleInstanceAttachment.InstanceId,\n\t\t\tHost: pulumi.String(\"100.118.28.52/32\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.RouteService;\nimport com.pulumi.alicloud.cen.RouteServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleRouteService = new RouteService(\"exampleRouteService\", RouteServiceArgs.builder()\n .accessRegionId(default_.regions()[0].id())\n .hostRegionId(default_.regions()[0].id())\n .hostVpcId(example.id())\n .cenId(exampleInstanceAttachment.instanceId())\n .host(\"100.118.28.52/32\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n exampleRouteService:\n type: alicloud:cen:RouteService\n name: example\n properties:\n accessRegionId: ${default.regions[0].id}\n hostRegionId: ${default.regions[0].id}\n hostVpcId: ${example.id}\n cenId: ${exampleInstanceAttachment.instanceId}\n host: 100.118.28.52/32\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN Route Service can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeService:RouteService example cen-ahixm0efqh********:cn-shanghai:100.118.28.52/32:cn-shanghai\n```\n\n",
+ "description": "Provides a CEN Route Service resource. The virtual border routers (VBRs) and Cloud Connect Network (CCN) instances attached to Cloud Enterprise Network (CEN) instances can access the cloud services deployed in VPCs through the CEN instances.\n\nFor information about CEN Route Service and how to use it, see [What is Route Service](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-resolveandrouteserviceincen).\n\n\u003e **NOTE:** Available since v1.99.0.\n\n\u003e **NOTE:** Ensure that at least one VPC in the selected region is attached to the CEN instance.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VPC\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleRouteService = new alicloud.cen.RouteService(\"example\", {\n accessRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n hostVpcId: example.id,\n cenId: exampleInstanceAttachment.instanceId,\n host: \"100.118.28.52/32\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VPC\",\n child_instance_region_id=default.regions[0].id)\nexample_route_service = alicloud.cen.RouteService(\"example\",\n access_region_id=default.regions[0].id,\n host_region_id=default.regions[0].id,\n host_vpc_id=example.id,\n cen_id=example_instance_attachment.instance_id,\n host=\"100.118.28.52/32\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VPC\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleRouteService = new AliCloud.Cen.RouteService(\"example\", new()\n {\n AccessRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n HostVpcId = example.Id,\n CenId = exampleInstanceAttachment.InstanceId,\n Host = \"100.118.28.52/32\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VPC\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewRouteService(ctx, \"example\", \u0026cen.RouteServiceArgs{\n\t\t\tAccessRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tHostVpcId: example.ID(),\n\t\t\tCenId: exampleInstanceAttachment.InstanceId,\n\t\t\tHost: pulumi.String(\"100.118.28.52/32\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.RouteService;\nimport com.pulumi.alicloud.cen.RouteServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VPC\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleRouteService = new RouteService(\"exampleRouteService\", RouteServiceArgs.builder()\n .accessRegionId(default_.regions()[0].id())\n .hostRegionId(default_.regions()[0].id())\n .hostVpcId(example.id())\n .cenId(exampleInstanceAttachment.instanceId())\n .host(\"100.118.28.52/32\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VPC\n childInstanceRegionId: ${default.regions[0].id}\n exampleRouteService:\n type: alicloud:cen:RouteService\n name: example\n properties:\n accessRegionId: ${default.regions[0].id}\n hostRegionId: ${default.regions[0].id}\n hostVpcId: ${example.id}\n cenId: ${exampleInstanceAttachment.instanceId}\n host: 100.118.28.52/32\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN Route Service can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/routeService:RouteService example cen-ahixm0efqh********:cn-shanghai:100.118.28.52/32:cn-shanghai\n```\n\n",
"properties": {
"accessRegionId": {
"type": "string",
@@ -114496,7 +116361,7 @@
}
},
"alicloud:cen/trafficMarkingPolicy:TrafficMarkingPolicy": {
- "description": "Provides a Cloud Enterprise Network (CEN) Traffic Marking Policy resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Traffic Marking Policy and how to use it, see [What is Traffic Marking Policy](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtrafficmarkingpolicy).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTrafficMarkingPolicy = new alicloud.cen.TrafficMarkingPolicy(\"example\", {\n markingDscp: 1,\n priority: 1,\n trafficMarkingPolicyName: \"tf_example\",\n transitRouterId: exampleTransitRouter.transitRouterId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_traffic_marking_policy = alicloud.cen.TrafficMarkingPolicy(\"example\",\n marking_dscp=1,\n priority=1,\n traffic_marking_policy_name=\"tf_example\",\n transit_router_id=example_transit_router.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTrafficMarkingPolicy = new AliCloud.Cen.TrafficMarkingPolicy(\"example\", new()\n {\n MarkingDscp = 1,\n Priority = 1,\n TrafficMarkingPolicyName = \"tf_example\",\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTrafficMarkingPolicy(ctx, \"example\", \u0026cen.TrafficMarkingPolicyArgs{\n\t\t\tMarkingDscp: pulumi.Int(1),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tTrafficMarkingPolicyName: pulumi.String(\"tf_example\"),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TrafficMarkingPolicy;\nimport com.pulumi.alicloud.cen.TrafficMarkingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTrafficMarkingPolicy = new TrafficMarkingPolicy(\"exampleTrafficMarkingPolicy\", TrafficMarkingPolicyArgs.builder()\n .markingDscp(1)\n .priority(1)\n .trafficMarkingPolicyName(\"tf_example\")\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTrafficMarkingPolicy:\n type: alicloud:cen:TrafficMarkingPolicy\n name: example\n properties:\n markingDscp: 1\n priority: 1\n trafficMarkingPolicyName: tf_example\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Traffic Marking Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/trafficMarkingPolicy:TrafficMarkingPolicy example \u003ctransit_router_id\u003e:\u003ctraffic_marking_policy_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Traffic Marking Policy resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Traffic Marking Policy and how to use it, see [What is Traffic Marking Policy](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtrafficmarkingpolicy).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTrafficMarkingPolicy = new alicloud.cen.TrafficMarkingPolicy(\"example\", {\n markingDscp: 1,\n priority: 1,\n trafficMarkingPolicyName: \"tf_example\",\n transitRouterId: exampleTransitRouter.transitRouterId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_traffic_marking_policy = alicloud.cen.TrafficMarkingPolicy(\"example\",\n marking_dscp=1,\n priority=1,\n traffic_marking_policy_name=\"tf_example\",\n transit_router_id=example_transit_router.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTrafficMarkingPolicy = new AliCloud.Cen.TrafficMarkingPolicy(\"example\", new()\n {\n MarkingDscp = 1,\n Priority = 1,\n TrafficMarkingPolicyName = \"tf_example\",\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTrafficMarkingPolicy(ctx, \"example\", \u0026cen.TrafficMarkingPolicyArgs{\n\t\t\tMarkingDscp: pulumi.Int(1),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tTrafficMarkingPolicyName: pulumi.String(\"tf_example\"),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TrafficMarkingPolicy;\nimport com.pulumi.alicloud.cen.TrafficMarkingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTrafficMarkingPolicy = new TrafficMarkingPolicy(\"exampleTrafficMarkingPolicy\", TrafficMarkingPolicyArgs.builder()\n .markingDscp(1)\n .priority(1)\n .trafficMarkingPolicyName(\"tf_example\")\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTrafficMarkingPolicy:\n type: alicloud:cen:TrafficMarkingPolicy\n name: example\n properties:\n markingDscp: 1\n priority: 1\n trafficMarkingPolicyName: tf_example\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Traffic Marking Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/trafficMarkingPolicy:TrafficMarkingPolicy example \u003ctransit_router_id\u003e:\u003ctraffic_marking_policy_id\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -114648,7 +116513,7 @@
}
},
"alicloud:cen/transitRouteTableAggregation:TransitRouteTableAggregation": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Route Table Aggregation resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Route Table Aggregation and how to use it, see [What is Transit Route Table Aggregation](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouteTableAggregation).\n\n\u003e **NOTE:** Available since v1.245.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouteTableAggregation = new alicloud.cen.TransitRouteTableAggregation(\"example\", {\n transitRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouteTableAggregationCidr: \"10.0.0.0/8\",\n transitRouteTableAggregationScope: \"VPC\",\n transitRouteTableAggregationName: \"tf_example\",\n transitRouteTableAggregationDescription: \"tf_example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_route_table_aggregation = alicloud.cen.TransitRouteTableAggregation(\"example\",\n transit_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_route_table_aggregation_cidr=\"10.0.0.0/8\",\n transit_route_table_aggregation_scope=\"VPC\",\n transit_route_table_aggregation_name=\"tf_example\",\n transit_route_table_aggregation_description=\"tf_example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouteTableAggregation = new AliCloud.Cen.TransitRouteTableAggregation(\"example\", new()\n {\n TransitRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouteTableAggregationCidr = \"10.0.0.0/8\",\n TransitRouteTableAggregationScope = \"VPC\",\n TransitRouteTableAggregationName = \"tf_example\",\n TransitRouteTableAggregationDescription = \"tf_example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouteTableAggregation(ctx, \"example\", \u0026cen.TransitRouteTableAggregationArgs{\n\t\t\tTransitRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouteTableAggregationCidr: pulumi.String(\"10.0.0.0/8\"),\n\t\t\tTransitRouteTableAggregationScope: pulumi.String(\"VPC\"),\n\t\t\tTransitRouteTableAggregationName: pulumi.String(\"tf_example\"),\n\t\t\tTransitRouteTableAggregationDescription: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouteTableAggregation;\nimport com.pulumi.alicloud.cen.TransitRouteTableAggregationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouteTableAggregation = new TransitRouteTableAggregation(\"exampleTransitRouteTableAggregation\", TransitRouteTableAggregationArgs.builder()\n .transitRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouteTableAggregationCidr(\"10.0.0.0/8\")\n .transitRouteTableAggregationScope(\"VPC\")\n .transitRouteTableAggregationName(\"tf_example\")\n .transitRouteTableAggregationDescription(\"tf_example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouteTableAggregation:\n type: alicloud:cen:TransitRouteTableAggregation\n name: example\n properties:\n transitRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouteTableAggregationCidr: 10.0.0.0/8\n transitRouteTableAggregationScope: VPC\n transitRouteTableAggregationName: tf_example\n transitRouteTableAggregationDescription: tf_example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Route Table Aggregation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouteTableAggregation:TransitRouteTableAggregation example \u003ctransit_route_table_id\u003e#\u003ctransit_route_table_aggregation_cidr\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Route Table Aggregation resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Route Table Aggregation and how to use it, see [What is Transit Route Table Aggregation](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouteTableAggregation).\n\n\u003e **NOTE:** Available since v1.245.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouteTableAggregation = new alicloud.cen.TransitRouteTableAggregation(\"example\", {\n transitRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouteTableAggregationCidr: \"10.0.0.0/8\",\n transitRouteTableAggregationScope: \"VPC\",\n transitRouteTableAggregationName: \"tf_example\",\n transitRouteTableAggregationDescription: \"tf_example\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_route_table_aggregation = alicloud.cen.TransitRouteTableAggregation(\"example\",\n transit_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_route_table_aggregation_cidr=\"10.0.0.0/8\",\n transit_route_table_aggregation_scope=\"VPC\",\n transit_route_table_aggregation_name=\"tf_example\",\n transit_route_table_aggregation_description=\"tf_example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouteTableAggregation = new AliCloud.Cen.TransitRouteTableAggregation(\"example\", new()\n {\n TransitRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouteTableAggregationCidr = \"10.0.0.0/8\",\n TransitRouteTableAggregationScope = \"VPC\",\n TransitRouteTableAggregationName = \"tf_example\",\n TransitRouteTableAggregationDescription = \"tf_example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouteTableAggregation(ctx, \"example\", \u0026cen.TransitRouteTableAggregationArgs{\n\t\t\tTransitRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouteTableAggregationCidr: pulumi.String(\"10.0.0.0/8\"),\n\t\t\tTransitRouteTableAggregationScope: pulumi.String(\"VPC\"),\n\t\t\tTransitRouteTableAggregationName: pulumi.String(\"tf_example\"),\n\t\t\tTransitRouteTableAggregationDescription: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouteTableAggregation;\nimport com.pulumi.alicloud.cen.TransitRouteTableAggregationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouteTableAggregation = new TransitRouteTableAggregation(\"exampleTransitRouteTableAggregation\", TransitRouteTableAggregationArgs.builder()\n .transitRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouteTableAggregationCidr(\"10.0.0.0/8\")\n .transitRouteTableAggregationScope(\"VPC\")\n .transitRouteTableAggregationName(\"tf_example\")\n .transitRouteTableAggregationDescription(\"tf_example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouteTableAggregation:\n type: alicloud:cen:TransitRouteTableAggregation\n name: example\n properties:\n transitRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouteTableAggregationCidr: 10.0.0.0/8\n transitRouteTableAggregationScope: VPC\n transitRouteTableAggregationName: tf_example\n transitRouteTableAggregationDescription: tf_example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Route Table Aggregation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouteTableAggregation:TransitRouteTableAggregation example \u003ctransit_route_table_id\u003e#\u003ctransit_route_table_aggregation_cidr\u003e\n```\n\n",
"properties": {
"status": {
"type": "string",
@@ -114763,7 +116628,7 @@
}
},
"alicloud:cen/transitRouter:TransitRouter": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router and how to use it, see [What is Transit Router](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouter).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n description: name,\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n cenId: example.id,\n transitRouterName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n description=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n cen_id=example.id,\n transit_router_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(example.id())\n .transitRouterName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n description: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${example.id}\n transitRouterName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouter:TransitRouter example \u003ccen_id\u003e:\u003ctransit_router_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router and how to use it, see [What is Transit Router](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouter).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n description: name,\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n cenId: example.id,\n transitRouterName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n description=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n cen_id=example.id,\n transit_router_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n Description = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(example.id())\n .transitRouterName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n description: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${example.id}\n transitRouterName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouter:TransitRouter example \u003ccen_id\u003e:\u003ctransit_router_id\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -114912,7 +116777,7 @@
}
},
"alicloud:cen/transitRouterCidr:TransitRouterCidr": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Cidr resource.\n\nUsed for Vpn Attachment, Connect Attachment, etc. Assign address segments.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Cidr and how to use it, see [What is Transit Router Cidr](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/createtransitroutercidr).\n\n\u003e **NOTE:** Available since v1.193.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterCidr = new alicloud.cen.TransitRouterCidr(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n cidr: \"192.168.0.0/16\",\n transitRouterCidrName: \"tf_example\",\n description: \"tf_example\",\n publishCidrRoute: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_cidr = alicloud.cen.TransitRouterCidr(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n cidr=\"192.168.0.0/16\",\n transit_router_cidr_name=\"tf_example\",\n description=\"tf_example\",\n publish_cidr_route=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterCidr = new AliCloud.Cen.TransitRouterCidr(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n Cidr = \"192.168.0.0/16\",\n TransitRouterCidrName = \"tf_example\",\n Description = \"tf_example\",\n PublishCidrRoute = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterCidr(ctx, \"example\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tTransitRouterCidrName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPublishCidrRoute: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterCidr = new TransitRouterCidr(\"exampleTransitRouterCidr\", TransitRouterCidrArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .cidr(\"192.168.0.0/16\")\n .transitRouterCidrName(\"tf_example\")\n .description(\"tf_example\")\n .publishCidrRoute(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterCidr:\n type: alicloud:cen:TransitRouterCidr\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n cidr: 192.168.0.0/16\n transitRouterCidrName: tf_example\n description: tf_example\n publishCidrRoute: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Cidr can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterCidr:TransitRouterCidr example \u003ctransit_router_id\u003e:\u003ctransit_router_cidr_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Cidr resource.\n\nUsed for Vpn Attachment, Connect Attachment, etc. Assign address segments.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Cidr and how to use it, see [What is Transit Router Cidr](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/createtransitroutercidr).\n\n\u003e **NOTE:** Available since v1.193.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterCidr = new alicloud.cen.TransitRouterCidr(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n cidr: \"192.168.0.0/16\",\n transitRouterCidrName: \"tf_example\",\n description: \"tf_example\",\n publishCidrRoute: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_cidr = alicloud.cen.TransitRouterCidr(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n cidr=\"192.168.0.0/16\",\n transit_router_cidr_name=\"tf_example\",\n description=\"tf_example\",\n publish_cidr_route=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterCidr = new AliCloud.Cen.TransitRouterCidr(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n Cidr = \"192.168.0.0/16\",\n TransitRouterCidrName = \"tf_example\",\n Description = \"tf_example\",\n PublishCidrRoute = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterCidr(ctx, \"example\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tTransitRouterCidrName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"tf_example\"),\n\t\t\tPublishCidrRoute: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterCidr = new TransitRouterCidr(\"exampleTransitRouterCidr\", TransitRouterCidrArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .cidr(\"192.168.0.0/16\")\n .transitRouterCidrName(\"tf_example\")\n .description(\"tf_example\")\n .publishCidrRoute(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterCidr:\n type: alicloud:cen:TransitRouterCidr\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n cidr: 192.168.0.0/16\n transitRouterCidrName: tf_example\n description: tf_example\n publishCidrRoute: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Cidr can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterCidr:TransitRouterCidr example \u003ctransit_router_id\u003e:\u003ctransit_router_cidr_id\u003e\n```\n\n",
"properties": {
"cidr": {
"type": "string",
@@ -115004,7 +116869,7 @@
}
},
"alicloud:cen/transitRouterEcrAttachment:TransitRouterEcrAttachment": {
- "description": "Provides a CEN Transit Router Ecr Attachment resource.\n\n\n\nFor information about CEN Transit Router Ecr Attachment and how to use it, see [What is Transit Router Ecr Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitrouterecrattachment).\n\n\u003e **NOTE:** Available since v1.235.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst asn = config.get(\"asn\") || \"4200000667\";\nconst defaultO8Hcfx = new alicloud.expressconnect.RouterExpressConnectRouter(\"defaultO8Hcfx\", {\n alibabaSideAsn: asn,\n ecrName: name,\n});\nconst defaultQKBiay = new alicloud.cen.Instance(\"defaultQKBiay\", {cenInstanceName: name});\nconst defaultQa94Y1 = new alicloud.cen.TransitRouter(\"defaultQa94Y1\", {\n cenId: defaultQKBiay.id,\n transitRouterName: name,\n});\nconst current = alicloud.getAccount({});\nconst defaultedPu6c = new alicloud.expressconnect.RouterTrAssociation(\"defaultedPu6c\", {\n associationRegionId: \"cn-hangzhou\",\n ecrId: defaultO8Hcfx.id,\n cenId: defaultQKBiay.id,\n transitRouterId: defaultQa94Y1.transitRouterId,\n transitRouterOwnerId: current.then(current =\u003e current.id),\n});\nconst _default = new alicloud.cen.TransitRouterEcrAttachment(\"default\", {\n ecrId: defaultO8Hcfx.id,\n cenId: defaultedPu6c.cenId,\n transitRouterEcrAttachmentName: name,\n transitRouterAttachmentDescription: name,\n transitRouterId: defaultQa94Y1.transitRouterId,\n ecrOwnerId: current.then(current =\u003e current.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nasn = config.get(\"asn\")\nif asn is None:\n asn = \"4200000667\"\ndefault_o8_hcfx = alicloud.expressconnect.RouterExpressConnectRouter(\"defaultO8Hcfx\",\n alibaba_side_asn=asn,\n ecr_name=name)\ndefault_qk_biay = alicloud.cen.Instance(\"defaultQKBiay\", cen_instance_name=name)\ndefault_qa94_y1 = alicloud.cen.TransitRouter(\"defaultQa94Y1\",\n cen_id=default_qk_biay.id,\n transit_router_name=name)\ncurrent = alicloud.get_account()\ndefaulted_pu6c = alicloud.expressconnect.RouterTrAssociation(\"defaultedPu6c\",\n association_region_id=\"cn-hangzhou\",\n ecr_id=default_o8_hcfx.id,\n cen_id=default_qk_biay.id,\n transit_router_id=default_qa94_y1.transit_router_id,\n transit_router_owner_id=current.id)\ndefault = alicloud.cen.TransitRouterEcrAttachment(\"default\",\n ecr_id=default_o8_hcfx.id,\n cen_id=defaulted_pu6c.cen_id,\n transit_router_ecr_attachment_name=name,\n transit_router_attachment_description=name,\n transit_router_id=default_qa94_y1.transit_router_id,\n ecr_owner_id=current.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var asn = config.Get(\"asn\") ?? \"4200000667\";\n var defaultO8Hcfx = new AliCloud.ExpressConnect.RouterExpressConnectRouter(\"defaultO8Hcfx\", new()\n {\n AlibabaSideAsn = asn,\n EcrName = name,\n });\n\n var defaultQKBiay = new AliCloud.Cen.Instance(\"defaultQKBiay\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultQa94Y1 = new AliCloud.Cen.TransitRouter(\"defaultQa94Y1\", new()\n {\n CenId = defaultQKBiay.Id,\n TransitRouterName = name,\n });\n\n var current = AliCloud.GetAccount.Invoke();\n\n var defaultedPu6c = new AliCloud.ExpressConnect.RouterTrAssociation(\"defaultedPu6c\", new()\n {\n AssociationRegionId = \"cn-hangzhou\",\n EcrId = defaultO8Hcfx.Id,\n CenId = defaultQKBiay.Id,\n TransitRouterId = defaultQa94Y1.TransitRouterId,\n TransitRouterOwnerId = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n var @default = new AliCloud.Cen.TransitRouterEcrAttachment(\"default\", new()\n {\n EcrId = defaultO8Hcfx.Id,\n CenId = defaultedPu6c.CenId,\n TransitRouterEcrAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n TransitRouterId = defaultQa94Y1.TransitRouterId,\n EcrOwnerId = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tasn := \"4200000667\"\n\t\tif param := cfg.Get(\"asn\"); param != \"\" {\n\t\t\tasn = param\n\t\t}\n\t\tdefaultO8Hcfx, err := expressconnect.NewRouterExpressConnectRouter(ctx, \"defaultO8Hcfx\", \u0026expressconnect.RouterExpressConnectRouterArgs{\n\t\t\tAlibabaSideAsn: pulumi.String(asn),\n\t\t\tEcrName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQKBiay, err := cen.NewInstance(ctx, \"defaultQKBiay\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQa94Y1, err := cen.NewTransitRouter(ctx, \"defaultQa94Y1\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultQKBiay.ID(),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultedPu6c, err := expressconnect.NewRouterTrAssociation(ctx, \"defaultedPu6c\", \u0026expressconnect.RouterTrAssociationArgs{\n\t\t\tAssociationRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tEcrId: defaultO8Hcfx.ID(),\n\t\t\tCenId: defaultQKBiay.ID(),\n\t\t\tTransitRouterId: defaultQa94Y1.TransitRouterId,\n\t\t\tTransitRouterOwnerId: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterEcrAttachment(ctx, \"default\", \u0026cen.TransitRouterEcrAttachmentArgs{\n\t\t\tEcrId: defaultO8Hcfx.ID(),\n\t\t\tCenId: defaultedPu6c.CenId,\n\t\t\tTransitRouterEcrAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterId: defaultQa94Y1.TransitRouterId,\n\t\t\tEcrOwnerId: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.expressconnect.RouterExpressConnectRouter;\nimport com.pulumi.alicloud.expressconnect.RouterExpressConnectRouterArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.expressconnect.RouterTrAssociation;\nimport com.pulumi.alicloud.expressconnect.RouterTrAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterEcrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterEcrAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var asn = config.get(\"asn\").orElse(\"4200000667\");\n var defaultO8Hcfx = new RouterExpressConnectRouter(\"defaultO8Hcfx\", RouterExpressConnectRouterArgs.builder()\n .alibabaSideAsn(asn)\n .ecrName(name)\n .build());\n\n var defaultQKBiay = new Instance(\"defaultQKBiay\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultQa94Y1 = new TransitRouter(\"defaultQa94Y1\", TransitRouterArgs.builder()\n .cenId(defaultQKBiay.id())\n .transitRouterName(name)\n .build());\n\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultedPu6c = new RouterTrAssociation(\"defaultedPu6c\", RouterTrAssociationArgs.builder()\n .associationRegionId(\"cn-hangzhou\")\n .ecrId(defaultO8Hcfx.id())\n .cenId(defaultQKBiay.id())\n .transitRouterId(defaultQa94Y1.transitRouterId())\n .transitRouterOwnerId(current.id())\n .build());\n\n var default_ = new TransitRouterEcrAttachment(\"default\", TransitRouterEcrAttachmentArgs.builder()\n .ecrId(defaultO8Hcfx.id())\n .cenId(defaultedPu6c.cenId())\n .transitRouterEcrAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .transitRouterId(defaultQa94Y1.transitRouterId())\n .ecrOwnerId(current.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n asn:\n type: string\n default: '4200000667'\nresources:\n defaultO8Hcfx:\n type: alicloud:expressconnect:RouterExpressConnectRouter\n properties:\n alibabaSideAsn: ${asn}\n ecrName: ${name}\n defaultQKBiay:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultQa94Y1:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultQKBiay.id}\n transitRouterName: ${name}\n defaultedPu6c:\n type: alicloud:expressconnect:RouterTrAssociation\n properties:\n associationRegionId: cn-hangzhou\n ecrId: ${defaultO8Hcfx.id}\n cenId: ${defaultQKBiay.id}\n transitRouterId: ${defaultQa94Y1.transitRouterId}\n transitRouterOwnerId: ${current.id}\n default:\n type: alicloud:cen:TransitRouterEcrAttachment\n properties:\n ecrId: ${defaultO8Hcfx.id}\n cenId: ${defaultedPu6c.cenId}\n transitRouterEcrAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n transitRouterId: ${defaultQa94Y1.transitRouterId}\n ecrOwnerId: ${current.id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN Transit Router Ecr Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterEcrAttachment:TransitRouterEcrAttachment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a CEN Transit Router Ecr Attachment resource.\n\n\n\nFor information about CEN Transit Router Ecr Attachment and how to use it, see [What is Transit Router Ecr Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitrouterecrattachment).\n\n\u003e **NOTE:** Available since v1.235.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst asn = config.get(\"asn\") || \"4200000667\";\nconst defaultO8Hcfx = new alicloud.expressconnect.RouterExpressConnectRouter(\"defaultO8Hcfx\", {\n alibabaSideAsn: asn,\n ecrName: name,\n});\nconst defaultQKBiay = new alicloud.cen.Instance(\"defaultQKBiay\", {cenInstanceName: name});\nconst defaultQa94Y1 = new alicloud.cen.TransitRouter(\"defaultQa94Y1\", {\n cenId: defaultQKBiay.id,\n transitRouterName: name,\n});\nconst current = alicloud.getAccount({});\nconst defaultedPu6c = new alicloud.expressconnect.RouterTrAssociation(\"defaultedPu6c\", {\n associationRegionId: \"cn-hangzhou\",\n ecrId: defaultO8Hcfx.id,\n cenId: defaultQKBiay.id,\n transitRouterId: defaultQa94Y1.transitRouterId,\n transitRouterOwnerId: current.then(current =\u003e current.id),\n});\nconst _default = new alicloud.cen.TransitRouterEcrAttachment(\"default\", {\n ecrId: defaultO8Hcfx.id,\n cenId: defaultedPu6c.cenId,\n transitRouterEcrAttachmentName: name,\n transitRouterAttachmentDescription: name,\n transitRouterId: defaultQa94Y1.transitRouterId,\n ecrOwnerId: current.then(current =\u003e current.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nasn = config.get(\"asn\")\nif asn is None:\n asn = \"4200000667\"\ndefault_o8_hcfx = alicloud.expressconnect.RouterExpressConnectRouter(\"defaultO8Hcfx\",\n alibaba_side_asn=asn,\n ecr_name=name)\ndefault_qk_biay = alicloud.cen.Instance(\"defaultQKBiay\", cen_instance_name=name)\ndefault_qa94_y1 = alicloud.cen.TransitRouter(\"defaultQa94Y1\",\n cen_id=default_qk_biay.id,\n transit_router_name=name)\ncurrent = alicloud.get_account()\ndefaulted_pu6c = alicloud.expressconnect.RouterTrAssociation(\"defaultedPu6c\",\n association_region_id=\"cn-hangzhou\",\n ecr_id=default_o8_hcfx.id,\n cen_id=default_qk_biay.id,\n transit_router_id=default_qa94_y1.transit_router_id,\n transit_router_owner_id=current.id)\ndefault = alicloud.cen.TransitRouterEcrAttachment(\"default\",\n ecr_id=default_o8_hcfx.id,\n cen_id=defaulted_pu6c.cen_id,\n transit_router_ecr_attachment_name=name,\n transit_router_attachment_description=name,\n transit_router_id=default_qa94_y1.transit_router_id,\n ecr_owner_id=current.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var asn = config.Get(\"asn\") ?? \"4200000667\";\n var defaultO8Hcfx = new AliCloud.ExpressConnect.RouterExpressConnectRouter(\"defaultO8Hcfx\", new()\n {\n AlibabaSideAsn = asn,\n EcrName = name,\n });\n\n var defaultQKBiay = new AliCloud.Cen.Instance(\"defaultQKBiay\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultQa94Y1 = new AliCloud.Cen.TransitRouter(\"defaultQa94Y1\", new()\n {\n CenId = defaultQKBiay.Id,\n TransitRouterName = name,\n });\n\n var current = AliCloud.GetAccount.Invoke();\n\n var defaultedPu6c = new AliCloud.ExpressConnect.RouterTrAssociation(\"defaultedPu6c\", new()\n {\n AssociationRegionId = \"cn-hangzhou\",\n EcrId = defaultO8Hcfx.Id,\n CenId = defaultQKBiay.Id,\n TransitRouterId = defaultQa94Y1.TransitRouterId,\n TransitRouterOwnerId = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n var @default = new AliCloud.Cen.TransitRouterEcrAttachment(\"default\", new()\n {\n EcrId = defaultO8Hcfx.Id,\n CenId = defaultedPu6c.CenId,\n TransitRouterEcrAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n TransitRouterId = defaultQa94Y1.TransitRouterId,\n EcrOwnerId = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tasn := \"4200000667\"\n\t\tif param := cfg.Get(\"asn\"); param != \"\" {\n\t\t\tasn = param\n\t\t}\n\t\tdefaultO8Hcfx, err := expressconnect.NewRouterExpressConnectRouter(ctx, \"defaultO8Hcfx\", \u0026expressconnect.RouterExpressConnectRouterArgs{\n\t\t\tAlibabaSideAsn: pulumi.String(asn),\n\t\t\tEcrName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQKBiay, err := cen.NewInstance(ctx, \"defaultQKBiay\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQa94Y1, err := cen.NewTransitRouter(ctx, \"defaultQa94Y1\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultQKBiay.ID(),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultedPu6c, err := expressconnect.NewRouterTrAssociation(ctx, \"defaultedPu6c\", \u0026expressconnect.RouterTrAssociationArgs{\n\t\t\tAssociationRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tEcrId: defaultO8Hcfx.ID(),\n\t\t\tCenId: defaultQKBiay.ID(),\n\t\t\tTransitRouterId: defaultQa94Y1.TransitRouterId,\n\t\t\tTransitRouterOwnerId: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterEcrAttachment(ctx, \"default\", \u0026cen.TransitRouterEcrAttachmentArgs{\n\t\t\tEcrId: defaultO8Hcfx.ID(),\n\t\t\tCenId: defaultedPu6c.CenId,\n\t\t\tTransitRouterEcrAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterId: defaultQa94Y1.TransitRouterId,\n\t\t\tEcrOwnerId: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.expressconnect.RouterExpressConnectRouter;\nimport com.pulumi.alicloud.expressconnect.RouterExpressConnectRouterArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.expressconnect.RouterTrAssociation;\nimport com.pulumi.alicloud.expressconnect.RouterTrAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterEcrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterEcrAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var asn = config.get(\"asn\").orElse(\"4200000667\");\n var defaultO8Hcfx = new RouterExpressConnectRouter(\"defaultO8Hcfx\", RouterExpressConnectRouterArgs.builder()\n .alibabaSideAsn(asn)\n .ecrName(name)\n .build());\n\n var defaultQKBiay = new Instance(\"defaultQKBiay\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultQa94Y1 = new TransitRouter(\"defaultQa94Y1\", TransitRouterArgs.builder()\n .cenId(defaultQKBiay.id())\n .transitRouterName(name)\n .build());\n\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultedPu6c = new RouterTrAssociation(\"defaultedPu6c\", RouterTrAssociationArgs.builder()\n .associationRegionId(\"cn-hangzhou\")\n .ecrId(defaultO8Hcfx.id())\n .cenId(defaultQKBiay.id())\n .transitRouterId(defaultQa94Y1.transitRouterId())\n .transitRouterOwnerId(current.id())\n .build());\n\n var default_ = new TransitRouterEcrAttachment(\"default\", TransitRouterEcrAttachmentArgs.builder()\n .ecrId(defaultO8Hcfx.id())\n .cenId(defaultedPu6c.cenId())\n .transitRouterEcrAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .transitRouterId(defaultQa94Y1.transitRouterId())\n .ecrOwnerId(current.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n asn:\n type: string\n default: '4200000667'\nresources:\n defaultO8Hcfx:\n type: alicloud:expressconnect:RouterExpressConnectRouter\n properties:\n alibabaSideAsn: ${asn}\n ecrName: ${name}\n defaultQKBiay:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultQa94Y1:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultQKBiay.id}\n transitRouterName: ${name}\n defaultedPu6c:\n type: alicloud:expressconnect:RouterTrAssociation\n properties:\n associationRegionId: cn-hangzhou\n ecrId: ${defaultO8Hcfx.id}\n cenId: ${defaultQKBiay.id}\n transitRouterId: ${defaultQa94Y1.transitRouterId}\n transitRouterOwnerId: ${current.id}\n default:\n type: alicloud:cen:TransitRouterEcrAttachment\n properties:\n ecrId: ${defaultO8Hcfx.id}\n cenId: ${defaultedPu6c.cenId}\n transitRouterEcrAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n transitRouterId: ${defaultQa94Y1.transitRouterId}\n ecrOwnerId: ${current.id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN Transit Router Ecr Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterEcrAttachment:TransitRouterEcrAttachment example \u003cid\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -115142,7 +117007,7 @@
}
},
"alicloud:cen/transitRouterGrantAttachment:TransitRouterGrantAttachment": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Grant Attachment resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Grant Attachment and how to use it, see [What is Transit Router Grant Attachment](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/grantinstancetotransitrouter).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouterGrantAttachment = new alicloud.cen.TransitRouterGrantAttachment(\"example\", {\n cenId: exampleInstance.id,\n cenOwnerId: _default.then(_default =\u003e _default.id),\n instanceId: example.id,\n instanceType: \"VPC\",\n orderType: \"PayByCenOwner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router_grant_attachment = alicloud.cen.TransitRouterGrantAttachment(\"example\",\n cen_id=example_instance.id,\n cen_owner_id=default.id,\n instance_id=example.id,\n instance_type=\"VPC\",\n order_type=\"PayByCenOwner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouterGrantAttachment = new AliCloud.Cen.TransitRouterGrantAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n CenOwnerId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n InstanceId = example.Id,\n InstanceType = \"VPC\",\n OrderType = \"PayByCenOwner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterGrantAttachment(ctx, \"example\", \u0026cen.TransitRouterGrantAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tCenOwnerId: pulumi.String(_default.Id),\n\t\t\tInstanceId: example.ID(),\n\t\t\tInstanceType: pulumi.String(\"VPC\"),\n\t\t\tOrderType: pulumi.String(\"PayByCenOwner\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouterGrantAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterGrantAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouterGrantAttachment = new TransitRouterGrantAttachment(\"exampleTransitRouterGrantAttachment\", TransitRouterGrantAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .cenOwnerId(default_.id())\n .instanceId(example.id())\n .instanceType(\"VPC\")\n .orderType(\"PayByCenOwner\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouterGrantAttachment:\n type: alicloud:cen:TransitRouterGrantAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n cenOwnerId: ${default.id}\n instanceId: ${example.id}\n instanceType: VPC\n orderType: PayByCenOwner\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Grant Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterGrantAttachment:TransitRouterGrantAttachment example \u003cinstance_type\u003e:\u003cinstance_id\u003e:\u003ccen_owner_id\u003e:\u003ccen_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Grant Attachment resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Grant Attachment and how to use it, see [What is Transit Router Grant Attachment](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/grantinstancetotransitrouter).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: \"tf_example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouterGrantAttachment = new alicloud.cen.TransitRouterGrantAttachment(\"example\", {\n cenId: exampleInstance.id,\n cenOwnerId: _default.then(_default =\u003e _default.id),\n instanceId: example.id,\n instanceType: \"VPC\",\n orderType: \"PayByCenOwner\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=\"tf_example\",\n cidr_block=\"172.17.3.0/24\")\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router_grant_attachment = alicloud.cen.TransitRouterGrantAttachment(\"example\",\n cen_id=example_instance.id,\n cen_owner_id=default.id,\n instance_id=example.id,\n instance_type=\"VPC\",\n order_type=\"PayByCenOwner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"tf_example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouterGrantAttachment = new AliCloud.Cen.TransitRouterGrantAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n CenOwnerId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n InstanceId = example.Id,\n InstanceType = \"VPC\",\n OrderType = \"PayByCenOwner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"tf_example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterGrantAttachment(ctx, \"example\", \u0026cen.TransitRouterGrantAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tCenOwnerId: pulumi.String(_default.Id),\n\t\t\tInstanceId: example.ID(),\n\t\t\tInstanceType: pulumi.String(\"VPC\"),\n\t\t\tOrderType: pulumi.String(\"PayByCenOwner\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouterGrantAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterGrantAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(\"tf_example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouterGrantAttachment = new TransitRouterGrantAttachment(\"exampleTransitRouterGrantAttachment\", TransitRouterGrantAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .cenOwnerId(default_.id())\n .instanceId(example.id())\n .instanceType(\"VPC\")\n .orderType(\"PayByCenOwner\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: tf_example\n cidrBlock: 172.17.3.0/24\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouterGrantAttachment:\n type: alicloud:cen:TransitRouterGrantAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n cenOwnerId: ${default.id}\n instanceId: ${example.id}\n instanceType: VPC\n orderType: PayByCenOwner\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Grant Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterGrantAttachment:TransitRouterGrantAttachment example \u003cinstance_type\u003e:\u003cinstance_id\u003e:\u003ccen_owner_id\u003e:\u003ccen_id\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -115238,7 +117103,7 @@
}
},
"alicloud:cen/transitRouterMulticastDomain:TransitRouterMulticastDomain": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Multicast Domain resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Multicast Domain and how to use it, see [What is Transit Router Multicast Domain](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutermulticastdomain).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: example.id,\n supportMulticast: true,\n});\nconst _default = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n options: {\n igmpv2Support: \"disable\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example.id,\n support_multicast=True)\ndefault = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name,\n options={\n \"igmpv2_support\": \"disable\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = example.Id,\n SupportMulticast = true,\n });\n\n var @default = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n Options = new AliCloud.Cen.Inputs.TransitRouterMulticastDomainOptionsArgs\n {\n Igmpv2Support = \"disable\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: example.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t\tOptions: \u0026cen.TransitRouterMulticastDomainOptionsArgs{\n\t\t\t\tIgmpv2Support: pulumi.String(\"disable\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterMulticastDomainOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(example.id())\n .supportMulticast(true)\n .build());\n\n var default_ = new TransitRouterMulticastDomain(\"default\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .options(TransitRouterMulticastDomainOptionsArgs.builder()\n .igmpv2Support(\"disable\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${example.id}\n supportMulticast: true\n default:\n type: alicloud:cen:TransitRouterMulticastDomain\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n options:\n igmpv2Support: disable\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Multicast Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomain:TransitRouterMulticastDomain example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Multicast Domain resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Multicast Domain and how to use it, see [What is Transit Router Multicast Domain](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutermulticastdomain).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: example.id,\n supportMulticast: true,\n});\nconst _default = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n options: {\n igmpv2Support: \"disable\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example.id,\n support_multicast=True)\ndefault = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name,\n options={\n \"igmpv2_support\": \"disable\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = example.Id,\n SupportMulticast = true,\n });\n\n var @default = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n Options = new AliCloud.Cen.Inputs.TransitRouterMulticastDomainOptionsArgs\n {\n Igmpv2Support = \"disable\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: example.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t\tOptions: \u0026cen.TransitRouterMulticastDomainOptionsArgs{\n\t\t\t\tIgmpv2Support: pulumi.String(\"disable\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterMulticastDomainOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(example.id())\n .supportMulticast(true)\n .build());\n\n var default_ = new TransitRouterMulticastDomain(\"default\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .options(TransitRouterMulticastDomainOptionsArgs.builder()\n .igmpv2Support(\"disable\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${example.id}\n supportMulticast: true\n default:\n type: alicloud:cen:TransitRouterMulticastDomain\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n options:\n igmpv2Support: disable\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Multicast Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomain:TransitRouterMulticastDomain example \u003cid\u003e\n```\n\n",
"properties": {
"options": {
"$ref": "#/types/alicloud:cen/TransitRouterMulticastDomainOptions:TransitRouterMulticastDomainOptions",
@@ -115347,7 +117212,7 @@
}
},
"alicloud:cen/transitRouterMulticastDomainAssociation:TransitRouterMulticastDomainAssociation": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Multicast Domain Association resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Multicast Domain Association and how to use it, see [What is Transit Router Multicast Domain Association](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-associatetransitroutermulticastdomain).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst zone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: zone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n supportMulticast: true,\n});\nconst exampleTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterMulticastDomain.transitRouterId,\n vpcId: example.id,\n zoneMappings: [{\n zoneId: zone,\n vswitchId: exampleSwitch.id,\n }],\n});\nconst exampleTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\", {\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: exampleSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nzone = default.resources[0].master_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=zone)\nexample_instance = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id,\n support_multicast=True)\nexample_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_multicast_domain.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[{\n \"zone_id\": zone,\n \"vswitch_id\": example_switch.id,\n }])\nexample_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\",\n transit_router_multicast_domain_id=example_transit_router_multicast_domain.id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=example_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var zone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = zone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n SupportMulticast = true,\n });\n\n var exampleTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterMulticastDomain.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = zone,\n VswitchId = exampleSwitch.Id,\n },\n },\n });\n\n var exampleTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"example\", new()\n {\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = exampleSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tzone := _default.Resources[0].MasterZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(zone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t\tTransitRouterId: exampleTransitRouterMulticastDomain.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(zone),\n\t\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomainAssociation(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\n\t\t\tTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.ID(),\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var zone = default_.resources()[0].masterZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(zone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .supportMulticast(true)\n .build());\n\n var exampleTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"exampleTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterMulticastDomain.transitRouterId())\n .vpcId(example.id())\n .zoneMappings(TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(zone)\n .vswitchId(exampleSwitch.id())\n .build())\n .build());\n\n var exampleTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"exampleTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(exampleSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${zone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n supportMulticast: true\n exampleTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterMulticastDomain.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${zone}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: example\n properties:\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${exampleSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n zone: ${default.resources[0].masterZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Multicast Domain Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainAssociation:TransitRouterMulticastDomainAssociation example \u003ctransit_router_multicast_domain_id\u003e:\u003ctransit_router_attachment_id\u003e:\u003cvswitch_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Multicast Domain Association resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Multicast Domain Association and how to use it, see [What is Transit Router Multicast Domain Association](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-associatetransitroutermulticastdomain).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst zone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: zone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n supportMulticast: true,\n});\nconst exampleTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterMulticastDomain.transitRouterId,\n vpcId: example.id,\n zoneMappings: [{\n zoneId: zone,\n vswitchId: exampleSwitch.id,\n }],\n});\nconst exampleTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\", {\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: exampleSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nzone = default.resources[0].master_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=zone)\nexample_instance = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id,\n support_multicast=True)\nexample_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_multicast_domain.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[{\n \"zone_id\": zone,\n \"vswitch_id\": example_switch.id,\n }])\nexample_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\",\n transit_router_multicast_domain_id=example_transit_router_multicast_domain.id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=example_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var zone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = zone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n SupportMulticast = true,\n });\n\n var exampleTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterMulticastDomain.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = zone,\n VswitchId = exampleSwitch.Id,\n },\n },\n });\n\n var exampleTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"example\", new()\n {\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = exampleSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tzone := _default.Resources[0].MasterZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(zone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t\tTransitRouterId: exampleTransitRouterMulticastDomain.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(zone),\n\t\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomainAssociation(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\n\t\t\tTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.ID(),\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var zone = default_.resources()[0].masterZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(zone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .supportMulticast(true)\n .build());\n\n var exampleTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"exampleTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterMulticastDomain.transitRouterId())\n .vpcId(example.id())\n .zoneMappings(TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(zone)\n .vswitchId(exampleSwitch.id())\n .build())\n .build());\n\n var exampleTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"exampleTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(exampleSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${zone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n supportMulticast: true\n exampleTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterMulticastDomain.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${zone}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: example\n properties:\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${exampleSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n zone: ${default.resources[0].masterZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Multicast Domain Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainAssociation:TransitRouterMulticastDomainAssociation example \u003ctransit_router_multicast_domain_id\u003e:\u003ctransit_router_attachment_id\u003e:\u003cvswitch_id\u003e\n```\n\n",
"properties": {
"status": {
"type": "string",
@@ -115421,7 +117286,7 @@
}
},
"alicloud:cen/transitRouterMulticastDomainMember:TransitRouterMulticastDomainMember": {
- "description": "Provides a Cen Transit Router Multicast Domain Member resource.\n\nFor information about Cen Transit Router Multicast Domain Member and how to use it, see [What is Transit Router Multicast Domain Member](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-registertransitroutermulticastgroupmembers).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst zone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: zone,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: example.id,\n});\nconst exampleEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"example\", {\n networkInterfaceName: name,\n vswitchId: exampleSwitch.id,\n primaryIpAddress: exampleSwitch.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n supportMulticast: true,\n});\nconst exampleTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterMulticastDomain.transitRouterId,\n vpcId: example.id,\n zoneMappings: [{\n zoneId: zone,\n vswitchId: exampleSwitch.id,\n }],\n});\nconst exampleTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\", {\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: exampleSwitch.id,\n});\nconst exampleTransitRouterMulticastDomainMember = new alicloud.cen.TransitRouterMulticastDomainMember(\"example\", {\n vpcId: example.id,\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId,\n networkInterfaceId: exampleEcsNetworkInterface.id,\n groupIpAddress: \"239.1.1.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nzone = default.resources[0].master_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=zone)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example.id)\nexample_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"example\",\n network_interface_name=name,\n vswitch_id=example_switch.id,\n primary_ip_address=example_switch.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n security_group_ids=[example_security_group.id])\nexample_instance = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id,\n support_multicast=True)\nexample_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_multicast_domain.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[{\n \"zone_id\": zone,\n \"vswitch_id\": example_switch.id,\n }])\nexample_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\",\n transit_router_multicast_domain_id=example_transit_router_multicast_domain.id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=example_switch.id)\nexample_transit_router_multicast_domain_member = alicloud.cen.TransitRouterMulticastDomainMember(\"example\",\n vpc_id=example.id,\n transit_router_multicast_domain_id=example_transit_router_multicast_domain_association.transit_router_multicast_domain_id,\n network_interface_id=example_ecs_network_interface.id,\n group_ip_address=\"239.1.1.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var zone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = zone,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = example.Id,\n });\n\n var exampleEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"example\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = exampleSwitch.Id,\n PrimaryIpAddress = exampleSwitch.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n SupportMulticast = true,\n });\n\n var exampleTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterMulticastDomain.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = zone,\n VswitchId = exampleSwitch.Id,\n },\n },\n });\n\n var exampleTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"example\", new()\n {\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleTransitRouterMulticastDomainMember = new AliCloud.Cen.TransitRouterMulticastDomainMember(\"example\", new()\n {\n VpcId = example.Id,\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\n NetworkInterfaceId = exampleEcsNetworkInterface.Id,\n GroupIpAddress = \"239.1.1.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf_example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nzone := _default.Resources[0].MasterZones[1];\nexample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\nexampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.1.0/24\"),\nVpcId: example.ID(),\nZoneId: pulumi.String(zone),\n})\nif err != nil {\nreturn err\n}\nexampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: example.ID(),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\nexampleEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"example\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(name),\nVswitchId: exampleSwitch.ID(),\nPrimaryIpAddress: pulumi.String(exampleSwitch.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nSecurityGroupIds: pulumi.StringArray{\nexampleSecurityGroup.ID(),\n},\n})\nif err != nil {\nreturn err\n}\nexampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\nCenInstanceName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\nTransitRouterName: pulumi.String(name),\nCenId: exampleInstance.ID(),\nSupportMulticast: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainArgs{\nTransitRouterId: exampleTransitRouter.TransitRouterId,\nTransitRouterMulticastDomainName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\nCenId: exampleTransitRouter.CenId,\nTransitRouterId: exampleTransitRouterMulticastDomain.TransitRouterId,\nVpcId: example.ID(),\nZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: pulumi.String(zone),\nVswitchId: exampleSwitch.ID(),\n},\n},\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterMulticastDomainAssociation, err := cen.NewTransitRouterMulticastDomainAssociation(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\nTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.ID(),\nTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\nVswitchId: exampleSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cen.NewTransitRouterMulticastDomainMember(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainMemberArgs{\nVpcId: example.ID(),\nTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\nNetworkInterfaceId: exampleEcsNetworkInterface.ID(),\nGroupIpAddress: pulumi.String(\"239.1.1.1\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainMember;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var zone = default_.resources()[0].masterZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(zone)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(example.id())\n .build());\n\n var exampleEcsNetworkInterface = new EcsNetworkInterface(\"exampleEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(exampleSwitch.id())\n .primaryIpAddress(exampleSwitch.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .supportMulticast(true)\n .build());\n\n var exampleTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"exampleTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterMulticastDomain.transitRouterId())\n .vpcId(example.id())\n .zoneMappings(TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(zone)\n .vswitchId(exampleSwitch.id())\n .build())\n .build());\n\n var exampleTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"exampleTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleTransitRouterMulticastDomainMember = new TransitRouterMulticastDomainMember(\"exampleTransitRouterMulticastDomainMember\", TransitRouterMulticastDomainMemberArgs.builder()\n .vpcId(example.id())\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId())\n .networkInterfaceId(exampleEcsNetworkInterface.id())\n .groupIpAddress(\"239.1.1.1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${zone}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${example.id}\n exampleEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: example\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${exampleSwitch.id}\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${exampleSwitch.cidrBlock}\n host: 100\n return: result\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n supportMulticast: true\n exampleTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterMulticastDomain.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${zone}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: example\n properties:\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainMember:\n type: alicloud:cen:TransitRouterMulticastDomainMember\n name: example\n properties:\n vpcId: ${example.id}\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId}\n networkInterfaceId: ${exampleEcsNetworkInterface.id}\n groupIpAddress: 239.1.1.1\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n zone: ${default.resources[0].masterZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCen Transit Router Multicast Domain Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainMember:TransitRouterMulticastDomainMember example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cnetwork_interface_id\u003e\n```\n\n",
+ "description": "Provides a Cen Transit Router Multicast Domain Member resource.\n\nFor information about Cen Transit Router Multicast Domain Member and how to use it, see [What is Transit Router Multicast Domain Member](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-registertransitroutermulticastgroupmembers).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst zone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: zone,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: example.id,\n});\nconst exampleEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"example\", {\n networkInterfaceName: name,\n vswitchId: exampleSwitch.id,\n primaryIpAddress: exampleSwitch.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n supportMulticast: true,\n});\nconst exampleTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterMulticastDomain.transitRouterId,\n vpcId: example.id,\n zoneMappings: [{\n zoneId: zone,\n vswitchId: exampleSwitch.id,\n }],\n});\nconst exampleTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\", {\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: exampleSwitch.id,\n});\nconst exampleTransitRouterMulticastDomainMember = new alicloud.cen.TransitRouterMulticastDomainMember(\"example\", {\n vpcId: example.id,\n transitRouterMulticastDomainId: exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId,\n networkInterfaceId: exampleEcsNetworkInterface.id,\n groupIpAddress: \"239.1.1.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nzone = default.resources[0].master_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=zone)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example.id)\nexample_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"example\",\n network_interface_name=name,\n vswitch_id=example_switch.id,\n primary_ip_address=example_switch.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n security_group_ids=[example_security_group.id])\nexample_instance = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id,\n support_multicast=True)\nexample_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_multicast_domain.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[{\n \"zone_id\": zone,\n \"vswitch_id\": example_switch.id,\n }])\nexample_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"example\",\n transit_router_multicast_domain_id=example_transit_router_multicast_domain.id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=example_switch.id)\nexample_transit_router_multicast_domain_member = alicloud.cen.TransitRouterMulticastDomainMember(\"example\",\n vpc_id=example.id,\n transit_router_multicast_domain_id=example_transit_router_multicast_domain_association.transit_router_multicast_domain_id,\n network_interface_id=example_ecs_network_interface.id,\n group_ip_address=\"239.1.1.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var zone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = zone,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = example.Id,\n });\n\n var exampleEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"example\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = exampleSwitch.Id,\n PrimaryIpAddress = exampleSwitch.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n SupportMulticast = true,\n });\n\n var exampleTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterMulticastDomain.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = zone,\n VswitchId = exampleSwitch.Id,\n },\n },\n });\n\n var exampleTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"example\", new()\n {\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = exampleSwitch.Id,\n });\n\n var exampleTransitRouterMulticastDomainMember = new AliCloud.Cen.TransitRouterMulticastDomainMember(\"example\", new()\n {\n VpcId = example.Id,\n TransitRouterMulticastDomainId = exampleTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\n NetworkInterfaceId = exampleEcsNetworkInterface.Id,\n GroupIpAddress = \"239.1.1.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf_example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nzone := _default.Resources[0].MasterZones[1];\nexample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\nexampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.1.0/24\"),\nVpcId: example.ID(),\nZoneId: pulumi.String(zone),\n})\nif err != nil {\nreturn err\n}\nexampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: example.ID(),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\nexampleEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"example\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(name),\nVswitchId: exampleSwitch.ID(),\nPrimaryIpAddress: pulumi.String(exampleSwitch.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nSecurityGroupIds: pulumi.StringArray{\nexampleSecurityGroup.ID(),\n},\n})\nif err != nil {\nreturn err\n}\nexampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\nCenInstanceName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\nTransitRouterName: pulumi.String(name),\nCenId: exampleInstance.ID(),\nSupportMulticast: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainArgs{\nTransitRouterId: exampleTransitRouter.TransitRouterId,\nTransitRouterMulticastDomainName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\nCenId: exampleTransitRouter.CenId,\nTransitRouterId: exampleTransitRouterMulticastDomain.TransitRouterId,\nVpcId: example.ID(),\nZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: pulumi.String(zone),\nVswitchId: exampleSwitch.ID(),\n},\n},\n})\nif err != nil {\nreturn err\n}\nexampleTransitRouterMulticastDomainAssociation, err := cen.NewTransitRouterMulticastDomainAssociation(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\nTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomain.ID(),\nTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\nVswitchId: exampleSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cen.NewTransitRouterMulticastDomainMember(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainMemberArgs{\nVpcId: example.ID(),\nTransitRouterMulticastDomainId: exampleTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\nNetworkInterfaceId: exampleEcsNetworkInterface.ID(),\nGroupIpAddress: pulumi.String(\"239.1.1.1\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainMember;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var zone = default_.resources()[0].masterZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(zone)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(example.id())\n .build());\n\n var exampleEcsNetworkInterface = new EcsNetworkInterface(\"exampleEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(exampleSwitch.id())\n .primaryIpAddress(exampleSwitch.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .supportMulticast(true)\n .build());\n\n var exampleTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"exampleTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterMulticastDomain.transitRouterId())\n .vpcId(example.id())\n .zoneMappings(TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(zone)\n .vswitchId(exampleSwitch.id())\n .build())\n .build());\n\n var exampleTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"exampleTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(exampleSwitch.id())\n .build());\n\n var exampleTransitRouterMulticastDomainMember = new TransitRouterMulticastDomainMember(\"exampleTransitRouterMulticastDomainMember\", TransitRouterMulticastDomainMemberArgs.builder()\n .vpcId(example.id())\n .transitRouterMulticastDomainId(exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId())\n .networkInterfaceId(exampleEcsNetworkInterface.id())\n .groupIpAddress(\"239.1.1.1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${zone}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${example.id}\n exampleEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: example\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${exampleSwitch.id}\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${exampleSwitch.cidrBlock}\n host: 100\n return: result\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n supportMulticast: true\n exampleTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterMulticastDomain.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${zone}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: example\n properties:\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${exampleSwitch.id}\n exampleTransitRouterMulticastDomainMember:\n type: alicloud:cen:TransitRouterMulticastDomainMember\n name: example\n properties:\n vpcId: ${example.id}\n transitRouterMulticastDomainId: ${exampleTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId}\n networkInterfaceId: ${exampleEcsNetworkInterface.id}\n groupIpAddress: 239.1.1.1\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n zone: ${default.resources[0].masterZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCen Transit Router Multicast Domain Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainMember:TransitRouterMulticastDomainMember example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cnetwork_interface_id\u003e\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -115522,7 +117387,7 @@
}
},
"alicloud:cen/transitRouterMulticastDomainPeerMember:TransitRouterMulticastDomainPeerMember": {
- "description": "Provides a Cen Transit Router Multicast Domain Peer Member resource.\n\nFor information about Cen Transit Router Multicast Domain Peer Member and how to use it, see [What is Transit Router Multicast Domain Peer Member](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-deregistertransitroutermulticastgroupmembers).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new alicloud.cen.Instance(\"default\", {cenInstanceName: name});\nconst defaultBandwidthPackage = new alicloud.cen.BandwidthPackage(\"default\", {\n bandwidth: 5,\n cenBandwidthPackageName: name,\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst defaultBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"default\", {\n instanceId: _default.id,\n bandwidthPackageId: defaultBandwidthPackage.id,\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n supportMulticast: true,\n});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n supportMulticast: true,\n});\nconst defaultTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"default\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n transitRouterId: defaultTransitRouter.transitRouterId,\n peerTransitRouterId: peer.transitRouterId,\n peerTransitRouterRegionId: \"cn-qingdao\",\n cenBandwidthPackageId: defaultBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\nconst defaultTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: defaultTransitRouterPeerAttachment.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst peerTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"peer\", {\n transitRouterId: defaultTransitRouterPeerAttachment.peerTransitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst defaultTransitRouterMulticastDomainPeerMember = new alicloud.cen.TransitRouterMulticastDomainPeerMember(\"default\", {\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.id,\n peerTransitRouterMulticastDomainId: peerTransitRouterMulticastDomain.id,\n groupIpAddress: \"224.1.0.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.Instance(\"default\", cen_instance_name=name)\ndefault_bandwidth_package = alicloud.cen.BandwidthPackage(\"default\",\n bandwidth=5,\n cen_bandwidth_package_name=name,\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\ndefault_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"default\",\n instance_id=default.id,\n bandwidth_package_id=default_bandwidth_package.id)\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n support_multicast=True)\npeer = alicloud.cen.TransitRouter(\"peer\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n support_multicast=True)\ndefault_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"default\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n transit_router_id=default_transit_router.transit_router_id,\n peer_transit_router_id=peer.transit_router_id,\n peer_transit_router_region_id=\"cn-qingdao\",\n cen_bandwidth_package_id=default_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\ndefault_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=default_transit_router_peer_attachment.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\npeer_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"peer\",\n transit_router_id=default_transit_router_peer_attachment.peer_transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\ndefault_transit_router_multicast_domain_peer_member = alicloud.cen.TransitRouterMulticastDomainPeerMember(\"default\",\n transit_router_multicast_domain_id=default_transit_router_multicast_domain.id,\n peer_transit_router_multicast_domain_id=peer_transit_router_multicast_domain.id,\n group_ip_address=\"224.1.0.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"default\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = name,\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var defaultBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n BandwidthPackageId = defaultBandwidthPackage.Id,\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n SupportMulticast = true,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"default\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n PeerTransitRouterId = peer.TransitRouterId,\n PeerTransitRouterRegionId = \"cn-qingdao\",\n CenBandwidthPackageId = defaultBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n var defaultTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = defaultTransitRouterPeerAttachment.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var peerTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"peer\", new()\n {\n TransitRouterId = defaultTransitRouterPeerAttachment.PeerTransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var defaultTransitRouterMulticastDomainPeerMember = new AliCloud.Cen.TransitRouterMulticastDomainPeerMember(\"default\", new()\n {\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomain.Id,\n PeerTransitRouterMulticastDomainId = peerTransitRouterMulticastDomain.Id,\n GroupIpAddress = \"224.1.0.0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"default\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(name),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"default\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tBandwidthPackageId: defaultBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterPeerAttachment, err := cen.NewTransitRouterPeerAttachment(ctx, \"default\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(\"cn-qingdao\"),\n\t\t\tCenBandwidthPackageId: defaultBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: defaultTransitRouterPeerAttachment.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeerTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"peer\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: defaultTransitRouterPeerAttachment.PeerTransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomainPeerMember(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainPeerMemberArgs{\n\t\t\tTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.ID(),\n\t\t\tPeerTransitRouterMulticastDomainId: peerTransitRouterMulticastDomain.ID(),\n\t\t\tGroupIpAddress: pulumi.String(\"224.1.0.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainPeerMember;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainPeerMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultBandwidthPackage = new BandwidthPackage(\"defaultBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(name)\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var defaultBandwidthPackageAttachment = new BandwidthPackageAttachment(\"defaultBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(default_.id())\n .bandwidthPackageId(defaultBandwidthPackage.id())\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .supportMulticast(true)\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"defaultTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .peerTransitRouterId(peer.transitRouterId())\n .peerTransitRouterRegionId(\"cn-qingdao\")\n .cenBandwidthPackageId(defaultBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n var defaultTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"defaultTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouterPeerAttachment.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var peerTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"peerTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouterPeerAttachment.peerTransitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var defaultTransitRouterMulticastDomainPeerMember = new TransitRouterMulticastDomainPeerMember(\"defaultTransitRouterMulticastDomainPeerMember\", TransitRouterMulticastDomainPeerMemberArgs.builder()\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomain.id())\n .peerTransitRouterMulticastDomainId(peerTransitRouterMulticastDomain.id())\n .groupIpAddress(\"224.1.0.0\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: default\n properties:\n bandwidth: 5\n cenBandwidthPackageName: ${name}\n geographicRegionAId: China\n geographicRegionBId: China\n defaultBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: default\n properties:\n instanceId: ${default.id}\n bandwidthPackageId: ${defaultBandwidthPackage.id}\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n supportMulticast: true\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n supportMulticast: true\n defaultTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: default\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n peerTransitRouterId: ${peer.transitRouterId}\n peerTransitRouterRegionId: cn-qingdao\n cenBandwidthPackageId: ${defaultBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n defaultTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: default\n properties:\n transitRouterId: ${defaultTransitRouterPeerAttachment.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n peerTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: peer\n properties:\n transitRouterId: ${defaultTransitRouterPeerAttachment.peerTransitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n defaultTransitRouterMulticastDomainPeerMember:\n type: alicloud:cen:TransitRouterMulticastDomainPeerMember\n name: default\n properties:\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomain.id}\n peerTransitRouterMulticastDomainId: ${peerTransitRouterMulticastDomain.id}\n groupIpAddress: 224.1.0.0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCen Transit Router Multicast Domain Peer Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainPeerMember:TransitRouterMulticastDomainPeerMember example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cpeer_transit_router_multicast_domain_id\u003e\n```\n\n",
+ "description": "Provides a Cen Transit Router Multicast Domain Peer Member resource.\n\nFor information about Cen Transit Router Multicast Domain Peer Member and how to use it, see [What is Transit Router Multicast Domain Peer Member](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-deregistertransitroutermulticastgroupmembers).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new alicloud.cen.Instance(\"default\", {cenInstanceName: name});\nconst defaultBandwidthPackage = new alicloud.cen.BandwidthPackage(\"default\", {\n bandwidth: 5,\n cenBandwidthPackageName: name,\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst defaultBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"default\", {\n instanceId: _default.id,\n bandwidthPackageId: defaultBandwidthPackage.id,\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n supportMulticast: true,\n});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n supportMulticast: true,\n});\nconst defaultTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"default\", {\n cenId: defaultBandwidthPackageAttachment.instanceId,\n transitRouterId: defaultTransitRouter.transitRouterId,\n peerTransitRouterId: peer.transitRouterId,\n peerTransitRouterRegionId: \"cn-qingdao\",\n cenBandwidthPackageId: defaultBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\nconst defaultTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: defaultTransitRouterPeerAttachment.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst peerTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"peer\", {\n transitRouterId: defaultTransitRouterPeerAttachment.peerTransitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst defaultTransitRouterMulticastDomainPeerMember = new alicloud.cen.TransitRouterMulticastDomainPeerMember(\"default\", {\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.id,\n peerTransitRouterMulticastDomainId: peerTransitRouterMulticastDomain.id,\n groupIpAddress: \"224.1.0.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.Instance(\"default\", cen_instance_name=name)\ndefault_bandwidth_package = alicloud.cen.BandwidthPackage(\"default\",\n bandwidth=5,\n cen_bandwidth_package_name=name,\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\ndefault_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"default\",\n instance_id=default.id,\n bandwidth_package_id=default_bandwidth_package.id)\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n support_multicast=True)\npeer = alicloud.cen.TransitRouter(\"peer\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n support_multicast=True)\ndefault_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"default\",\n cen_id=default_bandwidth_package_attachment.instance_id,\n transit_router_id=default_transit_router.transit_router_id,\n peer_transit_router_id=peer.transit_router_id,\n peer_transit_router_region_id=\"cn-qingdao\",\n cen_bandwidth_package_id=default_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\ndefault_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=default_transit_router_peer_attachment.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\npeer_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"peer\",\n transit_router_id=default_transit_router_peer_attachment.peer_transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\ndefault_transit_router_multicast_domain_peer_member = alicloud.cen.TransitRouterMulticastDomainPeerMember(\"default\",\n transit_router_multicast_domain_id=default_transit_router_multicast_domain.id,\n peer_transit_router_multicast_domain_id=peer_transit_router_multicast_domain.id,\n group_ip_address=\"224.1.0.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"default\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = name,\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var defaultBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"default\", new()\n {\n InstanceId = @default.Id,\n BandwidthPackageId = defaultBandwidthPackage.Id,\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n SupportMulticast = true,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"default\", new()\n {\n CenId = defaultBandwidthPackageAttachment.InstanceId,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n PeerTransitRouterId = peer.TransitRouterId,\n PeerTransitRouterRegionId = \"cn-qingdao\",\n CenBandwidthPackageId = defaultBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n var defaultTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = defaultTransitRouterPeerAttachment.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var peerTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"peer\", new()\n {\n TransitRouterId = defaultTransitRouterPeerAttachment.PeerTransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var defaultTransitRouterMulticastDomainPeerMember = new AliCloud.Cen.TransitRouterMulticastDomainPeerMember(\"default\", new()\n {\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomain.Id,\n PeerTransitRouterMulticastDomainId = peerTransitRouterMulticastDomain.Id,\n GroupIpAddress = \"224.1.0.0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"default\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(name),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"default\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tBandwidthPackageId: defaultBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tSupportMulticast: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterPeerAttachment, err := cen.NewTransitRouterPeerAttachment(ctx, \"default\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: defaultBandwidthPackageAttachment.InstanceId,\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(\"cn-qingdao\"),\n\t\t\tCenBandwidthPackageId: defaultBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: defaultTransitRouterPeerAttachment.TransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeerTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"peer\", \u0026cen.TransitRouterMulticastDomainArgs{\n\t\t\tTransitRouterId: defaultTransitRouterPeerAttachment.PeerTransitRouterId,\n\t\t\tTransitRouterMulticastDomainName: pulumi.String(name),\n\t\t\tTransitRouterMulticastDomainDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterMulticastDomainPeerMember(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainPeerMemberArgs{\n\t\t\tTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.ID(),\n\t\t\tPeerTransitRouterMulticastDomainId: peerTransitRouterMulticastDomain.ID(),\n\t\t\tGroupIpAddress: pulumi.String(\"224.1.0.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainPeerMember;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainPeerMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultBandwidthPackage = new BandwidthPackage(\"defaultBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(name)\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var defaultBandwidthPackageAttachment = new BandwidthPackageAttachment(\"defaultBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(default_.id())\n .bandwidthPackageId(defaultBandwidthPackage.id())\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .supportMulticast(true)\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"defaultTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(defaultBandwidthPackageAttachment.instanceId())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .peerTransitRouterId(peer.transitRouterId())\n .peerTransitRouterRegionId(\"cn-qingdao\")\n .cenBandwidthPackageId(defaultBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n var defaultTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"defaultTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouterPeerAttachment.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var peerTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"peerTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouterPeerAttachment.peerTransitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var defaultTransitRouterMulticastDomainPeerMember = new TransitRouterMulticastDomainPeerMember(\"defaultTransitRouterMulticastDomainPeerMember\", TransitRouterMulticastDomainPeerMemberArgs.builder()\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomain.id())\n .peerTransitRouterMulticastDomainId(peerTransitRouterMulticastDomain.id())\n .groupIpAddress(\"224.1.0.0\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: default\n properties:\n bandwidth: 5\n cenBandwidthPackageName: ${name}\n geographicRegionAId: China\n geographicRegionBId: China\n defaultBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: default\n properties:\n instanceId: ${default.id}\n bandwidthPackageId: ${defaultBandwidthPackage.id}\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n supportMulticast: true\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n supportMulticast: true\n defaultTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: default\n properties:\n cenId: ${defaultBandwidthPackageAttachment.instanceId}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n peerTransitRouterId: ${peer.transitRouterId}\n peerTransitRouterRegionId: cn-qingdao\n cenBandwidthPackageId: ${defaultBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n defaultTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: default\n properties:\n transitRouterId: ${defaultTransitRouterPeerAttachment.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n peerTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: peer\n properties:\n transitRouterId: ${defaultTransitRouterPeerAttachment.peerTransitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n defaultTransitRouterMulticastDomainPeerMember:\n type: alicloud:cen:TransitRouterMulticastDomainPeerMember\n name: default\n properties:\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomain.id}\n peerTransitRouterMulticastDomainId: ${peerTransitRouterMulticastDomain.id}\n groupIpAddress: 224.1.0.0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCen Transit Router Multicast Domain Peer Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainPeerMember:TransitRouterMulticastDomainPeerMember example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cpeer_transit_router_multicast_domain_id\u003e\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -115608,7 +117473,7 @@
}
},
"alicloud:cen/transitRouterMulticastDomainSource:TransitRouterMulticastDomainSource": {
- "description": "Provides a Cen Transit Router Multicast Domain Source resource.\n\nFor information about Cen Transit Router Multicast Domain Source and how to use it, see [What is Transit Router Multicast Domain Source](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-registertransitroutermulticastgroupsources).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMaster = new alicloud.vpc.Switch(\"default_master\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.1.0/24\",\n zoneId: \"cn-hangzhou-i\",\n});\nconst defaultSlave = new alicloud.vpc.Switch(\"default_slave\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.2.0/24\",\n zoneId: \"cn-hangzhou-j\",\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: defaultInstance.id,\n supportMulticast: true,\n});\nconst defaultTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"default\", {\n cenId: defaultInstance.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n vpcId: defaultNetwork.id,\n zoneMappings: [\n {\n zoneId: defaultMaster.zoneId,\n vswitchId: defaultMaster.id,\n },\n {\n zoneId: defaultSlave.zoneId,\n vswitchId: defaultSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultMaster.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic test\",\n primaryIpAddress: defaultMaster.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n tags: {\n Created: \"TF\",\n For: \"Test\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst defaultTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"default\", {\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: defaultTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: defaultMaster.id,\n});\nconst example = new alicloud.cen.TransitRouterMulticastDomainSource(\"example\", {\n vpcId: defaultNetwork.id,\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId,\n networkInterfaceId: defaultEcsNetworkInterface.id,\n groupIpAddress: \"239.1.1.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_master = alicloud.vpc.Switch(\"default_master\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.1.0/24\",\n zone_id=\"cn-hangzhou-i\")\ndefault_slave = alicloud.vpc.Switch(\"default_slave\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.2.0/24\",\n zone_id=\"cn-hangzhou-j\")\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default_instance.id,\n support_multicast=True)\ndefault_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"default\",\n cen_id=default_instance.id,\n transit_router_id=default_transit_router.transit_router_id,\n vpc_id=default_network.id,\n zone_mappings=[\n {\n \"zone_id\": default_master.zone_id,\n \"vswitch_id\": default_master.id,\n },\n {\n \"zone_id\": default_slave.zone_id,\n \"vswitch_id\": default_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_master.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic test\",\n primary_ip_address=default_master.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n tags={\n \"Created\": \"TF\",\n \"For\": \"Test\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\ndefault_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"default\",\n transit_router_multicast_domain_id=default_transit_router_multicast_domain.id,\n transit_router_attachment_id=default_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=default_master.id)\nexample = alicloud.cen.TransitRouterMulticastDomainSource(\"example\",\n vpc_id=default_network.id,\n transit_router_multicast_domain_id=default_transit_router_multicast_domain_association.transit_router_multicast_domain_id,\n network_interface_id=default_ecs_network_interface.id,\n group_ip_address=\"239.1.1.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMaster = new AliCloud.Vpc.Switch(\"default_master\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.1.0/24\",\n ZoneId = \"cn-hangzhou-i\",\n });\n\n var defaultSlave = new AliCloud.Vpc.Switch(\"default_slave\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.2.0/24\",\n ZoneId = \"cn-hangzhou-j\",\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = defaultInstance.Id,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"default\", new()\n {\n CenId = defaultInstance.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n VpcId = defaultNetwork.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = defaultMaster.ZoneId,\n VswitchId = defaultMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = defaultSlave.ZoneId,\n VswitchId = defaultSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultMaster.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic test\",\n PrimaryIpAddress = defaultMaster.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Test\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var defaultTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"default\", new()\n {\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = defaultMaster.Id,\n });\n\n var example = new AliCloud.Cen.TransitRouterMulticastDomainSource(\"example\", new()\n {\n VpcId = defaultNetwork.Id,\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n GroupIpAddress = \"239.1.1.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf_example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultMaster, err := vpc.NewSwitch(ctx, \"default_master\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.1.0/24\"),\nZoneId: pulumi.String(\"cn-hangzhou-i\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSlave, err := vpc.NewSwitch(ctx, \"default_slave\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.2.0/24\"),\nZoneId: pulumi.String(\"cn-hangzhou-j\"),\n})\nif err != nil {\nreturn err\n}\ndefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\nCenInstanceName: pulumi.String(name),\nProtectionLevel: pulumi.String(\"REDUCED\"),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\nCenId: defaultInstance.ID(),\nSupportMulticast: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"default\", \u0026cen.TransitRouterVpcAttachmentArgs{\nCenId: defaultInstance.ID(),\nTransitRouterId: defaultTransitRouter.TransitRouterId,\nVpcId: defaultNetwork.ID(),\nZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: defaultMaster.ZoneId,\nVswitchId: defaultMaster.ID(),\n},\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: defaultSlave.ZoneId,\nVswitchId: defaultSlave.ID(),\n},\n},\nTransitRouterAttachmentName: pulumi.String(name),\nTransitRouterAttachmentDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\ndefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\nStatus: pulumi.StringRef(\"OK\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\nTransitRouterId: defaultTransitRouter.TransitRouterId,\nTransitRouterMulticastDomainName: pulumi.String(name),\nTransitRouterMulticastDomainDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\ndefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(name),\nVswitchId: defaultMaster.ID(),\nSecurityGroupIds: pulumi.StringArray{\ndefaultSecurityGroup.ID(),\n},\nDescription: pulumi.String(\"Basic test\"),\nPrimaryIpAddress: pulumi.String(defaultMaster.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"Test\"),\n},\nResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouterMulticastDomainAssociation, err := cen.NewTransitRouterMulticastDomainAssociation(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\nTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.ID(),\nTransitRouterAttachmentId: defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\nVswitchId: defaultMaster.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cen.NewTransitRouterMulticastDomainSource(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainSourceArgs{\nVpcId: defaultNetwork.ID(),\nTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\nNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\nGroupIpAddress: pulumi.String(\"239.1.1.1\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainSource;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMaster = new Switch(\"defaultMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.1.0/24\")\n .zoneId(\"cn-hangzhou-i\")\n .build());\n\n var defaultSlave = new Switch(\"defaultSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.2.0/24\")\n .zoneId(\"cn-hangzhou-j\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(defaultInstance.id())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"defaultTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(defaultInstance.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .vpcId(defaultNetwork.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(defaultMaster.zoneId())\n .vswitchId(defaultMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(defaultSlave.zoneId())\n .vswitchId(defaultSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"defaultTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultMaster.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic test\")\n .primaryIpAddress(defaultMaster.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Test\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var defaultTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"defaultTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(defaultTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(defaultMaster.id())\n .build());\n\n var example = new TransitRouterMulticastDomainSource(\"example\", TransitRouterMulticastDomainSourceArgs.builder()\n .vpcId(defaultNetwork.id())\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId())\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .groupIpAddress(\"239.1.1.1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMaster:\n type: alicloud:vpc:Switch\n name: default_master\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.1.0/24\n zoneId: cn-hangzhou-i\n defaultSlave:\n type: alicloud:vpc:Switch\n name: default_slave\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.2.0/24\n zoneId: cn-hangzhou-j\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${defaultInstance.id}\n supportMulticast: true\n defaultTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: default\n properties:\n cenId: ${defaultInstance.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n vpcId: ${defaultNetwork.id}\n zoneMappings:\n - zoneId: ${defaultMaster.zoneId}\n vswitchId: ${defaultMaster.id}\n - zoneId: ${defaultSlave.zoneId}\n vswitchId: ${defaultSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultMaster.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic test\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${defaultMaster.cidrBlock}\n host: 100\n return: result\n tags:\n Created: TF\n For: Test\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n defaultTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: default\n properties:\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${defaultTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${defaultMaster.id}\n example:\n type: alicloud:cen:TransitRouterMulticastDomainSource\n properties:\n vpcId: ${defaultNetwork.id}\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId}\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n groupIpAddress: 239.1.1.1\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCen Transit Router Multicast Domain Source can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainSource:TransitRouterMulticastDomainSource example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cnetwork_interface_id\u003e\n```\n\n",
+ "description": "Provides a Cen Transit Router Multicast Domain Source resource.\n\nFor information about Cen Transit Router Multicast Domain Source and how to use it, see [What is Transit Router Multicast Domain Source](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-registertransitroutermulticastgroupsources).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMaster = new alicloud.vpc.Switch(\"default_master\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.1.0/24\",\n zoneId: \"cn-hangzhou-i\",\n});\nconst defaultSlave = new alicloud.vpc.Switch(\"default_slave\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.2.0/24\",\n zoneId: \"cn-hangzhou-j\",\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n cenId: defaultInstance.id,\n supportMulticast: true,\n});\nconst defaultTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"default\", {\n cenId: defaultInstance.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n vpcId: defaultNetwork.id,\n zoneMappings: [\n {\n zoneId: defaultMaster.zoneId,\n vswitchId: defaultMaster.id,\n },\n {\n zoneId: defaultSlave.zoneId,\n vswitchId: defaultSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultTransitRouterMulticastDomain = new alicloud.cen.TransitRouterMulticastDomain(\"default\", {\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterMulticastDomainName: name,\n transitRouterMulticastDomainDescription: name,\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultMaster.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic test\",\n primaryIpAddress: defaultMaster.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n tags: {\n Created: \"TF\",\n For: \"Test\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst defaultTransitRouterMulticastDomainAssociation = new alicloud.cen.TransitRouterMulticastDomainAssociation(\"default\", {\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.id,\n transitRouterAttachmentId: defaultTransitRouterVpcAttachment.transitRouterAttachmentId,\n vswitchId: defaultMaster.id,\n});\nconst example = new alicloud.cen.TransitRouterMulticastDomainSource(\"example\", {\n vpcId: defaultNetwork.id,\n transitRouterMulticastDomainId: defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId,\n networkInterfaceId: defaultEcsNetworkInterface.id,\n groupIpAddress: \"239.1.1.1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_master = alicloud.vpc.Switch(\"default_master\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.1.0/24\",\n zone_id=\"cn-hangzhou-i\")\ndefault_slave = alicloud.vpc.Switch(\"default_slave\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.2.0/24\",\n zone_id=\"cn-hangzhou-j\")\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n cen_id=default_instance.id,\n support_multicast=True)\ndefault_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"default\",\n cen_id=default_instance.id,\n transit_router_id=default_transit_router.transit_router_id,\n vpc_id=default_network.id,\n zone_mappings=[\n {\n \"zone_id\": default_master.zone_id,\n \"vswitch_id\": default_master.id,\n },\n {\n \"zone_id\": default_slave.zone_id,\n \"vswitch_id\": default_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain(\"default\",\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_multicast_domain_name=name,\n transit_router_multicast_domain_description=name)\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_master.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic test\",\n primary_ip_address=default_master.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n tags={\n \"Created\": \"TF\",\n \"For\": \"Test\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\ndefault_transit_router_multicast_domain_association = alicloud.cen.TransitRouterMulticastDomainAssociation(\"default\",\n transit_router_multicast_domain_id=default_transit_router_multicast_domain.id,\n transit_router_attachment_id=default_transit_router_vpc_attachment.transit_router_attachment_id,\n vswitch_id=default_master.id)\nexample = alicloud.cen.TransitRouterMulticastDomainSource(\"example\",\n vpc_id=default_network.id,\n transit_router_multicast_domain_id=default_transit_router_multicast_domain_association.transit_router_multicast_domain_id,\n network_interface_id=default_ecs_network_interface.id,\n group_ip_address=\"239.1.1.1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMaster = new AliCloud.Vpc.Switch(\"default_master\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.1.0/24\",\n ZoneId = \"cn-hangzhou-i\",\n });\n\n var defaultSlave = new AliCloud.Vpc.Switch(\"default_slave\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.2.0/24\",\n ZoneId = \"cn-hangzhou-j\",\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = defaultInstance.Id,\n SupportMulticast = true,\n });\n\n var defaultTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"default\", new()\n {\n CenId = defaultInstance.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n VpcId = defaultNetwork.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = defaultMaster.ZoneId,\n VswitchId = defaultMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = defaultSlave.ZoneId,\n VswitchId = defaultSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultTransitRouterMulticastDomain = new AliCloud.Cen.TransitRouterMulticastDomain(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterMulticastDomainName = name,\n TransitRouterMulticastDomainDescription = name,\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultMaster.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic test\",\n PrimaryIpAddress = defaultMaster.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Test\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var defaultTransitRouterMulticastDomainAssociation = new AliCloud.Cen.TransitRouterMulticastDomainAssociation(\"default\", new()\n {\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomain.Id,\n TransitRouterAttachmentId = defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n VswitchId = defaultMaster.Id,\n });\n\n var example = new AliCloud.Cen.TransitRouterMulticastDomainSource(\"example\", new()\n {\n VpcId = defaultNetwork.Id,\n TransitRouterMulticastDomainId = defaultTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n GroupIpAddress = \"239.1.1.1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf_example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultMaster, err := vpc.NewSwitch(ctx, \"default_master\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.1.0/24\"),\nZoneId: pulumi.String(\"cn-hangzhou-i\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSlave, err := vpc.NewSwitch(ctx, \"default_slave\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.2.0/24\"),\nZoneId: pulumi.String(\"cn-hangzhou-j\"),\n})\nif err != nil {\nreturn err\n}\ndefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\nCenInstanceName: pulumi.String(name),\nProtectionLevel: pulumi.String(\"REDUCED\"),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\nCenId: defaultInstance.ID(),\nSupportMulticast: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"default\", \u0026cen.TransitRouterVpcAttachmentArgs{\nCenId: defaultInstance.ID(),\nTransitRouterId: defaultTransitRouter.TransitRouterId,\nVpcId: defaultNetwork.ID(),\nZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: defaultMaster.ZoneId,\nVswitchId: defaultMaster.ID(),\n},\n\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\nZoneId: defaultSlave.ZoneId,\nVswitchId: defaultSlave.ID(),\n},\n},\nTransitRouterAttachmentName: pulumi.String(name),\nTransitRouterAttachmentDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\ndefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\nStatus: pulumi.StringRef(\"OK\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultTransitRouterMulticastDomain, err := cen.NewTransitRouterMulticastDomain(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainArgs{\nTransitRouterId: defaultTransitRouter.TransitRouterId,\nTransitRouterMulticastDomainName: pulumi.String(name),\nTransitRouterMulticastDomainDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\ndefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(name),\nVswitchId: defaultMaster.ID(),\nSecurityGroupIds: pulumi.StringArray{\ndefaultSecurityGroup.ID(),\n},\nDescription: pulumi.String(\"Basic test\"),\nPrimaryIpAddress: pulumi.String(defaultMaster.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"Test\"),\n},\nResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n})\nif err != nil {\nreturn err\n}\ndefaultTransitRouterMulticastDomainAssociation, err := cen.NewTransitRouterMulticastDomainAssociation(ctx, \"default\", \u0026cen.TransitRouterMulticastDomainAssociationArgs{\nTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomain.ID(),\nTransitRouterAttachmentId: defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\nVswitchId: defaultMaster.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cen.NewTransitRouterMulticastDomainSource(ctx, \"example\", \u0026cen.TransitRouterMulticastDomainSourceArgs{\nVpcId: defaultNetwork.ID(),\nTransitRouterMulticastDomainId: defaultTransitRouterMulticastDomainAssociation.TransitRouterMulticastDomainId,\nNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\nGroupIpAddress: pulumi.String(\"239.1.1.1\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomain;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainAssociationArgs;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainSource;\nimport com.pulumi.alicloud.cen.TransitRouterMulticastDomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMaster = new Switch(\"defaultMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.1.0/24\")\n .zoneId(\"cn-hangzhou-i\")\n .build());\n\n var defaultSlave = new Switch(\"defaultSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.2.0/24\")\n .zoneId(\"cn-hangzhou-j\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(defaultInstance.id())\n .supportMulticast(true)\n .build());\n\n var defaultTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"defaultTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(defaultInstance.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .vpcId(defaultNetwork.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(defaultMaster.zoneId())\n .vswitchId(defaultMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(defaultSlave.zoneId())\n .vswitchId(defaultSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultTransitRouterMulticastDomain = new TransitRouterMulticastDomain(\"defaultTransitRouterMulticastDomain\", TransitRouterMulticastDomainArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterMulticastDomainName(name)\n .transitRouterMulticastDomainDescription(name)\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultMaster.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic test\")\n .primaryIpAddress(defaultMaster.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Test\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var defaultTransitRouterMulticastDomainAssociation = new TransitRouterMulticastDomainAssociation(\"defaultTransitRouterMulticastDomainAssociation\", TransitRouterMulticastDomainAssociationArgs.builder()\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomain.id())\n .transitRouterAttachmentId(defaultTransitRouterVpcAttachment.transitRouterAttachmentId())\n .vswitchId(defaultMaster.id())\n .build());\n\n var example = new TransitRouterMulticastDomainSource(\"example\", TransitRouterMulticastDomainSourceArgs.builder()\n .vpcId(defaultNetwork.id())\n .transitRouterMulticastDomainId(defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId())\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .groupIpAddress(\"239.1.1.1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMaster:\n type: alicloud:vpc:Switch\n name: default_master\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.1.0/24\n zoneId: cn-hangzhou-i\n defaultSlave:\n type: alicloud:vpc:Switch\n name: default_slave\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.2.0/24\n zoneId: cn-hangzhou-j\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${defaultInstance.id}\n supportMulticast: true\n defaultTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: default\n properties:\n cenId: ${defaultInstance.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n vpcId: ${defaultNetwork.id}\n zoneMappings:\n - zoneId: ${defaultMaster.zoneId}\n vswitchId: ${defaultMaster.id}\n - zoneId: ${defaultSlave.zoneId}\n vswitchId: ${defaultSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultTransitRouterMulticastDomain:\n type: alicloud:cen:TransitRouterMulticastDomain\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterMulticastDomainName: ${name}\n transitRouterMulticastDomainDescription: ${name}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultMaster.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic test\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${defaultMaster.cidrBlock}\n host: 100\n return: result\n tags:\n Created: TF\n For: Test\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n defaultTransitRouterMulticastDomainAssociation:\n type: alicloud:cen:TransitRouterMulticastDomainAssociation\n name: default\n properties:\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomain.id}\n transitRouterAttachmentId: ${defaultTransitRouterVpcAttachment.transitRouterAttachmentId}\n vswitchId: ${defaultMaster.id}\n example:\n type: alicloud:cen:TransitRouterMulticastDomainSource\n properties:\n vpcId: ${defaultNetwork.id}\n transitRouterMulticastDomainId: ${defaultTransitRouterMulticastDomainAssociation.transitRouterMulticastDomainId}\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n groupIpAddress: 239.1.1.1\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCen Transit Router Multicast Domain Source can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterMulticastDomainSource:TransitRouterMulticastDomainSource example \u003ctransit_router_multicast_domain_id\u003e:\u003cgroup_ip_address\u003e:\u003cnetwork_interface_id\u003e\n```\n\n",
"properties": {
"groupIpAddress": {
"type": "string",
@@ -115697,7 +117562,7 @@
}
},
"alicloud:cen/transitRouterPeerAttachment:TransitRouterPeerAttachment": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Peer Attachment resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Peer Attachment and how to use it, see [What is Transit Router Peer Attachment](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouterPeerAttachment).\n\n\u003e **NOTE:** Available since v1.128.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst peerRegion = config.get(\"peerRegion\") || \"cn-beijing\";\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {cenId: exampleBandwidthPackageAttachment.instanceId});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {cenId: exampleTransitRouter.cenId});\nconst exampleTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"example\", {\n cenId: example.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n peerTransitRouterRegionId: peerRegion,\n peerTransitRouterId: peer.transitRouterId,\n cenBandwidthPackageId: exampleBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\npeer_region = config.get(\"peerRegion\")\nif peer_region is None:\n peer_region = \"cn-beijing\"\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\", cen_id=example_bandwidth_package_attachment.instance_id)\npeer = alicloud.cen.TransitRouter(\"peer\", cen_id=example_transit_router.cen_id)\nexample_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"example\",\n cen_id=example.id,\n transit_router_id=example_transit_router.transit_router_id,\n peer_transit_router_region_id=peer_region,\n peer_transit_router_id=peer.transit_router_id,\n cen_bandwidth_package_id=example_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var peerRegion = config.Get(\"peerRegion\") ?? \"cn-beijing\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = exampleBandwidthPackageAttachment.InstanceId,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = exampleTransitRouter.CenId,\n });\n\n var exampleTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n PeerTransitRouterRegionId = peerRegion,\n PeerTransitRouterId = peer.TransitRouterId,\n CenBandwidthPackageId = exampleBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tpeerRegion := \"cn-beijing\"\n\t\tif param := cfg.Get(\"peerRegion\"); param != \"\" {\n\t\t\tpeerRegion = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: exampleBandwidthPackageAttachment.InstanceId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterPeerAttachment(ctx, \"example\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(peerRegion),\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tCenBandwidthPackageId: exampleBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var peerRegion = config.get(\"peerRegion\").orElse(\"cn-beijing\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(exampleBandwidthPackageAttachment.instanceId())\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .build());\n\n var exampleTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"exampleTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(example.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .peerTransitRouterRegionId(peerRegion)\n .peerTransitRouterId(peer.transitRouterId())\n .cenBandwidthPackageId(exampleBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n region:\n type: string\n default: cn-hangzhou\n peerRegion:\n type: string\n default: cn-beijing\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${exampleBandwidthPackageAttachment.instanceId}\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${exampleTransitRouter.cenId}\n exampleTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: example\n properties:\n cenId: ${example.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n peerTransitRouterRegionId: ${peerRegion}\n peerTransitRouterId: ${peer.transitRouterId}\n cenBandwidthPackageId: ${exampleBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Peer Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterPeerAttachment:TransitRouterPeerAttachment example \u003ccen_id\u003e:\u003ctransit_router_attachment_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Peer Attachment resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Peer Attachment and how to use it, see [What is Transit Router Peer Attachment](https://next.api.alibabacloud.com/document/Cbn/2017-09-12/CreateTransitRouterPeerAttachment).\n\n\u003e **NOTE:** Available since v1.128.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst peerRegion = config.get(\"peerRegion\") || \"cn-beijing\";\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleBandwidthPackage = new alicloud.cen.BandwidthPackage(\"example\", {\n bandwidth: 5,\n cenBandwidthPackageName: \"tf_example\",\n geographicRegionAId: \"China\",\n geographicRegionBId: \"China\",\n});\nconst exampleBandwidthPackageAttachment = new alicloud.cen.BandwidthPackageAttachment(\"example\", {\n instanceId: example.id,\n bandwidthPackageId: exampleBandwidthPackage.id,\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {cenId: exampleBandwidthPackageAttachment.instanceId});\nconst peer = new alicloud.cen.TransitRouter(\"peer\", {cenId: exampleTransitRouter.cenId});\nconst exampleTransitRouterPeerAttachment = new alicloud.cen.TransitRouterPeerAttachment(\"example\", {\n cenId: example.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n peerTransitRouterRegionId: peerRegion,\n peerTransitRouterId: peer.transitRouterId,\n cenBandwidthPackageId: exampleBandwidthPackageAttachment.bandwidthPackageId,\n bandwidth: 5,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\npeer_region = config.get(\"peerRegion\")\nif peer_region is None:\n peer_region = \"cn-beijing\"\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_bandwidth_package = alicloud.cen.BandwidthPackage(\"example\",\n bandwidth=5,\n cen_bandwidth_package_name=\"tf_example\",\n geographic_region_a_id=\"China\",\n geographic_region_b_id=\"China\")\nexample_bandwidth_package_attachment = alicloud.cen.BandwidthPackageAttachment(\"example\",\n instance_id=example.id,\n bandwidth_package_id=example_bandwidth_package.id)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\", cen_id=example_bandwidth_package_attachment.instance_id)\npeer = alicloud.cen.TransitRouter(\"peer\", cen_id=example_transit_router.cen_id)\nexample_transit_router_peer_attachment = alicloud.cen.TransitRouterPeerAttachment(\"example\",\n cen_id=example.id,\n transit_router_id=example_transit_router.transit_router_id,\n peer_transit_router_region_id=peer_region,\n peer_transit_router_id=peer.transit_router_id,\n cen_bandwidth_package_id=example_bandwidth_package_attachment.bandwidth_package_id,\n bandwidth=5,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var peerRegion = config.Get(\"peerRegion\") ?? \"cn-beijing\";\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleBandwidthPackage = new AliCloud.Cen.BandwidthPackage(\"example\", new()\n {\n Bandwidth = 5,\n CenBandwidthPackageName = \"tf_example\",\n GeographicRegionAId = \"China\",\n GeographicRegionBId = \"China\",\n });\n\n var exampleBandwidthPackageAttachment = new AliCloud.Cen.BandwidthPackageAttachment(\"example\", new()\n {\n InstanceId = example.Id,\n BandwidthPackageId = exampleBandwidthPackage.Id,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = exampleBandwidthPackageAttachment.InstanceId,\n });\n\n var peer = new AliCloud.Cen.TransitRouter(\"peer\", new()\n {\n CenId = exampleTransitRouter.CenId,\n });\n\n var exampleTransitRouterPeerAttachment = new AliCloud.Cen.TransitRouterPeerAttachment(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n PeerTransitRouterRegionId = peerRegion,\n PeerTransitRouterId = peer.TransitRouterId,\n CenBandwidthPackageId = exampleBandwidthPackageAttachment.BandwidthPackageId,\n Bandwidth = 5,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tpeerRegion := \"cn-beijing\"\n\t\tif param := cfg.Get(\"peerRegion\"); param != \"\" {\n\t\t\tpeerRegion = param\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackage, err := cen.NewBandwidthPackage(ctx, \"example\", \u0026cen.BandwidthPackageArgs{\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tCenBandwidthPackageName: pulumi.String(\"tf_example\"),\n\t\t\tGeographicRegionAId: pulumi.String(\"China\"),\n\t\t\tGeographicRegionBId: pulumi.String(\"China\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleBandwidthPackageAttachment, err := cen.NewBandwidthPackageAttachment(ctx, \"example\", \u0026cen.BandwidthPackageAttachmentArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tBandwidthPackageId: exampleBandwidthPackage.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: exampleBandwidthPackageAttachment.InstanceId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tpeer, err := cen.NewTransitRouter(ctx, \"peer\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterPeerAttachment(ctx, \"example\", \u0026cen.TransitRouterPeerAttachmentArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tPeerTransitRouterRegionId: pulumi.String(peerRegion),\n\t\t\tPeerTransitRouterId: peer.TransitRouterId,\n\t\t\tCenBandwidthPackageId: exampleBandwidthPackageAttachment.BandwidthPackageId,\n\t\t\tBandwidth: pulumi.Int(5),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackage;\nimport com.pulumi.alicloud.cen.BandwidthPackageArgs;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachment;\nimport com.pulumi.alicloud.cen.BandwidthPackageAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterPeerAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var peerRegion = config.get(\"peerRegion\").orElse(\"cn-beijing\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleBandwidthPackage = new BandwidthPackage(\"exampleBandwidthPackage\", BandwidthPackageArgs.builder()\n .bandwidth(5)\n .cenBandwidthPackageName(\"tf_example\")\n .geographicRegionAId(\"China\")\n .geographicRegionBId(\"China\")\n .build());\n\n var exampleBandwidthPackageAttachment = new BandwidthPackageAttachment(\"exampleBandwidthPackageAttachment\", BandwidthPackageAttachmentArgs.builder()\n .instanceId(example.id())\n .bandwidthPackageId(exampleBandwidthPackage.id())\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(exampleBandwidthPackageAttachment.instanceId())\n .build());\n\n var peer = new TransitRouter(\"peer\", TransitRouterArgs.builder()\n .cenId(exampleTransitRouter.cenId())\n .build());\n\n var exampleTransitRouterPeerAttachment = new TransitRouterPeerAttachment(\"exampleTransitRouterPeerAttachment\", TransitRouterPeerAttachmentArgs.builder()\n .cenId(example.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .peerTransitRouterRegionId(peerRegion)\n .peerTransitRouterId(peer.transitRouterId())\n .cenBandwidthPackageId(exampleBandwidthPackageAttachment.bandwidthPackageId())\n .bandwidth(5)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n region:\n type: string\n default: cn-hangzhou\n peerRegion:\n type: string\n default: cn-beijing\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleBandwidthPackage:\n type: alicloud:cen:BandwidthPackage\n name: example\n properties:\n bandwidth: 5\n cenBandwidthPackageName: tf_example\n geographicRegionAId: China\n geographicRegionBId: China\n exampleBandwidthPackageAttachment:\n type: alicloud:cen:BandwidthPackageAttachment\n name: example\n properties:\n instanceId: ${example.id}\n bandwidthPackageId: ${exampleBandwidthPackage.id}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${exampleBandwidthPackageAttachment.instanceId}\n peer:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${exampleTransitRouter.cenId}\n exampleTransitRouterPeerAttachment:\n type: alicloud:cen:TransitRouterPeerAttachment\n name: example\n properties:\n cenId: ${example.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n peerTransitRouterRegionId: ${peerRegion}\n peerTransitRouterId: ${peer.transitRouterId}\n cenBandwidthPackageId: ${exampleBandwidthPackageAttachment.bandwidthPackageId}\n bandwidth: 5\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Peer Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterPeerAttachment:TransitRouterPeerAttachment example \u003ccen_id\u003e:\u003ctransit_router_attachment_id\u003e\n```\n\n",
"properties": {
"autoPublishRouteEnabled": {
"type": "boolean",
@@ -115988,7 +117853,7 @@
}
},
"alicloud:cen/transitRouterPrefixListAssociation:TransitRouterPrefixListAssociation": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Prefix List Association resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Prefix List Association and how to use it, see [What is Transit Router Prefix List Association](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/createtransitrouterprefixlistassociation).\n\n\u003e **NOTE:** Available since v1.188.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst example = new alicloud.vpc.PrefixList(\"example\", {entrys: [{\n cidr: \"192.168.0.0/16\",\n}]});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouterPrefixListAssociation = new alicloud.cen.TransitRouterPrefixListAssociation(\"example\", {\n prefixListId: example.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n nextHop: \"BlackHole\",\n nextHopType: \"BlackHole\",\n ownerUid: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\nexample = alicloud.vpc.PrefixList(\"example\", entrys=[{\n \"cidr\": \"192.168.0.0/16\",\n}])\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example_instance.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_router_prefix_list_association = alicloud.cen.TransitRouterPrefixListAssociation(\"example\",\n prefix_list_id=example.id,\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_table_id=example_transit_router_route_table.transit_router_route_table_id,\n next_hop=\"BlackHole\",\n next_hop_type=\"BlackHole\",\n owner_uid=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var example = new AliCloud.Vpc.PrefixList(\"example\", new()\n {\n Entrys = new[]\n {\n new AliCloud.Vpc.Inputs.PrefixListEntryArgs\n {\n Cidr = \"192.168.0.0/16\",\n },\n },\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouterPrefixListAssociation = new AliCloud.Cen.TransitRouterPrefixListAssociation(\"example\", new()\n {\n PrefixListId = example.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n NextHop = \"BlackHole\",\n NextHopType = \"BlackHole\",\n OwnerUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewPrefixList(ctx, \"example\", \u0026vpc.PrefixListArgs{\n\t\t\tEntrys: vpc.PrefixListEntryArray{\n\t\t\t\t\u0026vpc.PrefixListEntryArgs{\n\t\t\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterPrefixListAssociation(ctx, \"example\", \u0026cen.TransitRouterPrefixListAssociationArgs{\n\t\t\tPrefixListId: example.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tNextHop: pulumi.String(\"BlackHole\"),\n\t\t\tNextHopType: pulumi.String(\"BlackHole\"),\n\t\t\tOwnerUid: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.PrefixList;\nimport com.pulumi.alicloud.vpc.PrefixListArgs;\nimport com.pulumi.alicloud.vpc.inputs.PrefixListEntryArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPrefixListAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterPrefixListAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var example = new PrefixList(\"example\", PrefixListArgs.builder()\n .entrys(PrefixListEntryArgs.builder()\n .cidr(\"192.168.0.0/16\")\n .build())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouterPrefixListAssociation = new TransitRouterPrefixListAssociation(\"exampleTransitRouterPrefixListAssociation\", TransitRouterPrefixListAssociationArgs.builder()\n .prefixListId(example.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .nextHop(\"BlackHole\")\n .nextHopType(\"BlackHole\")\n .ownerUid(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:PrefixList\n properties:\n entrys:\n - cidr: 192.168.0.0/16\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${exampleInstance.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouterPrefixListAssociation:\n type: alicloud:cen:TransitRouterPrefixListAssociation\n name: example\n properties:\n prefixListId: ${example.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n nextHop: BlackHole\n nextHopType: BlackHole\n ownerUid: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Prefix List Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterPrefixListAssociation:TransitRouterPrefixListAssociation default \u003cprefix_list_id\u003e:\u003ctransit_router_id\u003e:\u003ctransit_router_table_id\u003e:\u003cnext_hop\u003e.\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Prefix List Association resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Prefix List Association and how to use it, see [What is Transit Router Prefix List Association](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/createtransitrouterprefixlistassociation).\n\n\u003e **NOTE:** Available since v1.188.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getAccount({});\nconst example = new alicloud.vpc.PrefixList(\"example\", {entrys: [{\n cidr: \"192.168.0.0/16\",\n}]});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouterPrefixListAssociation = new alicloud.cen.TransitRouterPrefixListAssociation(\"example\", {\n prefixListId: example.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n transitRouterTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n nextHop: \"BlackHole\",\n nextHopType: \"BlackHole\",\n ownerUid: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_account()\nexample = alicloud.vpc.PrefixList(\"example\", entrys=[{\n \"cidr\": \"192.168.0.0/16\",\n}])\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example_instance.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_router_prefix_list_association = alicloud.cen.TransitRouterPrefixListAssociation(\"example\",\n prefix_list_id=example.id,\n transit_router_id=example_transit_router.transit_router_id,\n transit_router_table_id=example_transit_router_route_table.transit_router_route_table_id,\n next_hop=\"BlackHole\",\n next_hop_type=\"BlackHole\",\n owner_uid=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetAccount.Invoke();\n\n var example = new AliCloud.Vpc.PrefixList(\"example\", new()\n {\n Entrys = new[]\n {\n new AliCloud.Vpc.Inputs.PrefixListEntryArgs\n {\n Cidr = \"192.168.0.0/16\",\n },\n },\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouterPrefixListAssociation = new AliCloud.Cen.TransitRouterPrefixListAssociation(\"example\", new()\n {\n PrefixListId = example.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n TransitRouterTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n NextHop = \"BlackHole\",\n NextHopType = \"BlackHole\",\n OwnerUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewPrefixList(ctx, \"example\", \u0026vpc.PrefixListArgs{\n\t\t\tEntrys: vpc.PrefixListEntryArray{\n\t\t\t\t\u0026vpc.PrefixListEntryArgs{\n\t\t\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterPrefixListAssociation(ctx, \"example\", \u0026cen.TransitRouterPrefixListAssociationArgs{\n\t\t\tPrefixListId: example.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tTransitRouterTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tNextHop: pulumi.String(\"BlackHole\"),\n\t\t\tNextHopType: pulumi.String(\"BlackHole\"),\n\t\t\tOwnerUid: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.PrefixList;\nimport com.pulumi.alicloud.vpc.PrefixListArgs;\nimport com.pulumi.alicloud.vpc.inputs.PrefixListEntryArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterPrefixListAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterPrefixListAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var example = new PrefixList(\"example\", PrefixListArgs.builder()\n .entrys(PrefixListEntryArgs.builder()\n .cidr(\"192.168.0.0/16\")\n .build())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouterPrefixListAssociation = new TransitRouterPrefixListAssociation(\"exampleTransitRouterPrefixListAssociation\", TransitRouterPrefixListAssociationArgs.builder()\n .prefixListId(example.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .transitRouterTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .nextHop(\"BlackHole\")\n .nextHopType(\"BlackHole\")\n .ownerUid(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:vpc:PrefixList\n properties:\n entrys:\n - cidr: 192.168.0.0/16\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${exampleInstance.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouterPrefixListAssociation:\n type: alicloud:cen:TransitRouterPrefixListAssociation\n name: example\n properties:\n prefixListId: ${example.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n transitRouterTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n nextHop: BlackHole\n nextHopType: BlackHole\n ownerUid: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Prefix List Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterPrefixListAssociation:TransitRouterPrefixListAssociation default \u003cprefix_list_id\u003e:\u003ctransit_router_id\u003e:\u003ctransit_router_table_id\u003e:\u003cnext_hop\u003e.\n```\n\n",
"properties": {
"nextHop": {
"type": "string",
@@ -116108,7 +117973,7 @@
}
},
"alicloud:cen/transitRouterRouteEntry:TransitRouterRouteEntry": {
- "description": "Provides a CEN transit router route entry resource.[What is Cen Transit Router Route Entry](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-createtransitrouterrouteentry)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst example = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst vlanId = new random.index.Integer(\"vlan_id\", {\n max: 2999,\n min: 1,\n});\nconst exampleVirtualBorderRouter = new alicloud.expressconnect.VirtualBorderRouter(\"example\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: example.then(example =\u003e example.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: vlanId.id,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst exampleTransitRouterVbrAttachment = new alicloud.cen.TransitRouterVbrAttachment(\"example\", {\n vbrId: exampleVirtualBorderRouter.id,\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n autoPublishRouteEnabled: true,\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleTransitRouterRouteEntry = new alicloud.cen.TransitRouterRouteEntry(\"example\", {\n transitRouterRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterRouteEntryDestinationCidrBlock: \"192.168.0.0/24\",\n transitRouterRouteEntryNextHopType: \"Attachment\",\n transitRouterRouteEntryName: name,\n transitRouterRouteEntryDescription: name,\n transitRouterRouteEntryNextHopId: exampleTransitRouterVbrAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\nvlan_id = random.index.Integer(\"vlan_id\",\n max=2999,\n min=1)\nexample_virtual_border_router = alicloud.expressconnect.VirtualBorderRouter(\"example\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=example.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=vlan_id[\"id\"],\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\nexample_transit_router_vbr_attachment = alicloud.cen.TransitRouterVbrAttachment(\"example\",\n vbr_id=example_virtual_border_router.id,\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n auto_publish_route_enabled=True,\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_transit_router_route_entry = alicloud.cen.TransitRouterRouteEntry(\"example\",\n transit_router_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_router_route_entry_destination_cidr_block=\"192.168.0.0/24\",\n transit_router_route_entry_next_hop_type=\"Attachment\",\n transit_router_route_entry_name=name,\n transit_router_route_entry_description=name,\n transit_router_route_entry_next_hop_id=example_transit_router_vbr_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var example = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var vlanId = new Random.Index.Integer(\"vlan_id\", new()\n {\n Max = 2999,\n Min = 1,\n });\n\n var exampleVirtualBorderRouter = new AliCloud.ExpressConnect.VirtualBorderRouter(\"example\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = example.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = vlanId.Id,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var exampleTransitRouterVbrAttachment = new AliCloud.Cen.TransitRouterVbrAttachment(\"example\", new()\n {\n VbrId = exampleVirtualBorderRouter.Id,\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n AutoPublishRouteEnabled = true,\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleTransitRouterRouteEntry = new AliCloud.Cen.TransitRouterRouteEntry(\"example\", new()\n {\n TransitRouterRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterRouteEntryDestinationCidrBlock = \"192.168.0.0/24\",\n TransitRouterRouteEntryNextHopType = \"Attachment\",\n TransitRouterRouteEntryName = name,\n TransitRouterRouteEntryDescription = name,\n TransitRouterRouteEntryNextHopId = exampleTransitRouterVbrAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvlanId, err := random.NewInteger(ctx, \"vlan_id\", \u0026random.IntegerArgs{\n\t\t\tMax: 2999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualBorderRouter, err := expressconnect.NewVirtualBorderRouter(ctx, \"example\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(example.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: vlanId.Id,\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVbrAttachment, err := cen.NewTransitRouterVbrAttachment(ctx, \"example\", \u0026cen.TransitRouterVbrAttachmentArgs{\n\t\t\tVbrId: exampleVirtualBorderRouter.ID(),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(true),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteEntry(ctx, \"example\", \u0026cen.TransitRouterRouteEntryArgs{\n\t\t\tTransitRouterRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterRouteEntryDestinationCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tTransitRouterRouteEntryNextHopType: pulumi.String(\"Attachment\"),\n\t\t\tTransitRouterRouteEntryName: pulumi.String(name),\n\t\t\tTransitRouterRouteEntryDescription: pulumi.String(name),\n\t\t\tTransitRouterRouteEntryNextHopId: exampleTransitRouterVbrAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteEntry;\nimport com.pulumi.alicloud.cen.TransitRouterRouteEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n final var example = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var vlanId = new Integer(\"vlanId\", IntegerArgs.builder()\n .max(2999)\n .min(1)\n .build());\n\n var exampleVirtualBorderRouter = new VirtualBorderRouter(\"exampleVirtualBorderRouter\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(example.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(vlanId.id())\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var exampleTransitRouterVbrAttachment = new TransitRouterVbrAttachment(\"exampleTransitRouterVbrAttachment\", TransitRouterVbrAttachmentArgs.builder()\n .vbrId(exampleVirtualBorderRouter.id())\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .autoPublishRouteEnabled(true)\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleTransitRouterRouteEntry = new TransitRouterRouteEntry(\"exampleTransitRouterRouteEntry\", TransitRouterRouteEntryArgs.builder()\n .transitRouterRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterRouteEntryDestinationCidrBlock(\"192.168.0.0/24\")\n .transitRouterRouteEntryNextHopType(\"Attachment\")\n .transitRouterRouteEntryName(name)\n .transitRouterRouteEntryDescription(name)\n .transitRouterRouteEntryNextHopId(exampleTransitRouterVbrAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vlanId:\n type: random:Integer\n name: vlan_id\n properties:\n max: 2999\n min: 1\n exampleVirtualBorderRouter:\n type: alicloud:expressconnect:VirtualBorderRouter\n name: example\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${example.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: ${vlanId.id}\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n exampleTransitRouterVbrAttachment:\n type: alicloud:cen:TransitRouterVbrAttachment\n name: example\n properties:\n vbrId: ${exampleVirtualBorderRouter.id}\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n autoPublishRouteEnabled: true\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleTransitRouterRouteEntry:\n type: alicloud:cen:TransitRouterRouteEntry\n name: example\n properties:\n transitRouterRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterRouteEntryDestinationCidrBlock: 192.168.0.0/24\n transitRouterRouteEntryNextHopType: Attachment\n transitRouterRouteEntryName: ${name}\n transitRouterRouteEntryDescription: ${name}\n transitRouterRouteEntryNextHopId: ${exampleTransitRouterVbrAttachment.transitRouterAttachmentId}\nvariables:\n example:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteEntry:TransitRouterRouteEntry default vtb-*********:rte-*******\n```\n\n",
+ "description": "Provides a CEN transit router route entry resource.[What is Cen Transit Router Route Entry](https://www.alibabacloud.com/help/en/cloud-enterprise-network/latest/api-cbn-2017-09-12-createtransitrouterrouteentry)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst example = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst vlanId = new random.index.Integer(\"vlan_id\", {\n max: 2999,\n min: 1,\n});\nconst exampleVirtualBorderRouter = new alicloud.expressconnect.VirtualBorderRouter(\"example\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: example.then(example =\u003e example.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: vlanId.id,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst exampleTransitRouterVbrAttachment = new alicloud.cen.TransitRouterVbrAttachment(\"example\", {\n vbrId: exampleVirtualBorderRouter.id,\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n autoPublishRouteEnabled: true,\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleTransitRouterRouteEntry = new alicloud.cen.TransitRouterRouteEntry(\"example\", {\n transitRouterRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterRouteEntryDestinationCidrBlock: \"192.168.0.0/24\",\n transitRouterRouteEntryNextHopType: \"Attachment\",\n transitRouterRouteEntryName: name,\n transitRouterRouteEntryDescription: name,\n transitRouterRouteEntryNextHopId: exampleTransitRouterVbrAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\nvlan_id = random.index.Integer(\"vlan_id\",\n max=2999,\n min=1)\nexample_virtual_border_router = alicloud.expressconnect.VirtualBorderRouter(\"example\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=example.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=vlan_id[\"id\"],\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\nexample_transit_router_vbr_attachment = alicloud.cen.TransitRouterVbrAttachment(\"example\",\n vbr_id=example_virtual_border_router.id,\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n auto_publish_route_enabled=True,\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_transit_router_route_entry = alicloud.cen.TransitRouterRouteEntry(\"example\",\n transit_router_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_router_route_entry_destination_cidr_block=\"192.168.0.0/24\",\n transit_router_route_entry_next_hop_type=\"Attachment\",\n transit_router_route_entry_name=name,\n transit_router_route_entry_description=name,\n transit_router_route_entry_next_hop_id=example_transit_router_vbr_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var example = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var vlanId = new Random.Index.Integer(\"vlan_id\", new()\n {\n Max = 2999,\n Min = 1,\n });\n\n var exampleVirtualBorderRouter = new AliCloud.ExpressConnect.VirtualBorderRouter(\"example\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = example.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = vlanId.Id,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var exampleTransitRouterVbrAttachment = new AliCloud.Cen.TransitRouterVbrAttachment(\"example\", new()\n {\n VbrId = exampleVirtualBorderRouter.Id,\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n AutoPublishRouteEnabled = true,\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleTransitRouterRouteEntry = new AliCloud.Cen.TransitRouterRouteEntry(\"example\", new()\n {\n TransitRouterRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterRouteEntryDestinationCidrBlock = \"192.168.0.0/24\",\n TransitRouterRouteEntryNextHopType = \"Attachment\",\n TransitRouterRouteEntryName = name,\n TransitRouterRouteEntryDescription = name,\n TransitRouterRouteEntryNextHopId = exampleTransitRouterVbrAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvlanId, err := random.NewInteger(ctx, \"vlan_id\", \u0026random.IntegerArgs{\n\t\t\tMax: 2999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualBorderRouter, err := expressconnect.NewVirtualBorderRouter(ctx, \"example\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(example.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: vlanId.Id,\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVbrAttachment, err := cen.NewTransitRouterVbrAttachment(ctx, \"example\", \u0026cen.TransitRouterVbrAttachmentArgs{\n\t\t\tVbrId: exampleVirtualBorderRouter.ID(),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(true),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteEntry(ctx, \"example\", \u0026cen.TransitRouterRouteEntryArgs{\n\t\t\tTransitRouterRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterRouteEntryDestinationCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tTransitRouterRouteEntryNextHopType: pulumi.String(\"Attachment\"),\n\t\t\tTransitRouterRouteEntryName: pulumi.String(name),\n\t\t\tTransitRouterRouteEntryDescription: pulumi.String(name),\n\t\t\tTransitRouterRouteEntryNextHopId: exampleTransitRouterVbrAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachmentArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteEntry;\nimport com.pulumi.alicloud.cen.TransitRouterRouteEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n final var example = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var vlanId = new Integer(\"vlanId\", IntegerArgs.builder()\n .max(2999)\n .min(1)\n .build());\n\n var exampleVirtualBorderRouter = new VirtualBorderRouter(\"exampleVirtualBorderRouter\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(example.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(vlanId.id())\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var exampleTransitRouterVbrAttachment = new TransitRouterVbrAttachment(\"exampleTransitRouterVbrAttachment\", TransitRouterVbrAttachmentArgs.builder()\n .vbrId(exampleVirtualBorderRouter.id())\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .autoPublishRouteEnabled(true)\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleTransitRouterRouteEntry = new TransitRouterRouteEntry(\"exampleTransitRouterRouteEntry\", TransitRouterRouteEntryArgs.builder()\n .transitRouterRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterRouteEntryDestinationCidrBlock(\"192.168.0.0/24\")\n .transitRouterRouteEntryNextHopType(\"Attachment\")\n .transitRouterRouteEntryName(name)\n .transitRouterRouteEntryDescription(name)\n .transitRouterRouteEntryNextHopId(exampleTransitRouterVbrAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vlanId:\n type: random:Integer\n name: vlan_id\n properties:\n max: 2999\n min: 1\n exampleVirtualBorderRouter:\n type: alicloud:expressconnect:VirtualBorderRouter\n name: example\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${example.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: ${vlanId.id}\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n exampleTransitRouterVbrAttachment:\n type: alicloud:cen:TransitRouterVbrAttachment\n name: example\n properties:\n vbrId: ${exampleVirtualBorderRouter.id}\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n autoPublishRouteEnabled: true\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleTransitRouterRouteEntry:\n type: alicloud:cen:TransitRouterRouteEntry\n name: example\n properties:\n transitRouterRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterRouteEntryDestinationCidrBlock: 192.168.0.0/24\n transitRouterRouteEntryNextHopType: Attachment\n transitRouterRouteEntryName: ${name}\n transitRouterRouteEntryDescription: ${name}\n transitRouterRouteEntryNextHopId: ${exampleTransitRouterVbrAttachment.transitRouterAttachmentId}\nvariables:\n example:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteEntry:TransitRouterRouteEntry default vtb-*********:rte-*******\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -116241,7 +118106,7 @@
}
},
"alicloud:cen/transitRouterRouteTable:TransitRouterRouteTable": {
- "description": "Provides a CEN transit router route table resource.[What is Cen Transit Router Route Table](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitrouterroutetable)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN transit router route table can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTable:TransitRouterRouteTable default tr-*********:vtb-********\n```\n\n",
+ "description": "Provides a CEN transit router route table resource.[What is Cen Transit Router Route Table](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitrouterroutetable)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: \"tf_example\",\n description: \"an example for cen\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: \"tf_example\",\n cenId: example.id,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cen.Instance(\"example\",\n cen_instance_name=\"tf_example\",\n description=\"an example for cen\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=\"tf_example\",\n cen_id=example.id)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = \"tf_example\",\n Description = \"an example for cen\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = \"tf_example\",\n CenId = example.Id,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tDescription: pulumi.String(\"an example for cen\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(\"tf_example\"),\n\t\t\tCenId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(\"tf_example\")\n .description(\"an example for cen\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(\"tf_example\")\n .cenId(example.id())\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: tf_example\n description: an example for cen\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: tf_example\n cenId: ${example.id}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN transit router route table can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTable:TransitRouterRouteTable default tr-*********:vtb-********\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -116359,7 +118224,7 @@
}
},
"alicloud:cen/transitRouterRouteTableAssociation:TransitRouterRouteTableAssociation": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Route Table Association resource.\n\nThe routing association of the routing table of the forwarding router.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Route Table Association and how to use it, see [What is Transit Router Route Table Association](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-associatetransitrouterattachmentwithroutetable).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMaster = new alicloud.vpc.Switch(\"default_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: masterZone,\n});\nconst defaultSlave = new alicloud.vpc.Switch(\"default_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: slaveZone,\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n transitRouterName: name,\n cenId: defaultInstance.id,\n});\nconst defaultTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"default\", {transitRouterId: defaultTransitRouter.transitRouterId});\nconst defaultTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"default\", {\n cenId: defaultInstance.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n vpcId: defaultNetwork.id,\n transitRouterVpcAttachmentName: name,\n transitRouterAttachmentDescription: name,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: defaultMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: defaultSlave.id,\n },\n ],\n});\nconst defaultTransitRouterRouteTableAssociation = new alicloud.cen.TransitRouterRouteTableAssociation(\"default\", {\n transitRouterRouteTableId: defaultTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterAttachmentId: defaultTransitRouterVpcAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_master = alicloud.vpc.Switch(\"default_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=default_network.id,\n zone_id=master_zone)\ndefault_slave = alicloud.vpc.Switch(\"default_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=default_network.id,\n zone_id=slave_zone)\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n transit_router_name=name,\n cen_id=default_instance.id)\ndefault_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"default\", transit_router_id=default_transit_router.transit_router_id)\ndefault_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"default\",\n cen_id=default_instance.id,\n transit_router_id=default_transit_router.transit_router_id,\n vpc_id=default_network.id,\n transit_router_vpc_attachment_name=name,\n transit_router_attachment_description=name,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": default_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": default_slave.id,\n },\n ])\ndefault_transit_router_route_table_association = alicloud.cen.TransitRouterRouteTableAssociation(\"default\",\n transit_router_route_table_id=default_transit_router_route_table.transit_router_route_table_id,\n transit_router_attachment_id=default_transit_router_vpc_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMaster = new AliCloud.Vpc.Switch(\"default_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = masterZone,\n });\n\n var defaultSlave = new AliCloud.Vpc.Switch(\"default_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = slaveZone,\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n TransitRouterName = name,\n CenId = defaultInstance.Id,\n });\n\n var defaultTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n });\n\n var defaultTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"default\", new()\n {\n CenId = defaultInstance.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n VpcId = defaultNetwork.Id,\n TransitRouterVpcAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = defaultMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = defaultSlave.Id,\n },\n },\n });\n\n var defaultTransitRouterRouteTableAssociation = new AliCloud.Cen.TransitRouterRouteTableAssociation(\"default\", new()\n {\n TransitRouterRouteTableId = defaultTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterAttachmentId = defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMaster, err := vpc.NewSwitch(ctx, \"default_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSlave, err := vpc.NewSwitch(ctx, \"default_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"default\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"default\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: defaultInstance.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tTransitRouterVpcAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: defaultMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: defaultSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTableAssociation(ctx, \"default\", \u0026cen.TransitRouterRouteTableAssociationArgs{\n\t\t\tTransitRouterRouteTableId: defaultTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterAttachmentId: defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMaster = new Switch(\"defaultMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(masterZone)\n .build());\n\n var defaultSlave = new Switch(\"defaultSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(slaveZone)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(defaultInstance.id())\n .build());\n\n var defaultTransitRouterRouteTable = new TransitRouterRouteTable(\"defaultTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .build());\n\n var defaultTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"defaultTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(defaultInstance.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .vpcId(defaultNetwork.id())\n .transitRouterVpcAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(defaultMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(defaultSlave.id())\n .build())\n .build());\n\n var defaultTransitRouterRouteTableAssociation = new TransitRouterRouteTableAssociation(\"defaultTransitRouterRouteTableAssociation\", TransitRouterRouteTableAssociationArgs.builder()\n .transitRouterRouteTableId(defaultTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterAttachmentId(defaultTransitRouterVpcAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMaster:\n type: alicloud:vpc:Switch\n name: default_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${masterZone}\n defaultSlave:\n type: alicloud:vpc:Switch\n name: default_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${slaveZone}\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n transitRouterName: ${name}\n cenId: ${defaultInstance.id}\n defaultTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n defaultTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: default\n properties:\n cenId: ${defaultInstance.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n vpcId: ${defaultNetwork.id}\n transitRouterVpcAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${defaultMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${defaultSlave.id}\n defaultTransitRouterRouteTableAssociation:\n type: alicloud:cen:TransitRouterRouteTableAssociation\n name: default\n properties:\n transitRouterRouteTableId: ${defaultTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterAttachmentId: ${defaultTransitRouterVpcAttachment.transitRouterAttachmentId}\nvariables:\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Route Table Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTableAssociation:TransitRouterRouteTableAssociation example \u003ctransit_router_attachment_id\u003e:\u003ctransit_router_route_table_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Route Table Association resource.\n\nThe routing association of the routing table of the forwarding router.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Route Table Association and how to use it, see [What is Transit Router Route Table Association](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-associatetransitrouterattachmentwithroutetable).\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMaster = new alicloud.vpc.Switch(\"default_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: masterZone,\n});\nconst defaultSlave = new alicloud.vpc.Switch(\"default_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: slaveZone,\n});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {\n transitRouterName: name,\n cenId: defaultInstance.id,\n});\nconst defaultTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"default\", {transitRouterId: defaultTransitRouter.transitRouterId});\nconst defaultTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"default\", {\n cenId: defaultInstance.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n vpcId: defaultNetwork.id,\n transitRouterVpcAttachmentName: name,\n transitRouterAttachmentDescription: name,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: defaultMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: defaultSlave.id,\n },\n ],\n});\nconst defaultTransitRouterRouteTableAssociation = new alicloud.cen.TransitRouterRouteTableAssociation(\"default\", {\n transitRouterRouteTableId: defaultTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterAttachmentId: defaultTransitRouterVpcAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_master = alicloud.vpc.Switch(\"default_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=default_network.id,\n zone_id=master_zone)\ndefault_slave = alicloud.vpc.Switch(\"default_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=default_network.id,\n zone_id=slave_zone)\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\",\n transit_router_name=name,\n cen_id=default_instance.id)\ndefault_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"default\", transit_router_id=default_transit_router.transit_router_id)\ndefault_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"default\",\n cen_id=default_instance.id,\n transit_router_id=default_transit_router.transit_router_id,\n vpc_id=default_network.id,\n transit_router_vpc_attachment_name=name,\n transit_router_attachment_description=name,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": default_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": default_slave.id,\n },\n ])\ndefault_transit_router_route_table_association = alicloud.cen.TransitRouterRouteTableAssociation(\"default\",\n transit_router_route_table_id=default_transit_router_route_table.transit_router_route_table_id,\n transit_router_attachment_id=default_transit_router_vpc_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMaster = new AliCloud.Vpc.Switch(\"default_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = masterZone,\n });\n\n var defaultSlave = new AliCloud.Vpc.Switch(\"default_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = slaveZone,\n });\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n TransitRouterName = name,\n CenId = defaultInstance.Id,\n });\n\n var defaultTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"default\", new()\n {\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n });\n\n var defaultTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"default\", new()\n {\n CenId = defaultInstance.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n VpcId = defaultNetwork.Id,\n TransitRouterVpcAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = defaultMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = defaultSlave.Id,\n },\n },\n });\n\n var defaultTransitRouterRouteTableAssociation = new AliCloud.Cen.TransitRouterRouteTableAssociation(\"default\", new()\n {\n TransitRouterRouteTableId = defaultTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterAttachmentId = defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMaster, err := vpc.NewSwitch(ctx, \"default_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSlave, err := vpc.NewSwitch(ctx, \"default_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"default\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"default\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: defaultInstance.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tTransitRouterVpcAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: defaultMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: defaultSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTableAssociation(ctx, \"default\", \u0026cen.TransitRouterRouteTableAssociationArgs{\n\t\t\tTransitRouterRouteTableId: defaultTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterAttachmentId: defaultTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableAssociation;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMaster = new Switch(\"defaultMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(masterZone)\n .build());\n\n var defaultSlave = new Switch(\"defaultSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(slaveZone)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(defaultInstance.id())\n .build());\n\n var defaultTransitRouterRouteTable = new TransitRouterRouteTable(\"defaultTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .build());\n\n var defaultTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"defaultTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(defaultInstance.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .vpcId(defaultNetwork.id())\n .transitRouterVpcAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(defaultMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(defaultSlave.id())\n .build())\n .build());\n\n var defaultTransitRouterRouteTableAssociation = new TransitRouterRouteTableAssociation(\"defaultTransitRouterRouteTableAssociation\", TransitRouterRouteTableAssociationArgs.builder()\n .transitRouterRouteTableId(defaultTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterAttachmentId(defaultTransitRouterVpcAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMaster:\n type: alicloud:vpc:Switch\n name: default_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${masterZone}\n defaultSlave:\n type: alicloud:vpc:Switch\n name: default_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${slaveZone}\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n transitRouterName: ${name}\n cenId: ${defaultInstance.id}\n defaultTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: default\n properties:\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n defaultTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: default\n properties:\n cenId: ${defaultInstance.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n vpcId: ${defaultNetwork.id}\n transitRouterVpcAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${defaultMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${defaultSlave.id}\n defaultTransitRouterRouteTableAssociation:\n type: alicloud:cen:TransitRouterRouteTableAssociation\n name: default\n properties:\n transitRouterRouteTableId: ${defaultTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterAttachmentId: ${defaultTransitRouterVpcAttachment.transitRouterAttachmentId}\nvariables:\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Route Table Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTableAssociation:TransitRouterRouteTableAssociation example \u003ctransit_router_attachment_id\u003e:\u003ctransit_router_route_table_id\u003e\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -116429,7 +118294,7 @@
}
},
"alicloud:cen/transitRouterRouteTablePropagation:TransitRouterRouteTablePropagation": {
- "description": "Provides a CEN transit router route table propagation resource.[What is Cen Transit Router Route Table Propagation](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-enabletransitrouterroutetablepropagation)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouterRouteTablePropagation = new alicloud.cen.TransitRouterRouteTablePropagation(\"example\", {\n transitRouterRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_router_route_table_propagation = alicloud.cen.TransitRouterRouteTablePropagation(\"example\",\n transit_router_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouterRouteTablePropagation = new AliCloud.Cen.TransitRouterRouteTablePropagation(\"example\", new()\n {\n TransitRouterRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTablePropagation(ctx, \"example\", \u0026cen.TransitRouterRouteTablePropagationArgs{\n\t\t\tTransitRouterRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTablePropagation;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTablePropagationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouterRouteTablePropagation = new TransitRouterRouteTablePropagation(\"exampleTransitRouterRouteTablePropagation\", TransitRouterRouteTablePropagationArgs.builder()\n .transitRouterRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouterRouteTablePropagation:\n type: alicloud:cen:TransitRouterRouteTablePropagation\n name: example\n properties:\n transitRouterRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN transit router route table propagation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTablePropagation:TransitRouterRouteTablePropagation default tr-********:tr-attach-********\n```\n\n",
+ "description": "Provides a CEN transit router route table propagation resource.[What is Cen Transit Router Route Table Propagation](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-enabletransitrouterroutetablepropagation)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\nconst exampleTransitRouterRouteTable = new alicloud.cen.TransitRouterRouteTable(\"example\", {transitRouterId: exampleTransitRouter.transitRouterId});\nconst exampleTransitRouterRouteTablePropagation = new alicloud.cen.TransitRouterRouteTablePropagation(\"example\", {\n transitRouterRouteTableId: exampleTransitRouterRouteTable.transitRouterRouteTableId,\n transitRouterAttachmentId: exampleTransitRouterVpcAttachment.transitRouterAttachmentId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\nexample_transit_router_route_table = alicloud.cen.TransitRouterRouteTable(\"example\", transit_router_id=example_transit_router.transit_router_id)\nexample_transit_router_route_table_propagation = alicloud.cen.TransitRouterRouteTablePropagation(\"example\",\n transit_router_route_table_id=example_transit_router_route_table.transit_router_route_table_id,\n transit_router_attachment_id=example_transit_router_vpc_attachment.transit_router_attachment_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n var exampleTransitRouterRouteTable = new AliCloud.Cen.TransitRouterRouteTable(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n });\n\n var exampleTransitRouterRouteTablePropagation = new AliCloud.Cen.TransitRouterRouteTablePropagation(\"example\", new()\n {\n TransitRouterRouteTableId = exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n TransitRouterAttachmentId = exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterVpcAttachment, err := cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterRouteTable, err := cen.NewTransitRouterRouteTable(ctx, \"example\", \u0026cen.TransitRouterRouteTableArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterRouteTablePropagation(ctx, \"example\", \u0026cen.TransitRouterRouteTablePropagationArgs{\n\t\t\tTransitRouterRouteTableId: exampleTransitRouterRouteTable.TransitRouterRouteTableId,\n\t\t\tTransitRouterAttachmentId: exampleTransitRouterVpcAttachment.TransitRouterAttachmentId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTable;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTablePropagation;\nimport com.pulumi.alicloud.cen.TransitRouterRouteTablePropagationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n var exampleTransitRouterRouteTable = new TransitRouterRouteTable(\"exampleTransitRouterRouteTable\", TransitRouterRouteTableArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .build());\n\n var exampleTransitRouterRouteTablePropagation = new TransitRouterRouteTablePropagation(\"exampleTransitRouterRouteTablePropagation\", TransitRouterRouteTablePropagationArgs.builder()\n .transitRouterRouteTableId(exampleTransitRouterRouteTable.transitRouterRouteTableId())\n .transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\n exampleTransitRouterRouteTable:\n type: alicloud:cen:TransitRouterRouteTable\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n exampleTransitRouterRouteTablePropagation:\n type: alicloud:cen:TransitRouterRouteTablePropagation\n name: example\n properties:\n transitRouterRouteTableId: ${exampleTransitRouterRouteTable.transitRouterRouteTableId}\n transitRouterAttachmentId: ${exampleTransitRouterVpcAttachment.transitRouterAttachmentId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN transit router route table propagation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterRouteTablePropagation:TransitRouterRouteTablePropagation default tr-********:tr-attach-********\n```\n\n",
"properties": {
"dryRun": {
"type": "boolean",
@@ -116499,7 +118364,7 @@
}
},
"alicloud:cen/transitRouterVbrAttachment:TransitRouterVbrAttachment": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router VBR Attachment resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router VBR Attachment and how to use it, see [What is Transit Router VBR Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervbrattachment)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst nameRegex = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {cenId: _default.id});\nconst defaultVirtualBorderRouter = new alicloud.expressconnect.VirtualBorderRouter(\"default\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: nameRegex.then(nameRegex =\u003e nameRegex.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: 2420,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst defaultTransitRouterVbrAttachment = new alicloud.cen.TransitRouterVbrAttachment(\"default\", {\n cenId: _default.id,\n vbrId: defaultVirtualBorderRouter.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nname_regex = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\", cen_id=default.id)\ndefault_virtual_border_router = alicloud.expressconnect.VirtualBorderRouter(\"default\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=name_regex.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=2420,\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\ndefault_transit_router_vbr_attachment = alicloud.cen.TransitRouterVbrAttachment(\"default\",\n cen_id=default.id,\n vbr_id=default_virtual_border_router.id,\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var nameRegex = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = @default.Id,\n });\n\n var defaultVirtualBorderRouter = new AliCloud.ExpressConnect.VirtualBorderRouter(\"default\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = nameRegex.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = 2420,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var defaultTransitRouterVbrAttachment = new AliCloud.Cen.TransitRouterVbrAttachment(\"default\", new()\n {\n CenId = @default.Id,\n VbrId = defaultVirtualBorderRouter.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tnameRegex, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: _default.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualBorderRouter, err := expressconnect.NewVirtualBorderRouter(ctx, \"default\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(nameRegex.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: pulumi.Int(2420),\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVbrAttachment(ctx, \"default\", \u0026cen.TransitRouterVbrAttachmentArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tVbrId: defaultVirtualBorderRouter.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var nameRegex = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(default_.id())\n .build());\n\n var defaultVirtualBorderRouter = new VirtualBorderRouter(\"defaultVirtualBorderRouter\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(nameRegex.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(2420)\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var defaultTransitRouterVbrAttachment = new TransitRouterVbrAttachment(\"defaultTransitRouterVbrAttachment\", TransitRouterVbrAttachmentArgs.builder()\n .cenId(default_.id())\n .vbrId(defaultVirtualBorderRouter.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${default.id}\n defaultVirtualBorderRouter:\n type: alicloud:expressconnect:VirtualBorderRouter\n name: default\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${nameRegex.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: 2420\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n defaultTransitRouterVbrAttachment:\n type: alicloud:cen:TransitRouterVbrAttachment\n name: default\n properties:\n cenId: ${default.id}\n vbrId: ${defaultVirtualBorderRouter.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\nvariables:\n nameRegex:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router VBR Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVbrAttachment:TransitRouterVbrAttachment example \u003ccen_id\u003e:\u003ctransit_router_attachment_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router VBR Attachment resource.\n\nFor information about Cloud Enterprise Network (CEN) Transit Router VBR Attachment and how to use it, see [What is Transit Router VBR Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervbrattachment)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst nameRegex = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultTransitRouter = new alicloud.cen.TransitRouter(\"default\", {cenId: _default.id});\nconst defaultVirtualBorderRouter = new alicloud.expressconnect.VirtualBorderRouter(\"default\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: nameRegex.then(nameRegex =\u003e nameRegex.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: 2420,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst defaultTransitRouterVbrAttachment = new alicloud.cen.TransitRouterVbrAttachment(\"default\", {\n cenId: _default.id,\n vbrId: defaultVirtualBorderRouter.id,\n transitRouterId: defaultTransitRouter.transitRouterId,\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nname_regex = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_transit_router = alicloud.cen.TransitRouter(\"default\", cen_id=default.id)\ndefault_virtual_border_router = alicloud.expressconnect.VirtualBorderRouter(\"default\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=name_regex.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=2420,\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\ndefault_transit_router_vbr_attachment = alicloud.cen.TransitRouterVbrAttachment(\"default\",\n cen_id=default.id,\n vbr_id=default_virtual_border_router.id,\n transit_router_id=default_transit_router.transit_router_id,\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var nameRegex = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultTransitRouter = new AliCloud.Cen.TransitRouter(\"default\", new()\n {\n CenId = @default.Id,\n });\n\n var defaultVirtualBorderRouter = new AliCloud.ExpressConnect.VirtualBorderRouter(\"default\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = nameRegex.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = 2420,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var defaultTransitRouterVbrAttachment = new AliCloud.Cen.TransitRouterVbrAttachment(\"default\", new()\n {\n CenId = @default.Id,\n VbrId = defaultVirtualBorderRouter.Id,\n TransitRouterId = defaultTransitRouter.TransitRouterId,\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tnameRegex, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTransitRouter, err := cen.NewTransitRouter(ctx, \"default\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: _default.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVirtualBorderRouter, err := expressconnect.NewVirtualBorderRouter(ctx, \"default\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(nameRegex.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: pulumi.Int(2420),\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVbrAttachment(ctx, \"default\", \u0026cen.TransitRouterVbrAttachmentArgs{\n\t\t\tCenId: _default.ID(),\n\t\t\tVbrId: defaultVirtualBorderRouter.ID(),\n\t\t\tTransitRouterId: defaultTransitRouter.TransitRouterId,\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVbrAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var nameRegex = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultTransitRouter = new TransitRouter(\"defaultTransitRouter\", TransitRouterArgs.builder()\n .cenId(default_.id())\n .build());\n\n var defaultVirtualBorderRouter = new VirtualBorderRouter(\"defaultVirtualBorderRouter\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(nameRegex.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(2420)\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var defaultTransitRouterVbrAttachment = new TransitRouterVbrAttachment(\"defaultTransitRouterVbrAttachment\", TransitRouterVbrAttachmentArgs.builder()\n .cenId(default_.id())\n .vbrId(defaultVirtualBorderRouter.id())\n .transitRouterId(defaultTransitRouter.transitRouterId())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultTransitRouter:\n type: alicloud:cen:TransitRouter\n name: default\n properties:\n cenId: ${default.id}\n defaultVirtualBorderRouter:\n type: alicloud:expressconnect:VirtualBorderRouter\n name: default\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${nameRegex.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: 2420\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n defaultTransitRouterVbrAttachment:\n type: alicloud:cen:TransitRouterVbrAttachment\n name: default\n properties:\n cenId: ${default.id}\n vbrId: ${defaultVirtualBorderRouter.id}\n transitRouterId: ${defaultTransitRouter.transitRouterId}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\nvariables:\n nameRegex:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router VBR Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVbrAttachment:TransitRouterVbrAttachment example \u003ccen_id\u003e:\u003ctransit_router_attachment_id\u003e\n```\n\n",
"properties": {
"autoPublishRouteEnabled": {
"type": "boolean",
@@ -116709,7 +118574,7 @@
}
},
"alicloud:cen/transitRouterVpcAttachment:TransitRouterVpcAttachment": {
- "description": "Provides a Cen Transit Router Vpc Attachment resource.\n\n\n\nFor information about Cen Transit Router Vpc Attachment and how to use it, see [What is Transit Router Vpc Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervpcattachment)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCen Transit Router Vpc Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVpcAttachment:TransitRouterVpcAttachment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cen Transit Router Vpc Attachment resource.\n\n\n\nFor information about Cen Transit Router Vpc Attachment and how to use it, see [What is Transit Router Vpc Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervpcattachment)\n\n\u003e **NOTE:** Available since v1.126.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst masterZone = _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]);\nconst slaveZone = _default.then(_default =\u003e _default.resources?.[0]?.slaveZones?.[1]);\nconst example = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst exampleMaster = new alicloud.vpc.Switch(\"example_master\", {\n vswitchName: name,\n cidrBlock: \"192.168.1.0/24\",\n vpcId: example.id,\n zoneId: masterZone,\n});\nconst exampleSlave = new alicloud.vpc.Switch(\"example_slave\", {\n vswitchName: name,\n cidrBlock: \"192.168.2.0/24\",\n vpcId: example.id,\n zoneId: slaveZone,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n transitRouterName: name,\n cenId: exampleInstance.id,\n});\nconst exampleTransitRouterVpcAttachment = new alicloud.cen.TransitRouterVpcAttachment(\"example\", {\n cenId: exampleInstance.id,\n transitRouterId: exampleTransitRouter.transitRouterId,\n vpcId: example.id,\n zoneMappings: [\n {\n zoneId: masterZone,\n vswitchId: exampleMaster.id,\n },\n {\n zoneId: slaveZone,\n vswitchId: exampleSlave.id,\n },\n ],\n transitRouterAttachmentName: name,\n transitRouterAttachmentDescription: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nmaster_zone = default.resources[0].master_zones[0]\nslave_zone = default.resources[0].slave_zones[1]\nexample = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\nexample_master = alicloud.vpc.Switch(\"example_master\",\n vswitch_name=name,\n cidr_block=\"192.168.1.0/24\",\n vpc_id=example.id,\n zone_id=master_zone)\nexample_slave = alicloud.vpc.Switch(\"example_slave\",\n vswitch_name=name,\n cidr_block=\"192.168.2.0/24\",\n vpc_id=example.id,\n zone_id=slave_zone)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n transit_router_name=name,\n cen_id=example_instance.id)\nexample_transit_router_vpc_attachment = alicloud.cen.TransitRouterVpcAttachment(\"example\",\n cen_id=example_instance.id,\n transit_router_id=example_transit_router.transit_router_id,\n vpc_id=example.id,\n zone_mappings=[\n {\n \"zone_id\": master_zone,\n \"vswitch_id\": example_master.id,\n },\n {\n \"zone_id\": slave_zone,\n \"vswitch_id\": example_slave.id,\n },\n ],\n transit_router_attachment_name=name,\n transit_router_attachment_description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var masterZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0]));\n\n var slaveZone = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.SlaveZones[1]));\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var exampleMaster = new AliCloud.Vpc.Switch(\"example_master\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.1.0/24\",\n VpcId = example.Id,\n ZoneId = masterZone,\n });\n\n var exampleSlave = new AliCloud.Vpc.Switch(\"example_slave\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.2.0/24\",\n VpcId = example.Id,\n ZoneId = slaveZone,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n TransitRouterName = name,\n CenId = exampleInstance.Id,\n });\n\n var exampleTransitRouterVpcAttachment = new AliCloud.Cen.TransitRouterVpcAttachment(\"example\", new()\n {\n CenId = exampleInstance.Id,\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n VpcId = example.Id,\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = masterZone,\n VswitchId = exampleMaster.Id,\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = slaveZone,\n VswitchId = exampleSlave.Id,\n },\n },\n TransitRouterAttachmentName = name,\n TransitRouterAttachmentDescription = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmasterZone := _default.Resources[0].MasterZones[0]\n\t\tslaveZone := _default.Resources[0].SlaveZones[1]\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMaster, err := vpc.NewSwitch(ctx, \"example_master\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(masterZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSlave, err := vpc.NewSwitch(ctx, \"example_slave\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.2.0/24\"),\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tCenId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpcAttachment(ctx, \"example\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(masterZone),\n\t\t\t\t\tVswitchId: exampleMaster.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(slaveZone),\n\t\t\t\t\tVswitchId: exampleSlave.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var masterZone = default_.resources()[0].masterZones()[0];\n\n final var slaveZone = default_.resources()[0].slaveZones()[1];\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var exampleMaster = new Switch(\"exampleMaster\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.1.0/24\")\n .vpcId(example.id())\n .zoneId(masterZone)\n .build());\n\n var exampleSlave = new Switch(\"exampleSlave\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.2.0/24\")\n .vpcId(example.id())\n .zoneId(slaveZone)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .cenId(exampleInstance.id())\n .build());\n\n var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment(\"exampleTransitRouterVpcAttachment\", TransitRouterVpcAttachmentArgs.builder()\n .cenId(exampleInstance.id())\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .vpcId(example.id())\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(masterZone)\n .vswitchId(exampleMaster.id())\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(slaveZone)\n .vswitchId(exampleSlave.id())\n .build())\n .transitRouterAttachmentName(name)\n .transitRouterAttachmentDescription(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n exampleMaster:\n type: alicloud:vpc:Switch\n name: example_master\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.1.0/24\n vpcId: ${example.id}\n zoneId: ${masterZone}\n exampleSlave:\n type: alicloud:vpc:Switch\n name: example_slave\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.2.0/24\n vpcId: ${example.id}\n zoneId: ${slaveZone}\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n transitRouterName: ${name}\n cenId: ${exampleInstance.id}\n exampleTransitRouterVpcAttachment:\n type: alicloud:cen:TransitRouterVpcAttachment\n name: example\n properties:\n cenId: ${exampleInstance.id}\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n vpcId: ${example.id}\n zoneMappings:\n - zoneId: ${masterZone}\n vswitchId: ${exampleMaster.id}\n - zoneId: ${slaveZone}\n vswitchId: ${exampleSlave.id}\n transitRouterAttachmentName: ${name}\n transitRouterAttachmentDescription: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n masterZone: ${default.resources[0].masterZones[0]}\n slaveZone: ${default.resources[0].slaveZones[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCen Transit Router Vpc Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVpcAttachment:TransitRouterVpcAttachment example \u003cid\u003e\n```\n\n",
"properties": {
"autoPublishRouteEnabled": {
"type": "boolean",
@@ -117023,7 +118888,7 @@
}
},
"alicloud:cen/transitRouterVpnAttachment:TransitRouterVpnAttachment": {
- "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Vpn Attachment resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Vpn Attachment and how to use it, see [What is Transit Router Vpn Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervpnattachment).\n\n\u003e **NOTE:** Available since v1.183.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst example = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n cenId: example.id,\n transitRouterDescription: name,\n transitRouterName: name,\n});\nconst exampleCustomerGateway = new alicloud.vpn.CustomerGateway(\"example\", {\n customerGatewayName: name,\n ipAddress: \"42.104.22.210\",\n asn: \"45014\",\n description: name,\n});\nconst exampleGatewayVpnAttachment = new alicloud.vpn.GatewayVpnAttachment(\"example\", {\n customerGatewayId: exampleCustomerGateway.id,\n networkType: \"public\",\n localSubnet: \"0.0.0.0/0\",\n remoteSubnet: \"0.0.0.0/0\",\n effectImmediately: false,\n ikeConfig: {\n ikeAuthAlg: \"md5\",\n ikeEncAlg: \"des\",\n ikeVersion: \"ikev2\",\n ikeMode: \"main\",\n ikeLifetime: 86400,\n psk: \"tf-examplevpn2\",\n ikePfs: \"group1\",\n remoteId: \"examplebob2\",\n localId: \"examplealice2\",\n },\n ipsecConfig: {\n ipsecPfs: \"group5\",\n ipsecEncAlg: \"des\",\n ipsecAuthAlg: \"md5\",\n ipsecLifetime: 86400,\n },\n bgpConfig: {\n enable: true,\n localAsn: 45014,\n tunnelCidr: \"169.254.11.0/30\",\n localBgpIp: \"169.254.11.1\",\n },\n healthCheckConfig: {\n enable: true,\n sip: \"192.168.1.1\",\n dip: \"10.0.0.1\",\n interval: 10,\n retry: 10,\n policy: \"revoke_route\",\n },\n enableDpd: true,\n enableNatTraversal: true,\n vpnAttachmentName: name,\n});\nconst exampleTransitRouterCidr = new alicloud.cen.TransitRouterCidr(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n cidr: \"192.168.0.0/16\",\n transitRouterCidrName: name,\n description: name,\n publishCidrRoute: true,\n});\nconst exampleTransitRouterVpnAttachment = new alicloud.cen.TransitRouterVpnAttachment(\"example\", {\n autoPublishRouteEnabled: false,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterCidr.transitRouterId,\n vpnId: exampleGatewayVpnAttachment.id,\n zones: [{\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]),\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nexample = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n cen_id=example.id,\n transit_router_description=name,\n transit_router_name=name)\nexample_customer_gateway = alicloud.vpn.CustomerGateway(\"example\",\n customer_gateway_name=name,\n ip_address=\"42.104.22.210\",\n asn=\"45014\",\n description=name)\nexample_gateway_vpn_attachment = alicloud.vpn.GatewayVpnAttachment(\"example\",\n customer_gateway_id=example_customer_gateway.id,\n network_type=\"public\",\n local_subnet=\"0.0.0.0/0\",\n remote_subnet=\"0.0.0.0/0\",\n effect_immediately=False,\n ike_config={\n \"ike_auth_alg\": \"md5\",\n \"ike_enc_alg\": \"des\",\n \"ike_version\": \"ikev2\",\n \"ike_mode\": \"main\",\n \"ike_lifetime\": 86400,\n \"psk\": \"tf-examplevpn2\",\n \"ike_pfs\": \"group1\",\n \"remote_id\": \"examplebob2\",\n \"local_id\": \"examplealice2\",\n },\n ipsec_config={\n \"ipsec_pfs\": \"group5\",\n \"ipsec_enc_alg\": \"des\",\n \"ipsec_auth_alg\": \"md5\",\n \"ipsec_lifetime\": 86400,\n },\n bgp_config={\n \"enable\": True,\n \"local_asn\": 45014,\n \"tunnel_cidr\": \"169.254.11.0/30\",\n \"local_bgp_ip\": \"169.254.11.1\",\n },\n health_check_config={\n \"enable\": True,\n \"sip\": \"192.168.1.1\",\n \"dip\": \"10.0.0.1\",\n \"interval\": 10,\n \"retry\": 10,\n \"policy\": \"revoke_route\",\n },\n enable_dpd=True,\n enable_nat_traversal=True,\n vpn_attachment_name=name)\nexample_transit_router_cidr = alicloud.cen.TransitRouterCidr(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n cidr=\"192.168.0.0/16\",\n transit_router_cidr_name=name,\n description=name,\n publish_cidr_route=True)\nexample_transit_router_vpn_attachment = alicloud.cen.TransitRouterVpnAttachment(\"example\",\n auto_publish_route_enabled=False,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name,\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_cidr.transit_router_id,\n vpn_id=example_gateway_vpn_attachment.id,\n zones=[{\n \"zone_id\": default.resources[0].master_zones[0],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterDescription = name,\n TransitRouterName = name,\n });\n\n var exampleCustomerGateway = new AliCloud.Vpn.CustomerGateway(\"example\", new()\n {\n CustomerGatewayName = name,\n IpAddress = \"42.104.22.210\",\n Asn = \"45014\",\n Description = name,\n });\n\n var exampleGatewayVpnAttachment = new AliCloud.Vpn.GatewayVpnAttachment(\"example\", new()\n {\n CustomerGatewayId = exampleCustomerGateway.Id,\n NetworkType = \"public\",\n LocalSubnet = \"0.0.0.0/0\",\n RemoteSubnet = \"0.0.0.0/0\",\n EffectImmediately = false,\n IkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentIkeConfigArgs\n {\n IkeAuthAlg = \"md5\",\n IkeEncAlg = \"des\",\n IkeVersion = \"ikev2\",\n IkeMode = \"main\",\n IkeLifetime = 86400,\n Psk = \"tf-examplevpn2\",\n IkePfs = \"group1\",\n RemoteId = \"examplebob2\",\n LocalId = \"examplealice2\",\n },\n IpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentIpsecConfigArgs\n {\n IpsecPfs = \"group5\",\n IpsecEncAlg = \"des\",\n IpsecAuthAlg = \"md5\",\n IpsecLifetime = 86400,\n },\n BgpConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentBgpConfigArgs\n {\n Enable = true,\n LocalAsn = 45014,\n TunnelCidr = \"169.254.11.0/30\",\n LocalBgpIp = \"169.254.11.1\",\n },\n HealthCheckConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentHealthCheckConfigArgs\n {\n Enable = true,\n Sip = \"192.168.1.1\",\n Dip = \"10.0.0.1\",\n Interval = 10,\n Retry = 10,\n Policy = \"revoke_route\",\n },\n EnableDpd = true,\n EnableNatTraversal = true,\n VpnAttachmentName = name,\n });\n\n var exampleTransitRouterCidr = new AliCloud.Cen.TransitRouterCidr(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n Cidr = \"192.168.0.0/16\",\n TransitRouterCidrName = name,\n Description = name,\n PublishCidrRoute = true,\n });\n\n var exampleTransitRouterVpnAttachment = new AliCloud.Cen.TransitRouterVpnAttachment(\"example\", new()\n {\n AutoPublishRouteEnabled = false,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterCidr.TransitRouterId,\n VpnId = exampleGatewayVpnAttachment.Id,\n Zones = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpnAttachmentZoneArgs\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0])),\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterDescription: pulumi.String(name),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCustomerGateway, err := vpn.NewCustomerGateway(ctx, \"example\", \u0026vpn.CustomerGatewayArgs{\n\t\t\tCustomerGatewayName: pulumi.String(name),\n\t\t\tIpAddress: pulumi.String(\"42.104.22.210\"),\n\t\t\tAsn: pulumi.String(\"45014\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGatewayVpnAttachment, err := vpn.NewGatewayVpnAttachment(ctx, \"example\", \u0026vpn.GatewayVpnAttachmentArgs{\n\t\t\tCustomerGatewayId: exampleCustomerGateway.ID(),\n\t\t\tNetworkType: pulumi.String(\"public\"),\n\t\t\tLocalSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tRemoteSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tEffectImmediately: pulumi.Bool(false),\n\t\t\tIkeConfig: \u0026vpn.GatewayVpnAttachmentIkeConfigArgs{\n\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\tIkeEncAlg: pulumi.String(\"des\"),\n\t\t\t\tIkeVersion: pulumi.String(\"ikev2\"),\n\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\tIkeLifetime: pulumi.Int(86400),\n\t\t\t\tPsk: pulumi.String(\"tf-examplevpn2\"),\n\t\t\t\tIkePfs: pulumi.String(\"group1\"),\n\t\t\t\tRemoteId: pulumi.String(\"examplebob2\"),\n\t\t\t\tLocalId: pulumi.String(\"examplealice2\"),\n\t\t\t},\n\t\t\tIpsecConfig: \u0026vpn.GatewayVpnAttachmentIpsecConfigArgs{\n\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\tIpsecEncAlg: pulumi.String(\"des\"),\n\t\t\t\tIpsecAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\tIpsecLifetime: pulumi.Int(86400),\n\t\t\t},\n\t\t\tBgpConfig: \u0026vpn.GatewayVpnAttachmentBgpConfigArgs{\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tLocalAsn: pulumi.Int(45014),\n\t\t\t\tTunnelCidr: pulumi.String(\"169.254.11.0/30\"),\n\t\t\t\tLocalBgpIp: pulumi.String(\"169.254.11.1\"),\n\t\t\t},\n\t\t\tHealthCheckConfig: \u0026vpn.GatewayVpnAttachmentHealthCheckConfigArgs{\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tSip: pulumi.String(\"192.168.1.1\"),\n\t\t\t\tDip: pulumi.String(\"10.0.0.1\"),\n\t\t\t\tInterval: pulumi.Int(10),\n\t\t\t\tRetry: pulumi.Int(10),\n\t\t\t\tPolicy: pulumi.String(\"revoke_route\"),\n\t\t\t},\n\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\tVpnAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterCidr, err := cen.NewTransitRouterCidr(ctx, \"example\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tTransitRouterCidrName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPublishCidrRoute: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpnAttachment(ctx, \"example\", \u0026cen.TransitRouterVpnAttachmentArgs{\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(false),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t\tTransitRouterId: exampleTransitRouterCidr.TransitRouterId,\n\t\t\tVpnId: exampleGatewayVpnAttachment.ID(),\n\t\t\tZones: cen.TransitRouterVpnAttachmentZoneArray{\n\t\t\t\t\u0026cen.TransitRouterVpnAttachmentZoneArgs{\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[0]),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.vpn.CustomerGateway;\nimport com.pulumi.alicloud.vpn.CustomerGatewayArgs;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachment;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachmentArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIkeConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIpsecConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentBgpConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentHealthCheckConfigArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpnAttachmentZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(example.id())\n .transitRouterDescription(name)\n .transitRouterName(name)\n .build());\n\n var exampleCustomerGateway = new CustomerGateway(\"exampleCustomerGateway\", CustomerGatewayArgs.builder()\n .customerGatewayName(name)\n .ipAddress(\"42.104.22.210\")\n .asn(\"45014\")\n .description(name)\n .build());\n\n var exampleGatewayVpnAttachment = new GatewayVpnAttachment(\"exampleGatewayVpnAttachment\", GatewayVpnAttachmentArgs.builder()\n .customerGatewayId(exampleCustomerGateway.id())\n .networkType(\"public\")\n .localSubnet(\"0.0.0.0/0\")\n .remoteSubnet(\"0.0.0.0/0\")\n .effectImmediately(false)\n .ikeConfig(GatewayVpnAttachmentIkeConfigArgs.builder()\n .ikeAuthAlg(\"md5\")\n .ikeEncAlg(\"des\")\n .ikeVersion(\"ikev2\")\n .ikeMode(\"main\")\n .ikeLifetime(86400)\n .psk(\"tf-examplevpn2\")\n .ikePfs(\"group1\")\n .remoteId(\"examplebob2\")\n .localId(\"examplealice2\")\n .build())\n .ipsecConfig(GatewayVpnAttachmentIpsecConfigArgs.builder()\n .ipsecPfs(\"group5\")\n .ipsecEncAlg(\"des\")\n .ipsecAuthAlg(\"md5\")\n .ipsecLifetime(86400)\n .build())\n .bgpConfig(GatewayVpnAttachmentBgpConfigArgs.builder()\n .enable(true)\n .localAsn(45014)\n .tunnelCidr(\"169.254.11.0/30\")\n .localBgpIp(\"169.254.11.1\")\n .build())\n .healthCheckConfig(GatewayVpnAttachmentHealthCheckConfigArgs.builder()\n .enable(true)\n .sip(\"192.168.1.1\")\n .dip(\"10.0.0.1\")\n .interval(10)\n .retry(10)\n .policy(\"revoke_route\")\n .build())\n .enableDpd(true)\n .enableNatTraversal(true)\n .vpnAttachmentName(name)\n .build());\n\n var exampleTransitRouterCidr = new TransitRouterCidr(\"exampleTransitRouterCidr\", TransitRouterCidrArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .cidr(\"192.168.0.0/16\")\n .transitRouterCidrName(name)\n .description(name)\n .publishCidrRoute(true)\n .build());\n\n var exampleTransitRouterVpnAttachment = new TransitRouterVpnAttachment(\"exampleTransitRouterVpnAttachment\", TransitRouterVpnAttachmentArgs.builder()\n .autoPublishRouteEnabled(false)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterCidr.transitRouterId())\n .vpnId(exampleGatewayVpnAttachment.id())\n .zones(TransitRouterVpnAttachmentZoneArgs.builder()\n .zoneId(default_.resources()[0].masterZones()[0])\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${example.id}\n transitRouterDescription: ${name}\n transitRouterName: ${name}\n exampleCustomerGateway:\n type: alicloud:vpn:CustomerGateway\n name: example\n properties:\n customerGatewayName: ${name}\n ipAddress: 42.104.22.210\n asn: '45014'\n description: ${name}\n exampleGatewayVpnAttachment:\n type: alicloud:vpn:GatewayVpnAttachment\n name: example\n properties:\n customerGatewayId: ${exampleCustomerGateway.id}\n networkType: public\n localSubnet: 0.0.0.0/0\n remoteSubnet: 0.0.0.0/0\n effectImmediately: false\n ikeConfig:\n ikeAuthAlg: md5\n ikeEncAlg: des\n ikeVersion: ikev2\n ikeMode: main\n ikeLifetime: 86400\n psk: tf-examplevpn2\n ikePfs: group1\n remoteId: examplebob2\n localId: examplealice2\n ipsecConfig:\n ipsecPfs: group5\n ipsecEncAlg: des\n ipsecAuthAlg: md5\n ipsecLifetime: 86400\n bgpConfig:\n enable: true\n localAsn: 45014\n tunnelCidr: 169.254.11.0/30\n localBgpIp: 169.254.11.1\n healthCheckConfig:\n enable: true\n sip: 192.168.1.1\n dip: 10.0.0.1\n interval: 10\n retry: 10\n policy: revoke_route\n enableDpd: true\n enableNatTraversal: true\n vpnAttachmentName: ${name}\n exampleTransitRouterCidr:\n type: alicloud:cen:TransitRouterCidr\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n cidr: 192.168.0.0/16\n transitRouterCidrName: ${name}\n description: ${name}\n publishCidrRoute: true\n exampleTransitRouterVpnAttachment:\n type: alicloud:cen:TransitRouterVpnAttachment\n name: example\n properties:\n autoPublishRouteEnabled: false\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterCidr.transitRouterId}\n vpnId: ${exampleGatewayVpnAttachment.id}\n zones:\n - zoneId: ${default.resources[0].masterZones[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nDual Tunnel Mode Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultbpR5Uk = new alicloud.cen.Instance(\"defaultbpR5Uk\", {cenInstanceName: \"example-vpn-attachment\"});\nconst defaultM8Zo6H = new alicloud.cen.TransitRouter(\"defaultM8Zo6H\", {cenId: defaultbpR5Uk.id});\nconst defaultuUtyCv = new alicloud.cen.TransitRouterCidr(\"defaultuUtyCv\", {\n cidr: \"192.168.10.0/24\",\n transitRouterId: defaultM8Zo6H.transitRouterId,\n});\nconst defaultMeoCIz = new alicloud.vpn.CustomerGateway(\"defaultMeoCIz\", {\n ipAddress: \"0.0.0.0\",\n customerGatewayName: \"example-vpn-attachment\",\n}, {\n dependsOn: [defaultuUtyCv],\n});\nconst defaultGetTransitRouterService = alicloud.cen.getTransitRouterService({\n enable: \"On\",\n});\nconst defaultvrPzdh = new alicloud.vpn.GatewayVpnAttachment(\"defaultvrPzdh\", {\n networkType: \"public\",\n localSubnet: \"0.0.0.0/0\",\n enableTunnelsBgp: false,\n vpnAttachmentName: name,\n tunnelOptionsSpecifications: [\n {\n customerGatewayId: defaultMeoCIz.id,\n enableDpd: true,\n enableNatTraversal: true,\n tunnelIndex: 1,\n tunnelIkeConfig: {\n remoteId: \"2.2.2.2\",\n ikeEncAlg: \"aes\",\n ikeMode: \"main\",\n ikeVersion: \"ikev1\",\n localId: \"1.1.1.1\",\n ikeAuthAlg: \"md5\",\n ikeLifetime: 86100,\n ikePfs: \"group2\",\n psk: \"12345678\",\n },\n tunnelIpsecConfig: {\n ipsecAuthAlg: \"md5\",\n ipsecEncAlg: \"aes\",\n ipsecLifetime: 86200,\n ipsecPfs: \"group5\",\n },\n },\n {\n enableNatTraversal: true,\n tunnelIndex: 2,\n tunnelIkeConfig: {\n localId: \"4.4.4.4\",\n remoteId: \"5.5.5.5\",\n ikeLifetime: 86400,\n ikePfs: \"group5\",\n ikeMode: \"main\",\n ikeVersion: \"ikev2\",\n psk: \"32333442\",\n ikeAuthAlg: \"md5\",\n ikeEncAlg: \"aes\",\n },\n tunnelIpsecConfig: {\n ipsecEncAlg: \"aes\",\n ipsecLifetime: 86400,\n ipsecPfs: \"group5\",\n ipsecAuthAlg: \"sha256\",\n },\n customerGatewayId: defaultMeoCIz.id,\n enableDpd: true,\n },\n ],\n remoteSubnet: \"0.0.0.0/0\",\n});\nconst defaultTransitRouterVpnAttachment = new alicloud.cen.TransitRouterVpnAttachment(\"default\", {\n transitRouterId: defaultM8Zo6H.transitRouterId,\n vpnId: defaultvrPzdh.id,\n autoPublishRouteEnabled: false,\n chargeType: \"POSTPAY\",\n transitRouterAttachmentName: \"example-vpn-attachment\",\n vpnOwnerId: _default.then(_default =\u003e _default.id),\n cenId: defaultM8Zo6H.cenId,\n transitRouterAttachmentDescription: \"example-vpn-attachment\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefaultbp_r5_uk = alicloud.cen.Instance(\"defaultbpR5Uk\", cen_instance_name=\"example-vpn-attachment\")\ndefault_m8_zo6_h = alicloud.cen.TransitRouter(\"defaultM8Zo6H\", cen_id=defaultbp_r5_uk.id)\ndefaultu_uty_cv = alicloud.cen.TransitRouterCidr(\"defaultuUtyCv\",\n cidr=\"192.168.10.0/24\",\n transit_router_id=default_m8_zo6_h.transit_router_id)\ndefault_meo_c_iz = alicloud.vpn.CustomerGateway(\"defaultMeoCIz\",\n ip_address=\"0.0.0.0\",\n customer_gateway_name=\"example-vpn-attachment\",\n opts = pulumi.ResourceOptions(depends_on=[defaultu_uty_cv]))\ndefault_get_transit_router_service = alicloud.cen.get_transit_router_service(enable=\"On\")\ndefaultvr_pzdh = alicloud.vpn.GatewayVpnAttachment(\"defaultvrPzdh\",\n network_type=\"public\",\n local_subnet=\"0.0.0.0/0\",\n enable_tunnels_bgp=False,\n vpn_attachment_name=name,\n tunnel_options_specifications=[\n {\n \"customer_gateway_id\": default_meo_c_iz.id,\n \"enable_dpd\": True,\n \"enable_nat_traversal\": True,\n \"tunnel_index\": 1,\n \"tunnel_ike_config\": {\n \"remote_id\": \"2.2.2.2\",\n \"ike_enc_alg\": \"aes\",\n \"ike_mode\": \"main\",\n \"ike_version\": \"ikev1\",\n \"local_id\": \"1.1.1.1\",\n \"ike_auth_alg\": \"md5\",\n \"ike_lifetime\": 86100,\n \"ike_pfs\": \"group2\",\n \"psk\": \"12345678\",\n },\n \"tunnel_ipsec_config\": {\n \"ipsec_auth_alg\": \"md5\",\n \"ipsec_enc_alg\": \"aes\",\n \"ipsec_lifetime\": 86200,\n \"ipsec_pfs\": \"group5\",\n },\n },\n {\n \"enable_nat_traversal\": True,\n \"tunnel_index\": 2,\n \"tunnel_ike_config\": {\n \"local_id\": \"4.4.4.4\",\n \"remote_id\": \"5.5.5.5\",\n \"ike_lifetime\": 86400,\n \"ike_pfs\": \"group5\",\n \"ike_mode\": \"main\",\n \"ike_version\": \"ikev2\",\n \"psk\": \"32333442\",\n \"ike_auth_alg\": \"md5\",\n \"ike_enc_alg\": \"aes\",\n },\n \"tunnel_ipsec_config\": {\n \"ipsec_enc_alg\": \"aes\",\n \"ipsec_lifetime\": 86400,\n \"ipsec_pfs\": \"group5\",\n \"ipsec_auth_alg\": \"sha256\",\n },\n \"customer_gateway_id\": default_meo_c_iz.id,\n \"enable_dpd\": True,\n },\n ],\n remote_subnet=\"0.0.0.0/0\")\ndefault_transit_router_vpn_attachment = alicloud.cen.TransitRouterVpnAttachment(\"default\",\n transit_router_id=default_m8_zo6_h.transit_router_id,\n vpn_id=defaultvr_pzdh.id,\n auto_publish_route_enabled=False,\n charge_type=\"POSTPAY\",\n transit_router_attachment_name=\"example-vpn-attachment\",\n vpn_owner_id=default.id,\n cen_id=default_m8_zo6_h.cen_id,\n transit_router_attachment_description=\"example-vpn-attachment\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultbpR5Uk = new AliCloud.Cen.Instance(\"defaultbpR5Uk\", new()\n {\n CenInstanceName = \"example-vpn-attachment\",\n });\n\n var defaultM8Zo6H = new AliCloud.Cen.TransitRouter(\"defaultM8Zo6H\", new()\n {\n CenId = defaultbpR5Uk.Id,\n });\n\n var defaultuUtyCv = new AliCloud.Cen.TransitRouterCidr(\"defaultuUtyCv\", new()\n {\n Cidr = \"192.168.10.0/24\",\n TransitRouterId = defaultM8Zo6H.TransitRouterId,\n });\n\n var defaultMeoCIz = new AliCloud.Vpn.CustomerGateway(\"defaultMeoCIz\", new()\n {\n IpAddress = \"0.0.0.0\",\n CustomerGatewayName = \"example-vpn-attachment\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n defaultuUtyCv,\n },\n });\n\n var defaultGetTransitRouterService = AliCloud.Cen.GetTransitRouterService.Invoke(new()\n {\n Enable = \"On\",\n });\n\n var defaultvrPzdh = new AliCloud.Vpn.GatewayVpnAttachment(\"defaultvrPzdh\", new()\n {\n NetworkType = \"public\",\n LocalSubnet = \"0.0.0.0/0\",\n EnableTunnelsBgp = false,\n VpnAttachmentName = name,\n TunnelOptionsSpecifications = new[]\n {\n new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs\n {\n CustomerGatewayId = defaultMeoCIz.Id,\n EnableDpd = true,\n EnableNatTraversal = true,\n TunnelIndex = 1,\n TunnelIkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs\n {\n RemoteId = \"2.2.2.2\",\n IkeEncAlg = \"aes\",\n IkeMode = \"main\",\n IkeVersion = \"ikev1\",\n LocalId = \"1.1.1.1\",\n IkeAuthAlg = \"md5\",\n IkeLifetime = 86100,\n IkePfs = \"group2\",\n Psk = \"12345678\",\n },\n TunnelIpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs\n {\n IpsecAuthAlg = \"md5\",\n IpsecEncAlg = \"aes\",\n IpsecLifetime = 86200,\n IpsecPfs = \"group5\",\n },\n },\n new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs\n {\n EnableNatTraversal = true,\n TunnelIndex = 2,\n TunnelIkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs\n {\n LocalId = \"4.4.4.4\",\n RemoteId = \"5.5.5.5\",\n IkeLifetime = 86400,\n IkePfs = \"group5\",\n IkeMode = \"main\",\n IkeVersion = \"ikev2\",\n Psk = \"32333442\",\n IkeAuthAlg = \"md5\",\n IkeEncAlg = \"aes\",\n },\n TunnelIpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs\n {\n IpsecEncAlg = \"aes\",\n IpsecLifetime = 86400,\n IpsecPfs = \"group5\",\n IpsecAuthAlg = \"sha256\",\n },\n CustomerGatewayId = defaultMeoCIz.Id,\n EnableDpd = true,\n },\n },\n RemoteSubnet = \"0.0.0.0/0\",\n });\n\n var defaultTransitRouterVpnAttachment = new AliCloud.Cen.TransitRouterVpnAttachment(\"default\", new()\n {\n TransitRouterId = defaultM8Zo6H.TransitRouterId,\n VpnId = defaultvrPzdh.Id,\n AutoPublishRouteEnabled = false,\n ChargeType = \"POSTPAY\",\n TransitRouterAttachmentName = \"example-vpn-attachment\",\n VpnOwnerId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n CenId = defaultM8Zo6H.CenId,\n TransitRouterAttachmentDescription = \"example-vpn-attachment\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultbpR5Uk, err := cen.NewInstance(ctx, \"defaultbpR5Uk\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"example-vpn-attachment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultM8Zo6H, err := cen.NewTransitRouter(ctx, \"defaultM8Zo6H\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultbpR5Uk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultuUtyCv, err := cen.NewTransitRouterCidr(ctx, \"defaultuUtyCv\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tCidr: pulumi.String(\"192.168.10.0/24\"),\n\t\t\tTransitRouterId: defaultM8Zo6H.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMeoCIz, err := vpn.NewCustomerGateway(ctx, \"defaultMeoCIz\", \u0026vpn.CustomerGatewayArgs{\n\t\t\tIpAddress: pulumi.String(\"0.0.0.0\"),\n\t\t\tCustomerGatewayName: pulumi.String(\"example-vpn-attachment\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdefaultuUtyCv,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.GetTransitRouterService(ctx, \u0026cen.GetTransitRouterServiceArgs{\n\t\t\tEnable: pulumi.StringRef(\"On\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultvrPzdh, err := vpn.NewGatewayVpnAttachment(ctx, \"defaultvrPzdh\", \u0026vpn.GatewayVpnAttachmentArgs{\n\t\t\tNetworkType: pulumi.String(\"public\"),\n\t\t\tLocalSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tEnableTunnelsBgp: pulumi.Bool(false),\n\t\t\tVpnAttachmentName: pulumi.String(name),\n\t\t\tTunnelOptionsSpecifications: vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArray{\n\t\t\t\t\u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArgs{\n\t\t\t\t\tCustomerGatewayId: defaultMeoCIz.ID(),\n\t\t\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\t\t\tTunnelIndex: pulumi.Int(1),\n\t\t\t\t\tTunnelIkeConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs{\n\t\t\t\t\t\tRemoteId: pulumi.String(\"2.2.2.2\"),\n\t\t\t\t\t\tIkeEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\t\t\tIkeVersion: pulumi.String(\"ikev1\"),\n\t\t\t\t\t\tLocalId: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIkeLifetime: pulumi.Int(86100),\n\t\t\t\t\t\tIkePfs: pulumi.String(\"group2\"),\n\t\t\t\t\t\tPsk: pulumi.String(\"12345678\"),\n\t\t\t\t\t},\n\t\t\t\t\tTunnelIpsecConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs{\n\t\t\t\t\t\tIpsecAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIpsecEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIpsecLifetime: pulumi.Int(86200),\n\t\t\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArgs{\n\t\t\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\t\t\tTunnelIndex: pulumi.Int(2),\n\t\t\t\t\tTunnelIkeConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs{\n\t\t\t\t\t\tLocalId: pulumi.String(\"4.4.4.4\"),\n\t\t\t\t\t\tRemoteId: pulumi.String(\"5.5.5.5\"),\n\t\t\t\t\t\tIkeLifetime: pulumi.Int(86400),\n\t\t\t\t\t\tIkePfs: pulumi.String(\"group5\"),\n\t\t\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\t\t\tIkeVersion: pulumi.String(\"ikev2\"),\n\t\t\t\t\t\tPsk: pulumi.String(\"32333442\"),\n\t\t\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIkeEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t},\n\t\t\t\t\tTunnelIpsecConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs{\n\t\t\t\t\t\tIpsecEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIpsecLifetime: pulumi.Int(86400),\n\t\t\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\t\t\tIpsecAuthAlg: pulumi.String(\"sha256\"),\n\t\t\t\t\t},\n\t\t\t\t\tCustomerGatewayId: defaultMeoCIz.ID(),\n\t\t\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRemoteSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpnAttachment(ctx, \"default\", \u0026cen.TransitRouterVpnAttachmentArgs{\n\t\t\tTransitRouterId: defaultM8Zo6H.TransitRouterId,\n\t\t\tVpnId: defaultvrPzdh.ID(),\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(false),\n\t\t\tChargeType: pulumi.String(\"POSTPAY\"),\n\t\t\tTransitRouterAttachmentName: pulumi.String(\"example-vpn-attachment\"),\n\t\t\tVpnOwnerId: pulumi.String(_default.Id),\n\t\t\tCenId: defaultM8Zo6H.CenId,\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(\"example-vpn-attachment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport com.pulumi.alicloud.vpn.CustomerGateway;\nimport com.pulumi.alicloud.vpn.CustomerGatewayArgs;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterServiceArgs;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachment;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachmentArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultbpR5Uk = new Instance(\"defaultbpR5Uk\", InstanceArgs.builder()\n .cenInstanceName(\"example-vpn-attachment\")\n .build());\n\n var defaultM8Zo6H = new TransitRouter(\"defaultM8Zo6H\", TransitRouterArgs.builder()\n .cenId(defaultbpR5Uk.id())\n .build());\n\n var defaultuUtyCv = new TransitRouterCidr(\"defaultuUtyCv\", TransitRouterCidrArgs.builder()\n .cidr(\"192.168.10.0/24\")\n .transitRouterId(defaultM8Zo6H.transitRouterId())\n .build());\n\n var defaultMeoCIz = new CustomerGateway(\"defaultMeoCIz\", CustomerGatewayArgs.builder()\n .ipAddress(\"0.0.0.0\")\n .customerGatewayName(\"example-vpn-attachment\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(defaultuUtyCv)\n .build());\n\n final var defaultGetTransitRouterService = CenFunctions.getTransitRouterService(GetTransitRouterServiceArgs.builder()\n .enable(\"On\")\n .build());\n\n var defaultvrPzdh = new GatewayVpnAttachment(\"defaultvrPzdh\", GatewayVpnAttachmentArgs.builder()\n .networkType(\"public\")\n .localSubnet(\"0.0.0.0/0\")\n .enableTunnelsBgp(false)\n .vpnAttachmentName(name)\n .tunnelOptionsSpecifications( \n GatewayVpnAttachmentTunnelOptionsSpecificationArgs.builder()\n .customerGatewayId(defaultMeoCIz.id())\n .enableDpd(true)\n .enableNatTraversal(true)\n .tunnelIndex(1)\n .tunnelIkeConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs.builder()\n .remoteId(\"2.2.2.2\")\n .ikeEncAlg(\"aes\")\n .ikeMode(\"main\")\n .ikeVersion(\"ikev1\")\n .localId(\"1.1.1.1\")\n .ikeAuthAlg(\"md5\")\n .ikeLifetime(86100)\n .ikePfs(\"group2\")\n .psk(\"12345678\")\n .build())\n .tunnelIpsecConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs.builder()\n .ipsecAuthAlg(\"md5\")\n .ipsecEncAlg(\"aes\")\n .ipsecLifetime(86200)\n .ipsecPfs(\"group5\")\n .build())\n .build(),\n GatewayVpnAttachmentTunnelOptionsSpecificationArgs.builder()\n .enableNatTraversal(true)\n .tunnelIndex(2)\n .tunnelIkeConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs.builder()\n .localId(\"4.4.4.4\")\n .remoteId(\"5.5.5.5\")\n .ikeLifetime(86400)\n .ikePfs(\"group5\")\n .ikeMode(\"main\")\n .ikeVersion(\"ikev2\")\n .psk(\"32333442\")\n .ikeAuthAlg(\"md5\")\n .ikeEncAlg(\"aes\")\n .build())\n .tunnelIpsecConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs.builder()\n .ipsecEncAlg(\"aes\")\n .ipsecLifetime(86400)\n .ipsecPfs(\"group5\")\n .ipsecAuthAlg(\"sha256\")\n .build())\n .customerGatewayId(defaultMeoCIz.id())\n .enableDpd(true)\n .build())\n .remoteSubnet(\"0.0.0.0/0\")\n .build());\n\n var defaultTransitRouterVpnAttachment = new TransitRouterVpnAttachment(\"defaultTransitRouterVpnAttachment\", TransitRouterVpnAttachmentArgs.builder()\n .transitRouterId(defaultM8Zo6H.transitRouterId())\n .vpnId(defaultvrPzdh.id())\n .autoPublishRouteEnabled(false)\n .chargeType(\"POSTPAY\")\n .transitRouterAttachmentName(\"example-vpn-attachment\")\n .vpnOwnerId(default_.id())\n .cenId(defaultM8Zo6H.cenId())\n .transitRouterAttachmentDescription(\"example-vpn-attachment\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultbpR5Uk:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: example-vpn-attachment\n defaultM8Zo6H:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultbpR5Uk.id}\n defaultuUtyCv:\n type: alicloud:cen:TransitRouterCidr\n properties:\n cidr: 192.168.10.0/24\n transitRouterId: ${defaultM8Zo6H.transitRouterId}\n defaultMeoCIz:\n type: alicloud:vpn:CustomerGateway\n properties:\n ipAddress: 0.0.0.0\n customerGatewayName: example-vpn-attachment\n options:\n dependsOn:\n - ${defaultuUtyCv}\n defaultvrPzdh:\n type: alicloud:vpn:GatewayVpnAttachment\n properties:\n networkType: public\n localSubnet: 0.0.0.0/0\n enableTunnelsBgp: 'false'\n vpnAttachmentName: ${name}\n tunnelOptionsSpecifications:\n - customerGatewayId: ${defaultMeoCIz.id}\n enableDpd: 'true'\n enableNatTraversal: 'true'\n tunnelIndex: '1'\n tunnelIkeConfig:\n remoteId: 2.2.2.2\n ikeEncAlg: aes\n ikeMode: main\n ikeVersion: ikev1\n localId: 1.1.1.1\n ikeAuthAlg: md5\n ikeLifetime: '86100'\n ikePfs: group2\n psk: '12345678'\n tunnelIpsecConfig:\n ipsecAuthAlg: md5\n ipsecEncAlg: aes\n ipsecLifetime: '86200'\n ipsecPfs: group5\n - enableNatTraversal: 'true'\n tunnelIndex: '2'\n tunnelIkeConfig:\n localId: 4.4.4.4\n remoteId: 5.5.5.5\n ikeLifetime: '86400'\n ikePfs: group5\n ikeMode: main\n ikeVersion: ikev2\n psk: '32333442'\n ikeAuthAlg: md5\n ikeEncAlg: aes\n tunnelIpsecConfig:\n ipsecEncAlg: aes\n ipsecLifetime: '86400'\n ipsecPfs: group5\n ipsecAuthAlg: sha256\n customerGatewayId: ${defaultMeoCIz.id}\n enableDpd: 'true'\n remoteSubnet: 0.0.0.0/0\n defaultTransitRouterVpnAttachment:\n type: alicloud:cen:TransitRouterVpnAttachment\n name: default\n properties:\n transitRouterId: ${defaultM8Zo6H.transitRouterId}\n vpnId: ${defaultvrPzdh.id}\n autoPublishRouteEnabled: 'false'\n chargeType: POSTPAY\n transitRouterAttachmentName: example-vpn-attachment\n vpnOwnerId: ${default.id}\n cenId: ${defaultM8Zo6H.cenId}\n transitRouterAttachmentDescription: example-vpn-attachment\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetTransitRouterService:\n fn::invoke:\n function: alicloud:cen:getTransitRouterService\n arguments:\n enable: On\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Vpn Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVpnAttachment:TransitRouterVpnAttachment example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Enterprise Network (CEN) Transit Router Vpn Attachment resource.\n\n\n\nFor information about Cloud Enterprise Network (CEN) Transit Router Vpn Attachment and how to use it, see [What is Transit Router Vpn Attachment](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-createtransitroutervpnattachment).\n\n\u003e **NOTE:** Available since v1.183.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst example = new alicloud.cen.Instance(\"example\", {cenInstanceName: name});\nconst exampleTransitRouter = new alicloud.cen.TransitRouter(\"example\", {\n cenId: example.id,\n transitRouterDescription: name,\n transitRouterName: name,\n});\nconst exampleCustomerGateway = new alicloud.vpn.CustomerGateway(\"example\", {\n customerGatewayName: name,\n ipAddress: \"42.104.22.210\",\n asn: \"45014\",\n description: name,\n});\nconst exampleGatewayVpnAttachment = new alicloud.vpn.GatewayVpnAttachment(\"example\", {\n customerGatewayId: exampleCustomerGateway.id,\n networkType: \"public\",\n localSubnet: \"0.0.0.0/0\",\n remoteSubnet: \"0.0.0.0/0\",\n effectImmediately: false,\n ikeConfig: {\n ikeAuthAlg: \"md5\",\n ikeEncAlg: \"des\",\n ikeVersion: \"ikev2\",\n ikeMode: \"main\",\n ikeLifetime: 86400,\n psk: \"tf-examplevpn2\",\n ikePfs: \"group1\",\n remoteId: \"examplebob2\",\n localId: \"examplealice2\",\n },\n ipsecConfig: {\n ipsecPfs: \"group5\",\n ipsecEncAlg: \"des\",\n ipsecAuthAlg: \"md5\",\n ipsecLifetime: 86400,\n },\n bgpConfig: {\n enable: true,\n localAsn: 45014,\n tunnelCidr: \"169.254.11.0/30\",\n localBgpIp: \"169.254.11.1\",\n },\n healthCheckConfig: {\n enable: true,\n sip: \"192.168.1.1\",\n dip: \"10.0.0.1\",\n interval: 10,\n retry: 10,\n policy: \"revoke_route\",\n },\n enableDpd: true,\n enableNatTraversal: true,\n vpnAttachmentName: name,\n});\nconst exampleTransitRouterCidr = new alicloud.cen.TransitRouterCidr(\"example\", {\n transitRouterId: exampleTransitRouter.transitRouterId,\n cidr: \"192.168.0.0/16\",\n transitRouterCidrName: name,\n description: name,\n publishCidrRoute: true,\n});\nconst exampleTransitRouterVpnAttachment = new alicloud.cen.TransitRouterVpnAttachment(\"example\", {\n autoPublishRouteEnabled: false,\n transitRouterAttachmentDescription: name,\n transitRouterAttachmentName: name,\n cenId: exampleTransitRouter.cenId,\n transitRouterId: exampleTransitRouterCidr.transitRouterId,\n vpnId: exampleGatewayVpnAttachment.id,\n zones: [{\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[0]),\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.cen.get_transit_router_available_resources()\nexample = alicloud.cen.Instance(\"example\", cen_instance_name=name)\nexample_transit_router = alicloud.cen.TransitRouter(\"example\",\n cen_id=example.id,\n transit_router_description=name,\n transit_router_name=name)\nexample_customer_gateway = alicloud.vpn.CustomerGateway(\"example\",\n customer_gateway_name=name,\n ip_address=\"42.104.22.210\",\n asn=\"45014\",\n description=name)\nexample_gateway_vpn_attachment = alicloud.vpn.GatewayVpnAttachment(\"example\",\n customer_gateway_id=example_customer_gateway.id,\n network_type=\"public\",\n local_subnet=\"0.0.0.0/0\",\n remote_subnet=\"0.0.0.0/0\",\n effect_immediately=False,\n ike_config={\n \"ike_auth_alg\": \"md5\",\n \"ike_enc_alg\": \"des\",\n \"ike_version\": \"ikev2\",\n \"ike_mode\": \"main\",\n \"ike_lifetime\": 86400,\n \"psk\": \"tf-examplevpn2\",\n \"ike_pfs\": \"group1\",\n \"remote_id\": \"examplebob2\",\n \"local_id\": \"examplealice2\",\n },\n ipsec_config={\n \"ipsec_pfs\": \"group5\",\n \"ipsec_enc_alg\": \"des\",\n \"ipsec_auth_alg\": \"md5\",\n \"ipsec_lifetime\": 86400,\n },\n bgp_config={\n \"enable\": True,\n \"local_asn\": 45014,\n \"tunnel_cidr\": \"169.254.11.0/30\",\n \"local_bgp_ip\": \"169.254.11.1\",\n },\n health_check_config={\n \"enable\": True,\n \"sip\": \"192.168.1.1\",\n \"dip\": \"10.0.0.1\",\n \"interval\": 10,\n \"retry\": 10,\n \"policy\": \"revoke_route\",\n },\n enable_dpd=True,\n enable_nat_traversal=True,\n vpn_attachment_name=name)\nexample_transit_router_cidr = alicloud.cen.TransitRouterCidr(\"example\",\n transit_router_id=example_transit_router.transit_router_id,\n cidr=\"192.168.0.0/16\",\n transit_router_cidr_name=name,\n description=name,\n publish_cidr_route=True)\nexample_transit_router_vpn_attachment = alicloud.cen.TransitRouterVpnAttachment(\"example\",\n auto_publish_route_enabled=False,\n transit_router_attachment_description=name,\n transit_router_attachment_name=name,\n cen_id=example_transit_router.cen_id,\n transit_router_id=example_transit_router_cidr.transit_router_id,\n vpn_id=example_gateway_vpn_attachment.id,\n zones=[{\n \"zone_id\": default.resources[0].master_zones[0],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var example = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n });\n\n var exampleTransitRouter = new AliCloud.Cen.TransitRouter(\"example\", new()\n {\n CenId = example.Id,\n TransitRouterDescription = name,\n TransitRouterName = name,\n });\n\n var exampleCustomerGateway = new AliCloud.Vpn.CustomerGateway(\"example\", new()\n {\n CustomerGatewayName = name,\n IpAddress = \"42.104.22.210\",\n Asn = \"45014\",\n Description = name,\n });\n\n var exampleGatewayVpnAttachment = new AliCloud.Vpn.GatewayVpnAttachment(\"example\", new()\n {\n CustomerGatewayId = exampleCustomerGateway.Id,\n NetworkType = \"public\",\n LocalSubnet = \"0.0.0.0/0\",\n RemoteSubnet = \"0.0.0.0/0\",\n EffectImmediately = false,\n IkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentIkeConfigArgs\n {\n IkeAuthAlg = \"md5\",\n IkeEncAlg = \"des\",\n IkeVersion = \"ikev2\",\n IkeMode = \"main\",\n IkeLifetime = 86400,\n Psk = \"tf-examplevpn2\",\n IkePfs = \"group1\",\n RemoteId = \"examplebob2\",\n LocalId = \"examplealice2\",\n },\n IpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentIpsecConfigArgs\n {\n IpsecPfs = \"group5\",\n IpsecEncAlg = \"des\",\n IpsecAuthAlg = \"md5\",\n IpsecLifetime = 86400,\n },\n BgpConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentBgpConfigArgs\n {\n Enable = true,\n LocalAsn = 45014,\n TunnelCidr = \"169.254.11.0/30\",\n LocalBgpIp = \"169.254.11.1\",\n },\n HealthCheckConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentHealthCheckConfigArgs\n {\n Enable = true,\n Sip = \"192.168.1.1\",\n Dip = \"10.0.0.1\",\n Interval = 10,\n Retry = 10,\n Policy = \"revoke_route\",\n },\n EnableDpd = true,\n EnableNatTraversal = true,\n VpnAttachmentName = name,\n });\n\n var exampleTransitRouterCidr = new AliCloud.Cen.TransitRouterCidr(\"example\", new()\n {\n TransitRouterId = exampleTransitRouter.TransitRouterId,\n Cidr = \"192.168.0.0/16\",\n TransitRouterCidrName = name,\n Description = name,\n PublishCidrRoute = true,\n });\n\n var exampleTransitRouterVpnAttachment = new AliCloud.Cen.TransitRouterVpnAttachment(\"example\", new()\n {\n AutoPublishRouteEnabled = false,\n TransitRouterAttachmentDescription = name,\n TransitRouterAttachmentName = name,\n CenId = exampleTransitRouter.CenId,\n TransitRouterId = exampleTransitRouterCidr.TransitRouterId,\n VpnId = exampleGatewayVpnAttachment.Id,\n Zones = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpnAttachmentZoneArgs\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[0])),\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouter, err := cen.NewTransitRouter(ctx, \"example\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: example.ID(),\n\t\t\tTransitRouterDescription: pulumi.String(name),\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCustomerGateway, err := vpn.NewCustomerGateway(ctx, \"example\", \u0026vpn.CustomerGatewayArgs{\n\t\t\tCustomerGatewayName: pulumi.String(name),\n\t\t\tIpAddress: pulumi.String(\"42.104.22.210\"),\n\t\t\tAsn: pulumi.String(\"45014\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGatewayVpnAttachment, err := vpn.NewGatewayVpnAttachment(ctx, \"example\", \u0026vpn.GatewayVpnAttachmentArgs{\n\t\t\tCustomerGatewayId: exampleCustomerGateway.ID(),\n\t\t\tNetworkType: pulumi.String(\"public\"),\n\t\t\tLocalSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tRemoteSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tEffectImmediately: pulumi.Bool(false),\n\t\t\tIkeConfig: \u0026vpn.GatewayVpnAttachmentIkeConfigArgs{\n\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\tIkeEncAlg: pulumi.String(\"des\"),\n\t\t\t\tIkeVersion: pulumi.String(\"ikev2\"),\n\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\tIkeLifetime: pulumi.Int(86400),\n\t\t\t\tPsk: pulumi.String(\"tf-examplevpn2\"),\n\t\t\t\tIkePfs: pulumi.String(\"group1\"),\n\t\t\t\tRemoteId: pulumi.String(\"examplebob2\"),\n\t\t\t\tLocalId: pulumi.String(\"examplealice2\"),\n\t\t\t},\n\t\t\tIpsecConfig: \u0026vpn.GatewayVpnAttachmentIpsecConfigArgs{\n\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\tIpsecEncAlg: pulumi.String(\"des\"),\n\t\t\t\tIpsecAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\tIpsecLifetime: pulumi.Int(86400),\n\t\t\t},\n\t\t\tBgpConfig: \u0026vpn.GatewayVpnAttachmentBgpConfigArgs{\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tLocalAsn: pulumi.Int(45014),\n\t\t\t\tTunnelCidr: pulumi.String(\"169.254.11.0/30\"),\n\t\t\t\tLocalBgpIp: pulumi.String(\"169.254.11.1\"),\n\t\t\t},\n\t\t\tHealthCheckConfig: \u0026vpn.GatewayVpnAttachmentHealthCheckConfigArgs{\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tSip: pulumi.String(\"192.168.1.1\"),\n\t\t\t\tDip: pulumi.String(\"10.0.0.1\"),\n\t\t\t\tInterval: pulumi.Int(10),\n\t\t\t\tRetry: pulumi.Int(10),\n\t\t\t\tPolicy: pulumi.String(\"revoke_route\"),\n\t\t\t},\n\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\tVpnAttachmentName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTransitRouterCidr, err := cen.NewTransitRouterCidr(ctx, \"example\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tTransitRouterId: exampleTransitRouter.TransitRouterId,\n\t\t\tCidr: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tTransitRouterCidrName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPublishCidrRoute: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpnAttachment(ctx, \"example\", \u0026cen.TransitRouterVpnAttachmentArgs{\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(false),\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(name),\n\t\t\tTransitRouterAttachmentName: pulumi.String(name),\n\t\t\tCenId: exampleTransitRouter.CenId,\n\t\t\tTransitRouterId: exampleTransitRouterCidr.TransitRouterId,\n\t\t\tVpnId: exampleGatewayVpnAttachment.ID(),\n\t\t\tZones: cen.TransitRouterVpnAttachmentZoneArray{\n\t\t\t\t\u0026cen.TransitRouterVpnAttachmentZoneArgs{\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[0]),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.vpn.CustomerGateway;\nimport com.pulumi.alicloud.vpn.CustomerGatewayArgs;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachment;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachmentArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIkeConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIpsecConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentBgpConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentHealthCheckConfigArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpnAttachmentZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n var example = new Instance(\"example\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var exampleTransitRouter = new TransitRouter(\"exampleTransitRouter\", TransitRouterArgs.builder()\n .cenId(example.id())\n .transitRouterDescription(name)\n .transitRouterName(name)\n .build());\n\n var exampleCustomerGateway = new CustomerGateway(\"exampleCustomerGateway\", CustomerGatewayArgs.builder()\n .customerGatewayName(name)\n .ipAddress(\"42.104.22.210\")\n .asn(\"45014\")\n .description(name)\n .build());\n\n var exampleGatewayVpnAttachment = new GatewayVpnAttachment(\"exampleGatewayVpnAttachment\", GatewayVpnAttachmentArgs.builder()\n .customerGatewayId(exampleCustomerGateway.id())\n .networkType(\"public\")\n .localSubnet(\"0.0.0.0/0\")\n .remoteSubnet(\"0.0.0.0/0\")\n .effectImmediately(false)\n .ikeConfig(GatewayVpnAttachmentIkeConfigArgs.builder()\n .ikeAuthAlg(\"md5\")\n .ikeEncAlg(\"des\")\n .ikeVersion(\"ikev2\")\n .ikeMode(\"main\")\n .ikeLifetime(86400)\n .psk(\"tf-examplevpn2\")\n .ikePfs(\"group1\")\n .remoteId(\"examplebob2\")\n .localId(\"examplealice2\")\n .build())\n .ipsecConfig(GatewayVpnAttachmentIpsecConfigArgs.builder()\n .ipsecPfs(\"group5\")\n .ipsecEncAlg(\"des\")\n .ipsecAuthAlg(\"md5\")\n .ipsecLifetime(86400)\n .build())\n .bgpConfig(GatewayVpnAttachmentBgpConfigArgs.builder()\n .enable(true)\n .localAsn(45014)\n .tunnelCidr(\"169.254.11.0/30\")\n .localBgpIp(\"169.254.11.1\")\n .build())\n .healthCheckConfig(GatewayVpnAttachmentHealthCheckConfigArgs.builder()\n .enable(true)\n .sip(\"192.168.1.1\")\n .dip(\"10.0.0.1\")\n .interval(10)\n .retry(10)\n .policy(\"revoke_route\")\n .build())\n .enableDpd(true)\n .enableNatTraversal(true)\n .vpnAttachmentName(name)\n .build());\n\n var exampleTransitRouterCidr = new TransitRouterCidr(\"exampleTransitRouterCidr\", TransitRouterCidrArgs.builder()\n .transitRouterId(exampleTransitRouter.transitRouterId())\n .cidr(\"192.168.0.0/16\")\n .transitRouterCidrName(name)\n .description(name)\n .publishCidrRoute(true)\n .build());\n\n var exampleTransitRouterVpnAttachment = new TransitRouterVpnAttachment(\"exampleTransitRouterVpnAttachment\", TransitRouterVpnAttachmentArgs.builder()\n .autoPublishRouteEnabled(false)\n .transitRouterAttachmentDescription(name)\n .transitRouterAttachmentName(name)\n .cenId(exampleTransitRouter.cenId())\n .transitRouterId(exampleTransitRouterCidr.transitRouterId())\n .vpnId(exampleGatewayVpnAttachment.id())\n .zones(TransitRouterVpnAttachmentZoneArgs.builder()\n .zoneId(default_.resources()[0].masterZones()[0])\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n exampleTransitRouter:\n type: alicloud:cen:TransitRouter\n name: example\n properties:\n cenId: ${example.id}\n transitRouterDescription: ${name}\n transitRouterName: ${name}\n exampleCustomerGateway:\n type: alicloud:vpn:CustomerGateway\n name: example\n properties:\n customerGatewayName: ${name}\n ipAddress: 42.104.22.210\n asn: '45014'\n description: ${name}\n exampleGatewayVpnAttachment:\n type: alicloud:vpn:GatewayVpnAttachment\n name: example\n properties:\n customerGatewayId: ${exampleCustomerGateway.id}\n networkType: public\n localSubnet: 0.0.0.0/0\n remoteSubnet: 0.0.0.0/0\n effectImmediately: false\n ikeConfig:\n ikeAuthAlg: md5\n ikeEncAlg: des\n ikeVersion: ikev2\n ikeMode: main\n ikeLifetime: 86400\n psk: tf-examplevpn2\n ikePfs: group1\n remoteId: examplebob2\n localId: examplealice2\n ipsecConfig:\n ipsecPfs: group5\n ipsecEncAlg: des\n ipsecAuthAlg: md5\n ipsecLifetime: 86400\n bgpConfig:\n enable: true\n localAsn: 45014\n tunnelCidr: 169.254.11.0/30\n localBgpIp: 169.254.11.1\n healthCheckConfig:\n enable: true\n sip: 192.168.1.1\n dip: 10.0.0.1\n interval: 10\n retry: 10\n policy: revoke_route\n enableDpd: true\n enableNatTraversal: true\n vpnAttachmentName: ${name}\n exampleTransitRouterCidr:\n type: alicloud:cen:TransitRouterCidr\n name: example\n properties:\n transitRouterId: ${exampleTransitRouter.transitRouterId}\n cidr: 192.168.0.0/16\n transitRouterCidrName: ${name}\n description: ${name}\n publishCidrRoute: true\n exampleTransitRouterVpnAttachment:\n type: alicloud:cen:TransitRouterVpnAttachment\n name: example\n properties:\n autoPublishRouteEnabled: false\n transitRouterAttachmentDescription: ${name}\n transitRouterAttachmentName: ${name}\n cenId: ${exampleTransitRouter.cenId}\n transitRouterId: ${exampleTransitRouterCidr.transitRouterId}\n vpnId: ${exampleGatewayVpnAttachment.id}\n zones:\n - zoneId: ${default.resources[0].masterZones[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nDual Tunnel Mode Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultbpR5Uk = new alicloud.cen.Instance(\"defaultbpR5Uk\", {cenInstanceName: \"example-vpn-attachment\"});\nconst defaultM8Zo6H = new alicloud.cen.TransitRouter(\"defaultM8Zo6H\", {cenId: defaultbpR5Uk.id});\nconst defaultuUtyCv = new alicloud.cen.TransitRouterCidr(\"defaultuUtyCv\", {\n cidr: \"192.168.10.0/24\",\n transitRouterId: defaultM8Zo6H.transitRouterId,\n});\nconst defaultMeoCIz = new alicloud.vpn.CustomerGateway(\"defaultMeoCIz\", {\n ipAddress: \"0.0.0.0\",\n customerGatewayName: \"example-vpn-attachment\",\n}, {\n dependsOn: [defaultuUtyCv],\n});\nconst defaultGetTransitRouterService = alicloud.cen.getTransitRouterService({\n enable: \"On\",\n});\nconst defaultvrPzdh = new alicloud.vpn.GatewayVpnAttachment(\"defaultvrPzdh\", {\n networkType: \"public\",\n localSubnet: \"0.0.0.0/0\",\n enableTunnelsBgp: false,\n vpnAttachmentName: name,\n tunnelOptionsSpecifications: [\n {\n customerGatewayId: defaultMeoCIz.id,\n enableDpd: true,\n enableNatTraversal: true,\n tunnelIndex: 1,\n tunnelIkeConfig: {\n remoteId: \"2.2.2.2\",\n ikeEncAlg: \"aes\",\n ikeMode: \"main\",\n ikeVersion: \"ikev1\",\n localId: \"1.1.1.1\",\n ikeAuthAlg: \"md5\",\n ikeLifetime: 86100,\n ikePfs: \"group2\",\n psk: \"12345678\",\n },\n tunnelIpsecConfig: {\n ipsecAuthAlg: \"md5\",\n ipsecEncAlg: \"aes\",\n ipsecLifetime: 86200,\n ipsecPfs: \"group5\",\n },\n },\n {\n enableNatTraversal: true,\n tunnelIndex: 2,\n tunnelIkeConfig: {\n localId: \"4.4.4.4\",\n remoteId: \"5.5.5.5\",\n ikeLifetime: 86400,\n ikePfs: \"group5\",\n ikeMode: \"main\",\n ikeVersion: \"ikev2\",\n psk: \"32333442\",\n ikeAuthAlg: \"md5\",\n ikeEncAlg: \"aes\",\n },\n tunnelIpsecConfig: {\n ipsecEncAlg: \"aes\",\n ipsecLifetime: 86400,\n ipsecPfs: \"group5\",\n ipsecAuthAlg: \"sha256\",\n },\n customerGatewayId: defaultMeoCIz.id,\n enableDpd: true,\n },\n ],\n remoteSubnet: \"0.0.0.0/0\",\n});\nconst defaultTransitRouterVpnAttachment = new alicloud.cen.TransitRouterVpnAttachment(\"default\", {\n transitRouterId: defaultM8Zo6H.transitRouterId,\n vpnId: defaultvrPzdh.id,\n autoPublishRouteEnabled: false,\n chargeType: \"POSTPAY\",\n transitRouterAttachmentName: \"example-vpn-attachment\",\n vpnOwnerId: _default.then(_default =\u003e _default.id),\n cenId: defaultM8Zo6H.cenId,\n transitRouterAttachmentDescription: \"example-vpn-attachment\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefaultbp_r5_uk = alicloud.cen.Instance(\"defaultbpR5Uk\", cen_instance_name=\"example-vpn-attachment\")\ndefault_m8_zo6_h = alicloud.cen.TransitRouter(\"defaultM8Zo6H\", cen_id=defaultbp_r5_uk.id)\ndefaultu_uty_cv = alicloud.cen.TransitRouterCidr(\"defaultuUtyCv\",\n cidr=\"192.168.10.0/24\",\n transit_router_id=default_m8_zo6_h.transit_router_id)\ndefault_meo_c_iz = alicloud.vpn.CustomerGateway(\"defaultMeoCIz\",\n ip_address=\"0.0.0.0\",\n customer_gateway_name=\"example-vpn-attachment\",\n opts = pulumi.ResourceOptions(depends_on=[defaultu_uty_cv]))\ndefault_get_transit_router_service = alicloud.cen.get_transit_router_service(enable=\"On\")\ndefaultvr_pzdh = alicloud.vpn.GatewayVpnAttachment(\"defaultvrPzdh\",\n network_type=\"public\",\n local_subnet=\"0.0.0.0/0\",\n enable_tunnels_bgp=False,\n vpn_attachment_name=name,\n tunnel_options_specifications=[\n {\n \"customer_gateway_id\": default_meo_c_iz.id,\n \"enable_dpd\": True,\n \"enable_nat_traversal\": True,\n \"tunnel_index\": 1,\n \"tunnel_ike_config\": {\n \"remote_id\": \"2.2.2.2\",\n \"ike_enc_alg\": \"aes\",\n \"ike_mode\": \"main\",\n \"ike_version\": \"ikev1\",\n \"local_id\": \"1.1.1.1\",\n \"ike_auth_alg\": \"md5\",\n \"ike_lifetime\": 86100,\n \"ike_pfs\": \"group2\",\n \"psk\": \"12345678\",\n },\n \"tunnel_ipsec_config\": {\n \"ipsec_auth_alg\": \"md5\",\n \"ipsec_enc_alg\": \"aes\",\n \"ipsec_lifetime\": 86200,\n \"ipsec_pfs\": \"group5\",\n },\n },\n {\n \"enable_nat_traversal\": True,\n \"tunnel_index\": 2,\n \"tunnel_ike_config\": {\n \"local_id\": \"4.4.4.4\",\n \"remote_id\": \"5.5.5.5\",\n \"ike_lifetime\": 86400,\n \"ike_pfs\": \"group5\",\n \"ike_mode\": \"main\",\n \"ike_version\": \"ikev2\",\n \"psk\": \"32333442\",\n \"ike_auth_alg\": \"md5\",\n \"ike_enc_alg\": \"aes\",\n },\n \"tunnel_ipsec_config\": {\n \"ipsec_enc_alg\": \"aes\",\n \"ipsec_lifetime\": 86400,\n \"ipsec_pfs\": \"group5\",\n \"ipsec_auth_alg\": \"sha256\",\n },\n \"customer_gateway_id\": default_meo_c_iz.id,\n \"enable_dpd\": True,\n },\n ],\n remote_subnet=\"0.0.0.0/0\")\ndefault_transit_router_vpn_attachment = alicloud.cen.TransitRouterVpnAttachment(\"default\",\n transit_router_id=default_m8_zo6_h.transit_router_id,\n vpn_id=defaultvr_pzdh.id,\n auto_publish_route_enabled=False,\n charge_type=\"POSTPAY\",\n transit_router_attachment_name=\"example-vpn-attachment\",\n vpn_owner_id=default.id,\n cen_id=default_m8_zo6_h.cen_id,\n transit_router_attachment_description=\"example-vpn-attachment\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultbpR5Uk = new AliCloud.Cen.Instance(\"defaultbpR5Uk\", new()\n {\n CenInstanceName = \"example-vpn-attachment\",\n });\n\n var defaultM8Zo6H = new AliCloud.Cen.TransitRouter(\"defaultM8Zo6H\", new()\n {\n CenId = defaultbpR5Uk.Id,\n });\n\n var defaultuUtyCv = new AliCloud.Cen.TransitRouterCidr(\"defaultuUtyCv\", new()\n {\n Cidr = \"192.168.10.0/24\",\n TransitRouterId = defaultM8Zo6H.TransitRouterId,\n });\n\n var defaultMeoCIz = new AliCloud.Vpn.CustomerGateway(\"defaultMeoCIz\", new()\n {\n IpAddress = \"0.0.0.0\",\n CustomerGatewayName = \"example-vpn-attachment\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n defaultuUtyCv,\n },\n });\n\n var defaultGetTransitRouterService = AliCloud.Cen.GetTransitRouterService.Invoke(new()\n {\n Enable = \"On\",\n });\n\n var defaultvrPzdh = new AliCloud.Vpn.GatewayVpnAttachment(\"defaultvrPzdh\", new()\n {\n NetworkType = \"public\",\n LocalSubnet = \"0.0.0.0/0\",\n EnableTunnelsBgp = false,\n VpnAttachmentName = name,\n TunnelOptionsSpecifications = new[]\n {\n new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs\n {\n CustomerGatewayId = defaultMeoCIz.Id,\n EnableDpd = true,\n EnableNatTraversal = true,\n TunnelIndex = 1,\n TunnelIkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs\n {\n RemoteId = \"2.2.2.2\",\n IkeEncAlg = \"aes\",\n IkeMode = \"main\",\n IkeVersion = \"ikev1\",\n LocalId = \"1.1.1.1\",\n IkeAuthAlg = \"md5\",\n IkeLifetime = 86100,\n IkePfs = \"group2\",\n Psk = \"12345678\",\n },\n TunnelIpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs\n {\n IpsecAuthAlg = \"md5\",\n IpsecEncAlg = \"aes\",\n IpsecLifetime = 86200,\n IpsecPfs = \"group5\",\n },\n },\n new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs\n {\n EnableNatTraversal = true,\n TunnelIndex = 2,\n TunnelIkeConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs\n {\n LocalId = \"4.4.4.4\",\n RemoteId = \"5.5.5.5\",\n IkeLifetime = 86400,\n IkePfs = \"group5\",\n IkeMode = \"main\",\n IkeVersion = \"ikev2\",\n Psk = \"32333442\",\n IkeAuthAlg = \"md5\",\n IkeEncAlg = \"aes\",\n },\n TunnelIpsecConfig = new AliCloud.Vpn.Inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs\n {\n IpsecEncAlg = \"aes\",\n IpsecLifetime = 86400,\n IpsecPfs = \"group5\",\n IpsecAuthAlg = \"sha256\",\n },\n CustomerGatewayId = defaultMeoCIz.Id,\n EnableDpd = true,\n },\n },\n RemoteSubnet = \"0.0.0.0/0\",\n });\n\n var defaultTransitRouterVpnAttachment = new AliCloud.Cen.TransitRouterVpnAttachment(\"default\", new()\n {\n TransitRouterId = defaultM8Zo6H.TransitRouterId,\n VpnId = defaultvrPzdh.Id,\n AutoPublishRouteEnabled = false,\n ChargeType = \"POSTPAY\",\n TransitRouterAttachmentName = \"example-vpn-attachment\",\n VpnOwnerId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n CenId = defaultM8Zo6H.CenId,\n TransitRouterAttachmentDescription = \"example-vpn-attachment\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultbpR5Uk, err := cen.NewInstance(ctx, \"defaultbpR5Uk\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(\"example-vpn-attachment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultM8Zo6H, err := cen.NewTransitRouter(ctx, \"defaultM8Zo6H\", \u0026cen.TransitRouterArgs{\n\t\t\tCenId: defaultbpR5Uk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultuUtyCv, err := cen.NewTransitRouterCidr(ctx, \"defaultuUtyCv\", \u0026cen.TransitRouterCidrArgs{\n\t\t\tCidr: pulumi.String(\"192.168.10.0/24\"),\n\t\t\tTransitRouterId: defaultM8Zo6H.TransitRouterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMeoCIz, err := vpn.NewCustomerGateway(ctx, \"defaultMeoCIz\", \u0026vpn.CustomerGatewayArgs{\n\t\t\tIpAddress: pulumi.String(\"0.0.0.0\"),\n\t\t\tCustomerGatewayName: pulumi.String(\"example-vpn-attachment\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tdefaultuUtyCv,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.GetTransitRouterService(ctx, \u0026cen.GetTransitRouterServiceArgs{\n\t\t\tEnable: pulumi.StringRef(\"On\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultvrPzdh, err := vpn.NewGatewayVpnAttachment(ctx, \"defaultvrPzdh\", \u0026vpn.GatewayVpnAttachmentArgs{\n\t\t\tNetworkType: pulumi.String(\"public\"),\n\t\t\tLocalSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tEnableTunnelsBgp: pulumi.Bool(false),\n\t\t\tVpnAttachmentName: pulumi.String(name),\n\t\t\tTunnelOptionsSpecifications: vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArray{\n\t\t\t\t\u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArgs{\n\t\t\t\t\tCustomerGatewayId: defaultMeoCIz.ID(),\n\t\t\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\t\t\tTunnelIndex: pulumi.Int(1),\n\t\t\t\t\tTunnelIkeConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs{\n\t\t\t\t\t\tRemoteId: pulumi.String(\"2.2.2.2\"),\n\t\t\t\t\t\tIkeEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\t\t\tIkeVersion: pulumi.String(\"ikev1\"),\n\t\t\t\t\t\tLocalId: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIkeLifetime: pulumi.Int(86100),\n\t\t\t\t\t\tIkePfs: pulumi.String(\"group2\"),\n\t\t\t\t\t\tPsk: pulumi.String(\"12345678\"),\n\t\t\t\t\t},\n\t\t\t\t\tTunnelIpsecConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs{\n\t\t\t\t\t\tIpsecAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIpsecEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIpsecLifetime: pulumi.Int(86200),\n\t\t\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationArgs{\n\t\t\t\t\tEnableNatTraversal: pulumi.Bool(true),\n\t\t\t\t\tTunnelIndex: pulumi.Int(2),\n\t\t\t\t\tTunnelIkeConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs{\n\t\t\t\t\t\tLocalId: pulumi.String(\"4.4.4.4\"),\n\t\t\t\t\t\tRemoteId: pulumi.String(\"5.5.5.5\"),\n\t\t\t\t\t\tIkeLifetime: pulumi.Int(86400),\n\t\t\t\t\t\tIkePfs: pulumi.String(\"group5\"),\n\t\t\t\t\t\tIkeMode: pulumi.String(\"main\"),\n\t\t\t\t\t\tIkeVersion: pulumi.String(\"ikev2\"),\n\t\t\t\t\t\tPsk: pulumi.String(\"32333442\"),\n\t\t\t\t\t\tIkeAuthAlg: pulumi.String(\"md5\"),\n\t\t\t\t\t\tIkeEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t},\n\t\t\t\t\tTunnelIpsecConfig: \u0026vpn.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs{\n\t\t\t\t\t\tIpsecEncAlg: pulumi.String(\"aes\"),\n\t\t\t\t\t\tIpsecLifetime: pulumi.Int(86400),\n\t\t\t\t\t\tIpsecPfs: pulumi.String(\"group5\"),\n\t\t\t\t\t\tIpsecAuthAlg: pulumi.String(\"sha256\"),\n\t\t\t\t\t},\n\t\t\t\t\tCustomerGatewayId: defaultMeoCIz.ID(),\n\t\t\t\t\tEnableDpd: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRemoteSubnet: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewTransitRouterVpnAttachment(ctx, \"default\", \u0026cen.TransitRouterVpnAttachmentArgs{\n\t\t\tTransitRouterId: defaultM8Zo6H.TransitRouterId,\n\t\t\tVpnId: defaultvrPzdh.ID(),\n\t\t\tAutoPublishRouteEnabled: pulumi.Bool(false),\n\t\t\tChargeType: pulumi.String(\"POSTPAY\"),\n\t\t\tTransitRouterAttachmentName: pulumi.String(\"example-vpn-attachment\"),\n\t\t\tVpnOwnerId: pulumi.String(_default.Id),\n\t\t\tCenId: defaultM8Zo6H.CenId,\n\t\t\tTransitRouterAttachmentDescription: pulumi.String(\"example-vpn-attachment\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.cen.TransitRouterCidr;\nimport com.pulumi.alicloud.cen.TransitRouterCidrArgs;\nimport com.pulumi.alicloud.vpn.CustomerGateway;\nimport com.pulumi.alicloud.vpn.CustomerGatewayArgs;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterServiceArgs;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachment;\nimport com.pulumi.alicloud.vpn.GatewayVpnAttachmentArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs;\nimport com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpnAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultbpR5Uk = new Instance(\"defaultbpR5Uk\", InstanceArgs.builder()\n .cenInstanceName(\"example-vpn-attachment\")\n .build());\n\n var defaultM8Zo6H = new TransitRouter(\"defaultM8Zo6H\", TransitRouterArgs.builder()\n .cenId(defaultbpR5Uk.id())\n .build());\n\n var defaultuUtyCv = new TransitRouterCidr(\"defaultuUtyCv\", TransitRouterCidrArgs.builder()\n .cidr(\"192.168.10.0/24\")\n .transitRouterId(defaultM8Zo6H.transitRouterId())\n .build());\n\n var defaultMeoCIz = new CustomerGateway(\"defaultMeoCIz\", CustomerGatewayArgs.builder()\n .ipAddress(\"0.0.0.0\")\n .customerGatewayName(\"example-vpn-attachment\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(defaultuUtyCv)\n .build());\n\n final var defaultGetTransitRouterService = CenFunctions.getTransitRouterService(GetTransitRouterServiceArgs.builder()\n .enable(\"On\")\n .build());\n\n var defaultvrPzdh = new GatewayVpnAttachment(\"defaultvrPzdh\", GatewayVpnAttachmentArgs.builder()\n .networkType(\"public\")\n .localSubnet(\"0.0.0.0/0\")\n .enableTunnelsBgp(false)\n .vpnAttachmentName(name)\n .tunnelOptionsSpecifications( \n GatewayVpnAttachmentTunnelOptionsSpecificationArgs.builder()\n .customerGatewayId(defaultMeoCIz.id())\n .enableDpd(true)\n .enableNatTraversal(true)\n .tunnelIndex(1)\n .tunnelIkeConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs.builder()\n .remoteId(\"2.2.2.2\")\n .ikeEncAlg(\"aes\")\n .ikeMode(\"main\")\n .ikeVersion(\"ikev1\")\n .localId(\"1.1.1.1\")\n .ikeAuthAlg(\"md5\")\n .ikeLifetime(86100)\n .ikePfs(\"group2\")\n .psk(\"12345678\")\n .build())\n .tunnelIpsecConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs.builder()\n .ipsecAuthAlg(\"md5\")\n .ipsecEncAlg(\"aes\")\n .ipsecLifetime(86200)\n .ipsecPfs(\"group5\")\n .build())\n .build(),\n GatewayVpnAttachmentTunnelOptionsSpecificationArgs.builder()\n .enableNatTraversal(true)\n .tunnelIndex(2)\n .tunnelIkeConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs.builder()\n .localId(\"4.4.4.4\")\n .remoteId(\"5.5.5.5\")\n .ikeLifetime(86400)\n .ikePfs(\"group5\")\n .ikeMode(\"main\")\n .ikeVersion(\"ikev2\")\n .psk(\"32333442\")\n .ikeAuthAlg(\"md5\")\n .ikeEncAlg(\"aes\")\n .build())\n .tunnelIpsecConfig(GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs.builder()\n .ipsecEncAlg(\"aes\")\n .ipsecLifetime(86400)\n .ipsecPfs(\"group5\")\n .ipsecAuthAlg(\"sha256\")\n .build())\n .customerGatewayId(defaultMeoCIz.id())\n .enableDpd(true)\n .build())\n .remoteSubnet(\"0.0.0.0/0\")\n .build());\n\n var defaultTransitRouterVpnAttachment = new TransitRouterVpnAttachment(\"defaultTransitRouterVpnAttachment\", TransitRouterVpnAttachmentArgs.builder()\n .transitRouterId(defaultM8Zo6H.transitRouterId())\n .vpnId(defaultvrPzdh.id())\n .autoPublishRouteEnabled(false)\n .chargeType(\"POSTPAY\")\n .transitRouterAttachmentName(\"example-vpn-attachment\")\n .vpnOwnerId(default_.id())\n .cenId(defaultM8Zo6H.cenId())\n .transitRouterAttachmentDescription(\"example-vpn-attachment\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultbpR5Uk:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: example-vpn-attachment\n defaultM8Zo6H:\n type: alicloud:cen:TransitRouter\n properties:\n cenId: ${defaultbpR5Uk.id}\n defaultuUtyCv:\n type: alicloud:cen:TransitRouterCidr\n properties:\n cidr: 192.168.10.0/24\n transitRouterId: ${defaultM8Zo6H.transitRouterId}\n defaultMeoCIz:\n type: alicloud:vpn:CustomerGateway\n properties:\n ipAddress: 0.0.0.0\n customerGatewayName: example-vpn-attachment\n options:\n dependsOn:\n - ${defaultuUtyCv}\n defaultvrPzdh:\n type: alicloud:vpn:GatewayVpnAttachment\n properties:\n networkType: public\n localSubnet: 0.0.0.0/0\n enableTunnelsBgp: 'false'\n vpnAttachmentName: ${name}\n tunnelOptionsSpecifications:\n - customerGatewayId: ${defaultMeoCIz.id}\n enableDpd: 'true'\n enableNatTraversal: 'true'\n tunnelIndex: '1'\n tunnelIkeConfig:\n remoteId: 2.2.2.2\n ikeEncAlg: aes\n ikeMode: main\n ikeVersion: ikev1\n localId: 1.1.1.1\n ikeAuthAlg: md5\n ikeLifetime: '86100'\n ikePfs: group2\n psk: '12345678'\n tunnelIpsecConfig:\n ipsecAuthAlg: md5\n ipsecEncAlg: aes\n ipsecLifetime: '86200'\n ipsecPfs: group5\n - enableNatTraversal: 'true'\n tunnelIndex: '2'\n tunnelIkeConfig:\n localId: 4.4.4.4\n remoteId: 5.5.5.5\n ikeLifetime: '86400'\n ikePfs: group5\n ikeMode: main\n ikeVersion: ikev2\n psk: '32333442'\n ikeAuthAlg: md5\n ikeEncAlg: aes\n tunnelIpsecConfig:\n ipsecEncAlg: aes\n ipsecLifetime: '86400'\n ipsecPfs: group5\n ipsecAuthAlg: sha256\n customerGatewayId: ${defaultMeoCIz.id}\n enableDpd: 'true'\n remoteSubnet: 0.0.0.0/0\n defaultTransitRouterVpnAttachment:\n type: alicloud:cen:TransitRouterVpnAttachment\n name: default\n properties:\n transitRouterId: ${defaultM8Zo6H.transitRouterId}\n vpnId: ${defaultvrPzdh.id}\n autoPublishRouteEnabled: 'false'\n chargeType: POSTPAY\n transitRouterAttachmentName: example-vpn-attachment\n vpnOwnerId: ${default.id}\n cenId: ${defaultM8Zo6H.cenId}\n transitRouterAttachmentDescription: example-vpn-attachment\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetTransitRouterService:\n fn::invoke:\n function: alicloud:cen:getTransitRouterService\n arguments:\n enable: On\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Enterprise Network (CEN) Transit Router Vpn Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/transitRouterVpnAttachment:TransitRouterVpnAttachment example \u003cid\u003e\n```\n\n",
"properties": {
"autoPublishRouteEnabled": {
"type": "boolean",
@@ -117222,7 +119087,7 @@
}
},
"alicloud:cen/vbrHealthCheck:VbrHealthCheck": {
- "description": "This topic describes how to configure the health check feature for a Cloud Enterprise Network (CEN) instance. \nAfter you attach a Virtual Border Router (VBR) to the CEN instance and configure the health check feature, you can monitor the network conditions of the on-premises data center connected to the VBR.\n\nFor information about CEN VBR HealthCheck and how to use it, see [Manage CEN VBR HealthCheck](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-enablecenvbrhealthcheck).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetPhysicalConnections = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst vlanId = new random.index.Integer(\"vlan_id\", {\n max: 2999,\n min: 1,\n});\nconst example = new alicloud.expressconnect.VirtualBorderRouter(\"example\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: defaultGetPhysicalConnections.then(defaultGetPhysicalConnections =\u003e defaultGetPhysicalConnections.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: vlanId.id,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VBR\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleVbrHealthCheck = new alicloud.cen.VbrHealthCheck(\"example\", {\n cenId: exampleInstance.id,\n healthCheckSourceIp: \"192.168.1.2\",\n healthCheckTargetIp: \"10.0.0.2\",\n vbrInstanceId: example.id,\n vbrInstanceRegionId: exampleInstanceAttachment.childInstanceRegionId,\n healthCheckInterval: 2,\n healthyThreshold: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_physical_connections = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\nvlan_id = random.index.Integer(\"vlan_id\",\n max=2999,\n min=1)\nexample = alicloud.expressconnect.VirtualBorderRouter(\"example\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=default_get_physical_connections.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=vlan_id[\"id\"],\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VBR\",\n child_instance_region_id=default.regions[0].id)\nexample_vbr_health_check = alicloud.cen.VbrHealthCheck(\"example\",\n cen_id=example_instance.id,\n health_check_source_ip=\"192.168.1.2\",\n health_check_target_ip=\"10.0.0.2\",\n vbr_instance_id=example.id,\n vbr_instance_region_id=example_instance_attachment.child_instance_region_id,\n health_check_interval=2,\n healthy_threshold=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetPhysicalConnections = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var vlanId = new Random.Index.Integer(\"vlan_id\", new()\n {\n Max = 2999,\n Min = 1,\n });\n\n var example = new AliCloud.ExpressConnect.VirtualBorderRouter(\"example\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = defaultGetPhysicalConnections.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = vlanId.Id,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VBR\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleVbrHealthCheck = new AliCloud.Cen.VbrHealthCheck(\"example\", new()\n {\n CenId = exampleInstance.Id,\n HealthCheckSourceIp = \"192.168.1.2\",\n HealthCheckTargetIp = \"10.0.0.2\",\n VbrInstanceId = example.Id,\n VbrInstanceRegionId = exampleInstanceAttachment.ChildInstanceRegionId,\n HealthCheckInterval = 2,\n HealthyThreshold = 8,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetPhysicalConnections, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvlanId, err := random.NewInteger(ctx, \"vlan_id\", \u0026random.IntegerArgs{\n\t\t\tMax: 2999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := expressconnect.NewVirtualBorderRouter(ctx, \"example\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(defaultGetPhysicalConnections.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: vlanId.Id,\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VBR\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewVbrHealthCheck(ctx, \"example\", \u0026cen.VbrHealthCheckArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tHealthCheckSourceIp: pulumi.String(\"192.168.1.2\"),\n\t\t\tHealthCheckTargetIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tVbrInstanceId: example.ID(),\n\t\t\tVbrInstanceRegionId: exampleInstanceAttachment.ChildInstanceRegionId,\n\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\tHealthyThreshold: pulumi.Int(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.VbrHealthCheck;\nimport com.pulumi.alicloud.cen.VbrHealthCheckArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetPhysicalConnections = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var vlanId = new Integer(\"vlanId\", IntegerArgs.builder()\n .max(2999)\n .min(1)\n .build());\n\n var example = new VirtualBorderRouter(\"example\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(defaultGetPhysicalConnections.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(vlanId.id())\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VBR\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleVbrHealthCheck = new VbrHealthCheck(\"exampleVbrHealthCheck\", VbrHealthCheckArgs.builder()\n .cenId(exampleInstance.id())\n .healthCheckSourceIp(\"192.168.1.2\")\n .healthCheckTargetIp(\"10.0.0.2\")\n .vbrInstanceId(example.id())\n .vbrInstanceRegionId(exampleInstanceAttachment.childInstanceRegionId())\n .healthCheckInterval(2)\n .healthyThreshold(8)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vlanId:\n type: random:Integer\n name: vlan_id\n properties:\n max: 2999\n min: 1\n example:\n type: alicloud:expressconnect:VirtualBorderRouter\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${defaultGetPhysicalConnections.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: ${vlanId.id}\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VBR\n childInstanceRegionId: ${default.regions[0].id}\n exampleVbrHealthCheck:\n type: alicloud:cen:VbrHealthCheck\n name: example\n properties:\n cenId: ${exampleInstance.id}\n healthCheckSourceIp: 192.168.1.2\n healthCheckTargetIp: 10.0.0.2\n vbrInstanceId: ${example.id}\n vbrInstanceRegionId: ${exampleInstanceAttachment.childInstanceRegionId}\n healthCheckInterval: 2\n healthyThreshold: 8\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetPhysicalConnections:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCEN VBR HealthCheck can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/vbrHealthCheck:VbrHealthCheck example vbr-xxxxx:cn-hangzhou\n```\n\n",
+ "description": "This topic describes how to configure the health check feature for a Cloud Enterprise Network (CEN) instance. \nAfter you attach a Virtual Border Router (VBR) to the CEN instance and configure the health check feature, you can monitor the network conditions of the on-premises data center connected to the VBR.\n\nFor information about CEN VBR HealthCheck and how to use it, see [Manage CEN VBR HealthCheck](https://www.alibabacloud.com/help/en/cen/developer-reference/api-cbn-2017-09-12-enablecenvbrhealthcheck).\n\n\u003e **NOTE:** Available since v1.88.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetPhysicalConnections = alicloud.expressconnect.getPhysicalConnections({\n nameRegex: \"^preserved-NODELETING\",\n});\nconst vlanId = new random.index.Integer(\"vlan_id\", {\n max: 2999,\n min: 1,\n});\nconst example = new alicloud.expressconnect.VirtualBorderRouter(\"example\", {\n localGatewayIp: \"10.0.0.1\",\n peerGatewayIp: \"10.0.0.2\",\n peeringSubnetMask: \"255.255.255.252\",\n physicalConnectionId: defaultGetPhysicalConnections.then(defaultGetPhysicalConnections =\u003e defaultGetPhysicalConnections.connections?.[0]?.id),\n virtualBorderRouterName: name,\n vlanId: vlanId.id,\n minRxInterval: 1000,\n minTxInterval: 1000,\n detectMultiplier: 10,\n});\nconst exampleInstance = new alicloud.cen.Instance(\"example\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst exampleInstanceAttachment = new alicloud.cen.InstanceAttachment(\"example\", {\n instanceId: exampleInstance.id,\n childInstanceId: example.id,\n childInstanceType: \"VBR\",\n childInstanceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst exampleVbrHealthCheck = new alicloud.cen.VbrHealthCheck(\"example\", {\n cenId: exampleInstance.id,\n healthCheckSourceIp: \"192.168.1.2\",\n healthCheckTargetIp: \"10.0.0.2\",\n vbrInstanceId: example.id,\n vbrInstanceRegionId: exampleInstanceAttachment.childInstanceRegionId,\n healthCheckInterval: 2,\n healthyThreshold: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_physical_connections = alicloud.expressconnect.get_physical_connections(name_regex=\"^preserved-NODELETING\")\nvlan_id = random.index.Integer(\"vlan_id\",\n max=2999,\n min=1)\nexample = alicloud.expressconnect.VirtualBorderRouter(\"example\",\n local_gateway_ip=\"10.0.0.1\",\n peer_gateway_ip=\"10.0.0.2\",\n peering_subnet_mask=\"255.255.255.252\",\n physical_connection_id=default_get_physical_connections.connections[0].id,\n virtual_border_router_name=name,\n vlan_id=vlan_id[\"id\"],\n min_rx_interval=1000,\n min_tx_interval=1000,\n detect_multiplier=10)\nexample_instance = alicloud.cen.Instance(\"example\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\nexample_instance_attachment = alicloud.cen.InstanceAttachment(\"example\",\n instance_id=example_instance.id,\n child_instance_id=example.id,\n child_instance_type=\"VBR\",\n child_instance_region_id=default.regions[0].id)\nexample_vbr_health_check = alicloud.cen.VbrHealthCheck(\"example\",\n cen_id=example_instance.id,\n health_check_source_ip=\"192.168.1.2\",\n health_check_target_ip=\"10.0.0.2\",\n vbr_instance_id=example.id,\n vbr_instance_region_id=example_instance_attachment.child_instance_region_id,\n health_check_interval=2,\n healthy_threshold=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetPhysicalConnections = AliCloud.ExpressConnect.GetPhysicalConnections.Invoke(new()\n {\n NameRegex = \"^preserved-NODELETING\",\n });\n\n var vlanId = new Random.Index.Integer(\"vlan_id\", new()\n {\n Max = 2999,\n Min = 1,\n });\n\n var example = new AliCloud.ExpressConnect.VirtualBorderRouter(\"example\", new()\n {\n LocalGatewayIp = \"10.0.0.1\",\n PeerGatewayIp = \"10.0.0.2\",\n PeeringSubnetMask = \"255.255.255.252\",\n PhysicalConnectionId = defaultGetPhysicalConnections.Apply(getPhysicalConnectionsResult =\u003e getPhysicalConnectionsResult.Connections[0]?.Id),\n VirtualBorderRouterName = name,\n VlanId = vlanId.Id,\n MinRxInterval = 1000,\n MinTxInterval = 1000,\n DetectMultiplier = 10,\n });\n\n var exampleInstance = new AliCloud.Cen.Instance(\"example\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var exampleInstanceAttachment = new AliCloud.Cen.InstanceAttachment(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n ChildInstanceId = example.Id,\n ChildInstanceType = \"VBR\",\n ChildInstanceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var exampleVbrHealthCheck = new AliCloud.Cen.VbrHealthCheck(\"example\", new()\n {\n CenId = exampleInstance.Id,\n HealthCheckSourceIp = \"192.168.1.2\",\n HealthCheckTargetIp = \"10.0.0.2\",\n VbrInstanceId = example.Id,\n VbrInstanceRegionId = exampleInstanceAttachment.ChildInstanceRegionId,\n HealthCheckInterval = 2,\n HealthyThreshold = 8,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/expressconnect\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetPhysicalConnections, err := expressconnect.GetPhysicalConnections(ctx, \u0026expressconnect.GetPhysicalConnectionsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^preserved-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvlanId, err := random.NewInteger(ctx, \"vlan_id\", \u0026random.IntegerArgs{\n\t\t\tMax: 2999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := expressconnect.NewVirtualBorderRouter(ctx, \"example\", \u0026expressconnect.VirtualBorderRouterArgs{\n\t\t\tLocalGatewayIp: pulumi.String(\"10.0.0.1\"),\n\t\t\tPeerGatewayIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tPeeringSubnetMask: pulumi.String(\"255.255.255.252\"),\n\t\t\tPhysicalConnectionId: pulumi.String(defaultGetPhysicalConnections.Connections[0].Id),\n\t\t\tVirtualBorderRouterName: pulumi.String(name),\n\t\t\tVlanId: vlanId.Id,\n\t\t\tMinRxInterval: pulumi.Int(1000),\n\t\t\tMinTxInterval: pulumi.Int(1000),\n\t\t\tDetectMultiplier: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := cen.NewInstance(ctx, \"example\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstanceAttachment, err := cen.NewInstanceAttachment(ctx, \"example\", \u0026cen.InstanceAttachmentArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tChildInstanceId: example.ID(),\n\t\t\tChildInstanceType: pulumi.String(\"VBR\"),\n\t\t\tChildInstanceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cen.NewVbrHealthCheck(ctx, \"example\", \u0026cen.VbrHealthCheckArgs{\n\t\t\tCenId: exampleInstance.ID(),\n\t\t\tHealthCheckSourceIp: pulumi.String(\"192.168.1.2\"),\n\t\t\tHealthCheckTargetIp: pulumi.String(\"10.0.0.2\"),\n\t\t\tVbrInstanceId: example.ID(),\n\t\t\tVbrInstanceRegionId: exampleInstanceAttachment.ChildInstanceRegionId,\n\t\t\tHealthCheckInterval: pulumi.Int(2),\n\t\t\tHealthyThreshold: pulumi.Int(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.expressconnect.ExpressconnectFunctions;\nimport com.pulumi.alicloud.expressconnect.inputs.GetPhysicalConnectionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouter;\nimport com.pulumi.alicloud.expressconnect.VirtualBorderRouterArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.InstanceAttachment;\nimport com.pulumi.alicloud.cen.InstanceAttachmentArgs;\nimport com.pulumi.alicloud.cen.VbrHealthCheck;\nimport com.pulumi.alicloud.cen.VbrHealthCheckArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetPhysicalConnections = ExpressconnectFunctions.getPhysicalConnections(GetPhysicalConnectionsArgs.builder()\n .nameRegex(\"^preserved-NODELETING\")\n .build());\n\n var vlanId = new Integer(\"vlanId\", IntegerArgs.builder()\n .max(2999)\n .min(1)\n .build());\n\n var example = new VirtualBorderRouter(\"example\", VirtualBorderRouterArgs.builder()\n .localGatewayIp(\"10.0.0.1\")\n .peerGatewayIp(\"10.0.0.2\")\n .peeringSubnetMask(\"255.255.255.252\")\n .physicalConnectionId(defaultGetPhysicalConnections.connections()[0].id())\n .virtualBorderRouterName(name)\n .vlanId(vlanId.id())\n .minRxInterval(1000)\n .minTxInterval(1000)\n .detectMultiplier(10)\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var exampleInstanceAttachment = new InstanceAttachment(\"exampleInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(exampleInstance.id())\n .childInstanceId(example.id())\n .childInstanceType(\"VBR\")\n .childInstanceRegionId(default_.regions()[0].id())\n .build());\n\n var exampleVbrHealthCheck = new VbrHealthCheck(\"exampleVbrHealthCheck\", VbrHealthCheckArgs.builder()\n .cenId(exampleInstance.id())\n .healthCheckSourceIp(\"192.168.1.2\")\n .healthCheckTargetIp(\"10.0.0.2\")\n .vbrInstanceId(example.id())\n .vbrInstanceRegionId(exampleInstanceAttachment.childInstanceRegionId())\n .healthCheckInterval(2)\n .healthyThreshold(8)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vlanId:\n type: random:Integer\n name: vlan_id\n properties:\n max: 2999\n min: 1\n example:\n type: alicloud:expressconnect:VirtualBorderRouter\n properties:\n localGatewayIp: 10.0.0.1\n peerGatewayIp: 10.0.0.2\n peeringSubnetMask: 255.255.255.252\n physicalConnectionId: ${defaultGetPhysicalConnections.connections[0].id}\n virtualBorderRouterName: ${name}\n vlanId: ${vlanId.id}\n minRxInterval: 1000\n minTxInterval: 1000\n detectMultiplier: 10\n exampleInstance:\n type: alicloud:cen:Instance\n name: example\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n exampleInstanceAttachment:\n type: alicloud:cen:InstanceAttachment\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n childInstanceId: ${example.id}\n childInstanceType: VBR\n childInstanceRegionId: ${default.regions[0].id}\n exampleVbrHealthCheck:\n type: alicloud:cen:VbrHealthCheck\n name: example\n properties:\n cenId: ${exampleInstance.id}\n healthCheckSourceIp: 192.168.1.2\n healthCheckTargetIp: 10.0.0.2\n vbrInstanceId: ${example.id}\n vbrInstanceRegionId: ${exampleInstanceAttachment.childInstanceRegionId}\n healthCheckInterval: 2\n healthyThreshold: 8\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetPhysicalConnections:\n fn::invoke:\n function: alicloud:expressconnect:getPhysicalConnections\n arguments:\n nameRegex: ^preserved-NODELETING\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCEN VBR HealthCheck can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cen/vbrHealthCheck:VbrHealthCheck example vbr-xxxxx:cn-hangzhou\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -117350,7 +119215,7 @@
}
},
"alicloud:cfg/aggregateCompliancePack:AggregateCompliancePack": {
- "description": "Provides a Cloud Config Aggregate Compliance Pack resource.\n\nFor information about Cloud Config Aggregate Compliance Pack and how to use it, see [What is Aggregate Compliance Pack](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregatecompliancepack).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultAggregateConfigRule = new alicloud.cfg.AggregateConfigRule(\"default\", {\n aggregateConfigRuleName: \"contains-tag\",\n aggregatorId: defaultAggregator.id,\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n description: name,\n riskLevel: 1,\n resourceTypesScopes: [\"ACS::ECS::Instance\"],\n inputParameters: {\n key: \"example\",\n value: \"example\",\n },\n});\nconst defaultAggregateCompliancePack = new alicloud.cfg.AggregateCompliancePack(\"default\", {\n aggregateCompliancePackName: name,\n aggregatorId: defaultAggregator.id,\n description: name,\n riskLevel: 1,\n configRuleIds: [{\n configRuleId: defaultAggregateConfigRule.configRuleId,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_aggregate_config_rule = alicloud.cfg.AggregateConfigRule(\"default\",\n aggregate_config_rule_name=\"contains-tag\",\n aggregator_id=default_aggregator.id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n description=name,\n risk_level=1,\n resource_types_scopes=[\"ACS::ECS::Instance\"],\n input_parameters={\n \"key\": \"example\",\n \"value\": \"example\",\n })\ndefault_aggregate_compliance_pack = alicloud.cfg.AggregateCompliancePack(\"default\",\n aggregate_compliance_pack_name=name,\n aggregator_id=default_aggregator.id,\n description=name,\n risk_level=1,\n config_rule_ids=[{\n \"config_rule_id\": default_aggregate_config_rule.config_rule_id,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultAggregateConfigRule = new AliCloud.Cfg.AggregateConfigRule(\"default\", new()\n {\n AggregateConfigRuleName = \"contains-tag\",\n AggregatorId = defaultAggregator.Id,\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n Description = name,\n RiskLevel = 1,\n ResourceTypesScopes = new[]\n {\n \"ACS::ECS::Instance\",\n },\n InputParameters = \n {\n { \"key\", \"example\" },\n { \"value\", \"example\" },\n },\n });\n\n var defaultAggregateCompliancePack = new AliCloud.Cfg.AggregateCompliancePack(\"default\", new()\n {\n AggregateCompliancePackName = name,\n AggregatorId = defaultAggregator.Id,\n Description = name,\n RiskLevel = 1,\n ConfigRuleIds = new[]\n {\n new AliCloud.Cfg.Inputs.AggregateCompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = defaultAggregateConfigRule.ConfigRuleId,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAggregateConfigRule, err := cfg.NewAggregateConfigRule(ctx, \"default\", \u0026cfg.AggregateConfigRuleArgs{\n\t\t\tAggregateConfigRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t},\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"example\"),\n\t\t\t\t\"value\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateCompliancePack(ctx, \"default\", \u0026cfg.AggregateCompliancePackArgs{\n\t\t\tAggregateCompliancePackName: pulumi.String(name),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tConfigRuleIds: cfg.AggregateCompliancePackConfigRuleIdArray{\n\t\t\t\t\u0026cfg.AggregateCompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: defaultAggregateConfigRule.ConfigRuleId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.alicloud.cfg.AggregateConfigRule;\nimport com.pulumi.alicloud.cfg.AggregateConfigRuleArgs;\nimport com.pulumi.alicloud.cfg.AggregateCompliancePack;\nimport com.pulumi.alicloud.cfg.AggregateCompliancePackArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregateCompliancePackConfigRuleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultAggregateConfigRule = new AggregateConfigRule(\"defaultAggregateConfigRule\", AggregateConfigRuleArgs.builder()\n .aggregateConfigRuleName(\"contains-tag\")\n .aggregatorId(defaultAggregator.id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .description(name)\n .riskLevel(1)\n .resourceTypesScopes(\"ACS::ECS::Instance\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key\", \"example\"),\n Map.entry(\"value\", \"example\")\n ))\n .build());\n\n var defaultAggregateCompliancePack = new AggregateCompliancePack(\"defaultAggregateCompliancePack\", AggregateCompliancePackArgs.builder()\n .aggregateCompliancePackName(name)\n .aggregatorId(defaultAggregator.id())\n .description(name)\n .riskLevel(1)\n .configRuleIds(AggregateCompliancePackConfigRuleIdArgs.builder()\n .configRuleId(defaultAggregateConfigRule.configRuleId())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Config Aggregate Compliance Pack can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateCompliancePack:AggregateCompliancePack example \u003caggregator_id\u003e:\u003caggregator_compliance_pack_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Config Aggregate Compliance Pack resource.\n\nFor information about Cloud Config Aggregate Compliance Pack and how to use it, see [What is Aggregate Compliance Pack](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregatecompliancepack).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultAggregateConfigRule = new alicloud.cfg.AggregateConfigRule(\"default\", {\n aggregateConfigRuleName: \"contains-tag\",\n aggregatorId: defaultAggregator.id,\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n description: name,\n riskLevel: 1,\n resourceTypesScopes: [\"ACS::ECS::Instance\"],\n inputParameters: {\n key: \"example\",\n value: \"example\",\n },\n});\nconst defaultAggregateCompliancePack = new alicloud.cfg.AggregateCompliancePack(\"default\", {\n aggregateCompliancePackName: name,\n aggregatorId: defaultAggregator.id,\n description: name,\n riskLevel: 1,\n configRuleIds: [{\n configRuleId: defaultAggregateConfigRule.configRuleId,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_aggregate_config_rule = alicloud.cfg.AggregateConfigRule(\"default\",\n aggregate_config_rule_name=\"contains-tag\",\n aggregator_id=default_aggregator.id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n description=name,\n risk_level=1,\n resource_types_scopes=[\"ACS::ECS::Instance\"],\n input_parameters={\n \"key\": \"example\",\n \"value\": \"example\",\n })\ndefault_aggregate_compliance_pack = alicloud.cfg.AggregateCompliancePack(\"default\",\n aggregate_compliance_pack_name=name,\n aggregator_id=default_aggregator.id,\n description=name,\n risk_level=1,\n config_rule_ids=[{\n \"config_rule_id\": default_aggregate_config_rule.config_rule_id,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultAggregateConfigRule = new AliCloud.Cfg.AggregateConfigRule(\"default\", new()\n {\n AggregateConfigRuleName = \"contains-tag\",\n AggregatorId = defaultAggregator.Id,\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n Description = name,\n RiskLevel = 1,\n ResourceTypesScopes = new[]\n {\n \"ACS::ECS::Instance\",\n },\n InputParameters = \n {\n { \"key\", \"example\" },\n { \"value\", \"example\" },\n },\n });\n\n var defaultAggregateCompliancePack = new AliCloud.Cfg.AggregateCompliancePack(\"default\", new()\n {\n AggregateCompliancePackName = name,\n AggregatorId = defaultAggregator.Id,\n Description = name,\n RiskLevel = 1,\n ConfigRuleIds = new[]\n {\n new AliCloud.Cfg.Inputs.AggregateCompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = defaultAggregateConfigRule.ConfigRuleId,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAggregateConfigRule, err := cfg.NewAggregateConfigRule(ctx, \"default\", \u0026cfg.AggregateConfigRuleArgs{\n\t\t\tAggregateConfigRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t},\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"example\"),\n\t\t\t\t\"value\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateCompliancePack(ctx, \"default\", \u0026cfg.AggregateCompliancePackArgs{\n\t\t\tAggregateCompliancePackName: pulumi.String(name),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tConfigRuleIds: cfg.AggregateCompliancePackConfigRuleIdArray{\n\t\t\t\t\u0026cfg.AggregateCompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: defaultAggregateConfigRule.ConfigRuleId,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.alicloud.cfg.AggregateConfigRule;\nimport com.pulumi.alicloud.cfg.AggregateConfigRuleArgs;\nimport com.pulumi.alicloud.cfg.AggregateCompliancePack;\nimport com.pulumi.alicloud.cfg.AggregateCompliancePackArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregateCompliancePackConfigRuleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultAggregateConfigRule = new AggregateConfigRule(\"defaultAggregateConfigRule\", AggregateConfigRuleArgs.builder()\n .aggregateConfigRuleName(\"contains-tag\")\n .aggregatorId(defaultAggregator.id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .description(name)\n .riskLevel(1)\n .resourceTypesScopes(\"ACS::ECS::Instance\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key\", \"example\"),\n Map.entry(\"value\", \"example\")\n ))\n .build());\n\n var defaultAggregateCompliancePack = new AggregateCompliancePack(\"defaultAggregateCompliancePack\", AggregateCompliancePackArgs.builder()\n .aggregateCompliancePackName(name)\n .aggregatorId(defaultAggregator.id())\n .description(name)\n .riskLevel(1)\n .configRuleIds(AggregateCompliancePackConfigRuleIdArgs.builder()\n .configRuleId(defaultAggregateConfigRule.configRuleId())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config Aggregate Compliance Pack can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateCompliancePack:AggregateCompliancePack example \u003caggregator_id\u003e:\u003caggregator_compliance_pack_id\u003e\n```\n\n",
"properties": {
"aggregateCompliancePackName": {
"type": "string",
@@ -117502,7 +119367,7 @@
}
},
"alicloud:cfg/aggregateConfigRule:AggregateConfigRule": {
- "description": "Provides a Cloud Config Aggregate Config Rule resource.\n\nFor information about Cloud Config Aggregate Config Rule and how to use it, see [What is Aggregate Config Rule](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregateconfigrule).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultAggregateConfigRule = new alicloud.cfg.AggregateConfigRule(\"default\", {\n aggregateConfigRuleName: \"contains-tag\",\n aggregatorId: defaultAggregator.id,\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n riskLevel: 1,\n resourceTypesScopes: [\"ACS::ECS::Instance\"],\n inputParameters: {\n key: \"example\",\n value: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_aggregate_config_rule = alicloud.cfg.AggregateConfigRule(\"default\",\n aggregate_config_rule_name=\"contains-tag\",\n aggregator_id=default_aggregator.id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n risk_level=1,\n resource_types_scopes=[\"ACS::ECS::Instance\"],\n input_parameters={\n \"key\": \"example\",\n \"value\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultAggregateConfigRule = new AliCloud.Cfg.AggregateConfigRule(\"default\", new()\n {\n AggregateConfigRuleName = \"contains-tag\",\n AggregatorId = defaultAggregator.Id,\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n RiskLevel = 1,\n ResourceTypesScopes = new[]\n {\n \"ACS::ECS::Instance\",\n },\n InputParameters = \n {\n { \"key\", \"example\" },\n { \"value\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateConfigRule(ctx, \"default\", \u0026cfg.AggregateConfigRuleArgs{\n\t\t\tAggregateConfigRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t},\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"example\"),\n\t\t\t\t\"value\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.alicloud.cfg.AggregateConfigRule;\nimport com.pulumi.alicloud.cfg.AggregateConfigRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultAggregateConfigRule = new AggregateConfigRule(\"defaultAggregateConfigRule\", AggregateConfigRuleArgs.builder()\n .aggregateConfigRuleName(\"contains-tag\")\n .aggregatorId(defaultAggregator.id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .riskLevel(1)\n .resourceTypesScopes(\"ACS::ECS::Instance\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key\", \"example\"),\n Map.entry(\"value\", \"example\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Config Aggregate Config Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateConfigRule:AggregateConfigRule example \"\u003caggregator_id\u003e:\u003cconfig_rule_id\u003e\"\n```\n\n",
+ "description": "Provides a Cloud Config Aggregate Config Rule resource.\n\nFor information about Cloud Config Aggregate Config Rule and how to use it, see [What is Aggregate Config Rule](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregateconfigrule).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultAggregateConfigRule = new alicloud.cfg.AggregateConfigRule(\"default\", {\n aggregateConfigRuleName: \"contains-tag\",\n aggregatorId: defaultAggregator.id,\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n riskLevel: 1,\n resourceTypesScopes: [\"ACS::ECS::Instance\"],\n inputParameters: {\n key: \"example\",\n value: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_aggregate_config_rule = alicloud.cfg.AggregateConfigRule(\"default\",\n aggregate_config_rule_name=\"contains-tag\",\n aggregator_id=default_aggregator.id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n risk_level=1,\n resource_types_scopes=[\"ACS::ECS::Instance\"],\n input_parameters={\n \"key\": \"example\",\n \"value\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultAggregateConfigRule = new AliCloud.Cfg.AggregateConfigRule(\"default\", new()\n {\n AggregateConfigRuleName = \"contains-tag\",\n AggregatorId = defaultAggregator.Id,\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n RiskLevel = 1,\n ResourceTypesScopes = new[]\n {\n \"ACS::ECS::Instance\",\n },\n InputParameters = \n {\n { \"key\", \"example\" },\n { \"value\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateConfigRule(ctx, \"default\", \u0026cfg.AggregateConfigRuleArgs{\n\t\t\tAggregateConfigRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t},\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"example\"),\n\t\t\t\t\"value\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.alicloud.cfg.AggregateConfigRule;\nimport com.pulumi.alicloud.cfg.AggregateConfigRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultAggregateConfigRule = new AggregateConfigRule(\"defaultAggregateConfigRule\", AggregateConfigRuleArgs.builder()\n .aggregateConfigRuleName(\"contains-tag\")\n .aggregatorId(defaultAggregator.id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .riskLevel(1)\n .resourceTypesScopes(\"ACS::ECS::Instance\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key\", \"example\"),\n Map.entry(\"value\", \"example\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config Aggregate Config Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateConfigRule:AggregateConfigRule example \"\u003caggregator_id\u003e:\u003cconfig_rule_id\u003e\"\n```\n\n",
"properties": {
"aggregateConfigRuleName": {
"type": "string",
@@ -117762,7 +119627,7 @@
}
},
"alicloud:cfg/aggregateDelivery:AggregateDelivery": {
- "description": "Provides a Config Aggregate Delivery resource.\n\nDelivery channel of aggregator.\n\nFor information about Config Aggregate Delivery and how to use it, see [What is Aggregate Delivery](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregateconfigdeliverychannel).\n\n\u003e **NOTE:** Available since v1.172.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _this = alicloud.getRegions({\n current: true,\n});\nconst thisGetAccount = alicloud.getAccount({});\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n logstoreName: name,\n projectName: defaultProject.projectName,\n});\nconst defaultAggregateDelivery = new alicloud.cfg.AggregateDelivery(\"default\", {\n aggregatorId: defaultAggregator.id,\n configurationItemChangeNotification: true,\n nonCompliantNotification: true,\n deliveryChannelName: name,\n deliveryChannelTargetArn: pulumi.all([_this, thisGetAccount, defaultProject.projectName, defaultStore.logstoreName]).apply(([_this, thisGetAccount, projectName, logstoreName]) =\u003e `acs:log:${_this.ids?.[0]}:${thisGetAccount.id}:project/${projectName}/logstore/${logstoreName}`),\n deliveryChannelType: \"SLS\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nthis = alicloud.get_regions(current=True)\nthis_get_account = alicloud.get_account()\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n logstore_name=name,\n project_name=default_project.project_name)\ndefault_aggregate_delivery = alicloud.cfg.AggregateDelivery(\"default\",\n aggregator_id=default_aggregator.id,\n configuration_item_change_notification=True,\n non_compliant_notification=True,\n delivery_channel_name=name,\n delivery_channel_target_arn=pulumi.Output.all(\n project_name=default_project.project_name,\n logstore_name=default_store.logstore_name\n).apply(lambda resolved_outputs: f\"acs:log:{this.ids[0]}:{this_get_account.id}:project/{resolved_outputs['project_name']}/logstore/{resolved_outputs['logstore_name']}\")\n,\n delivery_channel_type=\"SLS\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @this = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var thisGetAccount = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n LogstoreName = name,\n ProjectName = defaultProject.ProjectName,\n });\n\n var defaultAggregateDelivery = new AliCloud.Cfg.AggregateDelivery(\"default\", new()\n {\n AggregatorId = defaultAggregator.Id,\n ConfigurationItemChangeNotification = true,\n NonCompliantNotification = true,\n DeliveryChannelName = name,\n DeliveryChannelTargetArn = Output.Tuple(@this, thisGetAccount, defaultProject.ProjectName, defaultStore.LogstoreName).Apply(values =\u003e\n {\n var @this = values.Item1;\n var thisGetAccount = values.Item2;\n var projectName = values.Item3;\n var logstoreName = values.Item4;\n return $\"acs:log:{@this.Apply(getRegionsResult =\u003e getRegionsResult.Ids[0])}:{thisGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}/logstore/{logstoreName}\";\n }),\n DeliveryChannelType = \"SLS\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tthis, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tthisGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateDelivery(ctx, \"default\", \u0026cfg.AggregateDeliveryArgs{\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigurationItemChangeNotification: pulumi.Bool(true),\n\t\t\tNonCompliantNotification: pulumi.Bool(true),\n\t\t\tDeliveryChannelName: pulumi.String(name),\n\t\t\tDeliveryChannelTargetArn: pulumi.All(defaultProject.ProjectName, defaultStore.LogstoreName).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\tprojectName := _args[0].(string)\n\t\t\t\tlogstoreName := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v/logstore/%v\", this.Ids[0], thisGetAccount.Id, projectName, logstoreName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDeliveryChannelType: pulumi.String(\"SLS\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cfg.AggregateDelivery;\nimport com.pulumi.alicloud.cfg.AggregateDeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var this = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var thisGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .logstoreName(name)\n .projectName(defaultProject.projectName())\n .build());\n\n var defaultAggregateDelivery = new AggregateDelivery(\"defaultAggregateDelivery\", AggregateDeliveryArgs.builder()\n .aggregatorId(defaultAggregator.id())\n .configurationItemChangeNotification(true)\n .nonCompliantNotification(true)\n .deliveryChannelName(name)\n .deliveryChannelTargetArn(Output.tuple(defaultProject.projectName(), defaultStore.logstoreName()).applyValue(values -\u003e {\n var projectName = values.t1;\n var logstoreName = values.t2;\n return String.format(\"acs:log:%s:%s:project/%s/logstore/%s\", this_.ids()[0],thisGetAccount.id(),projectName,logstoreName);\n }))\n .deliveryChannelType(\"SLS\")\n .description(name)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConfig Aggregate Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateDelivery:AggregateDelivery example \u003caggregator_id\u003e:\u003cdelivery_channel_id\u003e\n```\n\n",
+ "description": "Provides a Config Aggregate Delivery resource.\n\nDelivery channel of aggregator.\n\nFor information about Config Aggregate Delivery and how to use it, see [What is Aggregate Delivery](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregateconfigdeliverychannel).\n\n\u003e **NOTE:** Available since v1.172.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _this = alicloud.getRegions({\n current: true,\n});\nconst thisGetAccount = alicloud.getAccount({});\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n logstoreName: name,\n projectName: defaultProject.projectName,\n});\nconst defaultAggregateDelivery = new alicloud.cfg.AggregateDelivery(\"default\", {\n aggregatorId: defaultAggregator.id,\n configurationItemChangeNotification: true,\n nonCompliantNotification: true,\n deliveryChannelName: name,\n deliveryChannelTargetArn: pulumi.all([_this, thisGetAccount, defaultProject.projectName, defaultStore.logstoreName]).apply(([_this, thisGetAccount, projectName, logstoreName]) =\u003e `acs:log:${_this.ids?.[0]}:${thisGetAccount.id}:project/${projectName}/logstore/${logstoreName}`),\n deliveryChannelType: \"SLS\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nthis = alicloud.get_regions(current=True)\nthis_get_account = alicloud.get_account()\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n logstore_name=name,\n project_name=default_project.project_name)\ndefault_aggregate_delivery = alicloud.cfg.AggregateDelivery(\"default\",\n aggregator_id=default_aggregator.id,\n configuration_item_change_notification=True,\n non_compliant_notification=True,\n delivery_channel_name=name,\n delivery_channel_target_arn=pulumi.Output.all(\n project_name=default_project.project_name,\n logstore_name=default_store.logstore_name\n).apply(lambda resolved_outputs: f\"acs:log:{this.ids[0]}:{this_get_account.id}:project/{resolved_outputs['project_name']}/logstore/{resolved_outputs['logstore_name']}\")\n,\n delivery_channel_type=\"SLS\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @this = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var thisGetAccount = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n LogstoreName = name,\n ProjectName = defaultProject.ProjectName,\n });\n\n var defaultAggregateDelivery = new AliCloud.Cfg.AggregateDelivery(\"default\", new()\n {\n AggregatorId = defaultAggregator.Id,\n ConfigurationItemChangeNotification = true,\n NonCompliantNotification = true,\n DeliveryChannelName = name,\n DeliveryChannelTargetArn = Output.Tuple(@this, thisGetAccount, defaultProject.ProjectName, defaultStore.LogstoreName).Apply(values =\u003e\n {\n var @this = values.Item1;\n var thisGetAccount = values.Item2;\n var projectName = values.Item3;\n var logstoreName = values.Item4;\n return $\"acs:log:{@this.Apply(getRegionsResult =\u003e getRegionsResult.Ids[0])}:{thisGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}/logstore/{logstoreName}\";\n }),\n DeliveryChannelType = \"SLS\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tthis, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tthisGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\tdefaultAggregator, err := cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewAggregateDelivery(ctx, \"default\", \u0026cfg.AggregateDeliveryArgs{\n\t\t\tAggregatorId: defaultAggregator.ID(),\n\t\t\tConfigurationItemChangeNotification: pulumi.Bool(true),\n\t\t\tNonCompliantNotification: pulumi.Bool(true),\n\t\t\tDeliveryChannelName: pulumi.String(name),\n\t\t\tDeliveryChannelTargetArn: pulumi.All(defaultProject.ProjectName, defaultStore.LogstoreName).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\tprojectName := _args[0].(string)\n\t\t\t\tlogstoreName := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v/logstore/%v\", this.Ids[0], thisGetAccount.Id, projectName, logstoreName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDeliveryChannelType: pulumi.String(\"SLS\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cfg.AggregateDelivery;\nimport com.pulumi.alicloud.cfg.AggregateDeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var this = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var thisGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .logstoreName(name)\n .projectName(defaultProject.projectName())\n .build());\n\n var defaultAggregateDelivery = new AggregateDelivery(\"defaultAggregateDelivery\", AggregateDeliveryArgs.builder()\n .aggregatorId(defaultAggregator.id())\n .configurationItemChangeNotification(true)\n .nonCompliantNotification(true)\n .deliveryChannelName(name)\n .deliveryChannelTargetArn(Output.tuple(defaultProject.projectName(), defaultStore.logstoreName()).applyValue(values -\u003e {\n var projectName = values.t1;\n var logstoreName = values.t2;\n return String.format(\"acs:log:%s:%s:project/%s/logstore/%s\", this_.ids()[0],thisGetAccount.id(),projectName,logstoreName);\n }))\n .deliveryChannelType(\"SLS\")\n .description(name)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nConfig Aggregate Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregateDelivery:AggregateDelivery example \u003caggregator_id\u003e:\u003cdelivery_channel_id\u003e\n```\n\n",
"properties": {
"aggregatorId": {
"type": "string",
@@ -117931,7 +119796,7 @@
}
},
"alicloud:cfg/aggregator:Aggregator": {
- "description": "Provides a Cloud Config (Config) Aggregator resource.\n\n\n\nFor information about Cloud Config (Config) Aggregator and how to use it, see [What is Aggregator](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregator).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\t_, err = cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Config (Config) Aggregator can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregator:Aggregator example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Config (Config) Aggregator resource.\n\n\n\nFor information about Cloud Config (Config) Aggregator and how to use it, see [What is Aggregator](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createaggregator).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst last = _default.then(_default =\u003e _default.accounts).length.apply(length =\u003e length - 1);\nconst defaultAggregator = new alicloud.cfg.Aggregator(\"default\", {\n aggregatorAccounts: [{\n accountId: _default.then(_default =\u003e _default.accounts[last].accountId),\n accountName: _default.then(_default =\u003e _default.accounts[last].displayName),\n accountType: \"ResourceDirectory\",\n }],\n aggregatorName: name,\n description: name,\n aggregatorType: \"CUSTOM\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\nlast = len(default.accounts).apply(lambda length: length - 1)\ndefault_aggregator = alicloud.cfg.Aggregator(\"default\",\n aggregator_accounts=[{\n \"account_id\": default.accounts[last].account_id,\n \"account_name\": default.accounts[last].display_name,\n \"account_type\": \"ResourceDirectory\",\n }],\n aggregator_name=name,\n description=name,\n aggregator_type=\"CUSTOM\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var last = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)).Length.Apply(length =\u003e length - 1);\n\n var defaultAggregator = new AliCloud.Cfg.Aggregator(\"default\", new()\n {\n AggregatorAccounts = new[]\n {\n new AliCloud.Cfg.Inputs.AggregatorAggregatorAccountArgs\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].AccountId),\n AccountName = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts)[last].DisplayName),\n AccountType = \"ResourceDirectory\",\n },\n },\n AggregatorName = name,\n Description = name,\n AggregatorType = \"CUSTOM\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlast := len(_default.Accounts).ApplyT(func(length int) (float64, error) {\n\t\t\treturn float64(length.ApplyT(func(__convert float64) (float64, error) {\n\t\t\t\treturn __convert - 1, nil\n\t\t\t}).(pulumi.Float64Output)), nil\n\t\t}).(pulumi.Float64Output)\n\t\t_, err = cfg.NewAggregator(ctx, \"default\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorAccounts: cfg.AggregatorAggregatorAccountArray{\n\t\t\t\t\u0026cfg.AggregatorAggregatorAccountArgs{\n\t\t\t\t\tAccountId: pulumi.String(_default.Accounts[last].AccountId),\n\t\t\t\t\tAccountName: pulumi.String(_default.Accounts[last].DisplayName),\n\t\t\t\t\tAccountType: pulumi.String(\"ResourceDirectory\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAggregatorName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAggregatorType: pulumi.String(\"CUSTOM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.inputs.AggregatorAggregatorAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n final var last = default_.accounts().length().applyValue(_length -\u003e _length - 1);\n\n var defaultAggregator = new Aggregator(\"defaultAggregator\", AggregatorArgs.builder()\n .aggregatorAccounts(AggregatorAggregatorAccountArgs.builder()\n .accountId(default_.accounts()[last].accountId())\n .accountName(default_.accounts()[last].displayName())\n .accountType(\"ResourceDirectory\")\n .build())\n .aggregatorName(name)\n .description(name)\n .aggregatorType(\"CUSTOM\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config (Config) Aggregator can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/aggregator:Aggregator example \u003cid\u003e\n```\n\n",
"properties": {
"aggregatorAccounts": {
"type": "array",
@@ -118043,7 +119908,7 @@
}
},
"alicloud:cfg/compliancePack:CompliancePack": {
- "description": "Provides a Cloud Config Compliance Pack resource.\n\nFor information about Cloud Config Compliance Pack and how to use it, see [What is Compliance Pack](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createcompliancepack).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-config-name\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst rule1 = new alicloud.cfg.Rule(\"rule1\", {\n description: name,\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"ram-user-ak-create-date-expired-check\",\n riskLevel: 1,\n maximumExecutionFrequency: \"TwentyFour_Hours\",\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ScheduledNotification\",\n resourceTypesScopes: [\"ACS::RAM::User\"],\n ruleName: \"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n inputParameters: {\n days: \"90\",\n },\n});\nconst rule2 = new alicloud.cfg.Rule(\"rule2\", {\n description: name,\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"adb-cluster-maintain-time-check\",\n riskLevel: 2,\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ScheduledNotification\",\n resourceTypesScopes: [\"ACS::ADB::DBCluster\"],\n ruleName: \"governance-evaluation-adb-cluster-maintain-time-check\",\n inputParameters: {\n maintainTimes: \"02:00-04:00,06:00-08:00,12:00-13:00\",\n },\n});\nconst defaultCompliancePack = new alicloud.cfg.CompliancePack(\"default\", {\n compliancePackName: name,\n description: \"CloudGovernanceCenter evaluation\",\n riskLevel: 2,\n configRuleIds: [\n {\n configRuleId: rule1.id,\n },\n {\n configRuleId: rule2.id,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-config-name\"\ndefault = alicloud.get_regions(current=True)\nrule1 = alicloud.cfg.Rule(\"rule1\",\n description=name,\n source_owner=\"ALIYUN\",\n source_identifier=\"ram-user-ak-create-date-expired-check\",\n risk_level=1,\n maximum_execution_frequency=\"TwentyFour_Hours\",\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ScheduledNotification\",\n resource_types_scopes=[\"ACS::RAM::User\"],\n rule_name=\"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n input_parameters={\n \"days\": \"90\",\n })\nrule2 = alicloud.cfg.Rule(\"rule2\",\n description=name,\n source_owner=\"ALIYUN\",\n source_identifier=\"adb-cluster-maintain-time-check\",\n risk_level=2,\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ScheduledNotification\",\n resource_types_scopes=[\"ACS::ADB::DBCluster\"],\n rule_name=\"governance-evaluation-adb-cluster-maintain-time-check\",\n input_parameters={\n \"maintainTimes\": \"02:00-04:00,06:00-08:00,12:00-13:00\",\n })\ndefault_compliance_pack = alicloud.cfg.CompliancePack(\"default\",\n compliance_pack_name=name,\n description=\"CloudGovernanceCenter evaluation\",\n risk_level=2,\n config_rule_ids=[\n {\n \"config_rule_id\": rule1.id,\n },\n {\n \"config_rule_id\": rule2.id,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-config-name\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var rule1 = new AliCloud.Cfg.Rule(\"rule1\", new()\n {\n Description = name,\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"ram-user-ak-create-date-expired-check\",\n RiskLevel = 1,\n MaximumExecutionFrequency = \"TwentyFour_Hours\",\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ScheduledNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::RAM::User\",\n },\n RuleName = \"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n InputParameters = \n {\n { \"days\", \"90\" },\n },\n });\n\n var rule2 = new AliCloud.Cfg.Rule(\"rule2\", new()\n {\n Description = name,\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"adb-cluster-maintain-time-check\",\n RiskLevel = 2,\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ScheduledNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::ADB::DBCluster\",\n },\n RuleName = \"governance-evaluation-adb-cluster-maintain-time-check\",\n InputParameters = \n {\n { \"maintainTimes\", \"02:00-04:00,06:00-08:00,12:00-13:00\" },\n },\n });\n\n var defaultCompliancePack = new AliCloud.Cfg.CompliancePack(\"default\", new()\n {\n CompliancePackName = name,\n Description = \"CloudGovernanceCenter evaluation\",\n RiskLevel = 2,\n ConfigRuleIds = new[]\n {\n new AliCloud.Cfg.Inputs.CompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = rule1.Id,\n },\n new AliCloud.Cfg.Inputs.CompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = rule2.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-config-name\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule1, err := cfg.NewRule(ctx, \"rule1\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"ram-user-ak-create-date-expired-check\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tMaximumExecutionFrequency: pulumi.String(\"TwentyFour_Hours\"),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ScheduledNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::RAM::User\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"ciscompliancecheck_ram-user-ak-create-date-expired-check\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"days\": pulumi.String(\"90\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule2, err := cfg.NewRule(ctx, \"rule2\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"adb-cluster-maintain-time-check\"),\n\t\t\tRiskLevel: pulumi.Int(2),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ScheduledNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ADB::DBCluster\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"governance-evaluation-adb-cluster-maintain-time-check\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"maintainTimes\": pulumi.String(\"02:00-04:00,06:00-08:00,12:00-13:00\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewCompliancePack(ctx, \"default\", \u0026cfg.CompliancePackArgs{\n\t\t\tCompliancePackName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"CloudGovernanceCenter evaluation\"),\n\t\t\tRiskLevel: pulumi.Int(2),\n\t\t\tConfigRuleIds: cfg.CompliancePackConfigRuleIdArray{\n\t\t\t\t\u0026cfg.CompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: rule1.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cfg.CompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: rule2.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport com.pulumi.alicloud.cfg.CompliancePack;\nimport com.pulumi.alicloud.cfg.CompliancePackArgs;\nimport com.pulumi.alicloud.cfg.inputs.CompliancePackConfigRuleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-config-name\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var rule1 = new Rule(\"rule1\", RuleArgs.builder()\n .description(name)\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"ram-user-ak-create-date-expired-check\")\n .riskLevel(1)\n .maximumExecutionFrequency(\"TwentyFour_Hours\")\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ScheduledNotification\")\n .resourceTypesScopes(\"ACS::RAM::User\")\n .ruleName(\"ciscompliancecheck_ram-user-ak-create-date-expired-check\")\n .inputParameters(Map.of(\"days\", \"90\"))\n .build());\n\n var rule2 = new Rule(\"rule2\", RuleArgs.builder()\n .description(name)\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"adb-cluster-maintain-time-check\")\n .riskLevel(2)\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ScheduledNotification\")\n .resourceTypesScopes(\"ACS::ADB::DBCluster\")\n .ruleName(\"governance-evaluation-adb-cluster-maintain-time-check\")\n .inputParameters(Map.of(\"maintainTimes\", \"02:00-04:00,06:00-08:00,12:00-13:00\"))\n .build());\n\n var defaultCompliancePack = new CompliancePack(\"defaultCompliancePack\", CompliancePackArgs.builder()\n .compliancePackName(name)\n .description(\"CloudGovernanceCenter evaluation\")\n .riskLevel(2)\n .configRuleIds( \n CompliancePackConfigRuleIdArgs.builder()\n .configRuleId(rule1.id())\n .build(),\n CompliancePackConfigRuleIdArgs.builder()\n .configRuleId(rule2.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-config-name\nresources:\n rule1:\n type: alicloud:cfg:Rule\n properties:\n description: ${name}\n sourceOwner: ALIYUN\n sourceIdentifier: ram-user-ak-create-date-expired-check\n riskLevel: 1\n maximumExecutionFrequency: TwentyFour_Hours\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ScheduledNotification\n resourceTypesScopes:\n - ACS::RAM::User\n ruleName: ciscompliancecheck_ram-user-ak-create-date-expired-check\n inputParameters:\n days: '90'\n rule2:\n type: alicloud:cfg:Rule\n properties:\n description: ${name}\n sourceOwner: ALIYUN\n sourceIdentifier: adb-cluster-maintain-time-check\n riskLevel: 2\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ScheduledNotification\n resourceTypesScopes:\n - ACS::ADB::DBCluster\n ruleName: governance-evaluation-adb-cluster-maintain-time-check\n inputParameters:\n maintainTimes: 02:00-04:00,06:00-08:00,12:00-13:00\n defaultCompliancePack:\n type: alicloud:cfg:CompliancePack\n name: default\n properties:\n compliancePackName: ${name}\n description: CloudGovernanceCenter evaluation\n riskLevel: '2'\n configRuleIds:\n - configRuleId: ${rule1.id}\n - configRuleId: ${rule2.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Config Compliance Pack can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/compliancePack:CompliancePack example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Config Compliance Pack resource.\n\nFor information about Cloud Config Compliance Pack and how to use it, see [What is Compliance Pack](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createcompliancepack).\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-config-name\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst rule1 = new alicloud.cfg.Rule(\"rule1\", {\n description: name,\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"ram-user-ak-create-date-expired-check\",\n riskLevel: 1,\n maximumExecutionFrequency: \"TwentyFour_Hours\",\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ScheduledNotification\",\n resourceTypesScopes: [\"ACS::RAM::User\"],\n ruleName: \"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n inputParameters: {\n days: \"90\",\n },\n});\nconst rule2 = new alicloud.cfg.Rule(\"rule2\", {\n description: name,\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"adb-cluster-maintain-time-check\",\n riskLevel: 2,\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ScheduledNotification\",\n resourceTypesScopes: [\"ACS::ADB::DBCluster\"],\n ruleName: \"governance-evaluation-adb-cluster-maintain-time-check\",\n inputParameters: {\n maintainTimes: \"02:00-04:00,06:00-08:00,12:00-13:00\",\n },\n});\nconst defaultCompliancePack = new alicloud.cfg.CompliancePack(\"default\", {\n compliancePackName: name,\n description: \"CloudGovernanceCenter evaluation\",\n riskLevel: 2,\n configRuleIds: [\n {\n configRuleId: rule1.id,\n },\n {\n configRuleId: rule2.id,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-config-name\"\ndefault = alicloud.get_regions(current=True)\nrule1 = alicloud.cfg.Rule(\"rule1\",\n description=name,\n source_owner=\"ALIYUN\",\n source_identifier=\"ram-user-ak-create-date-expired-check\",\n risk_level=1,\n maximum_execution_frequency=\"TwentyFour_Hours\",\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ScheduledNotification\",\n resource_types_scopes=[\"ACS::RAM::User\"],\n rule_name=\"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n input_parameters={\n \"days\": \"90\",\n })\nrule2 = alicloud.cfg.Rule(\"rule2\",\n description=name,\n source_owner=\"ALIYUN\",\n source_identifier=\"adb-cluster-maintain-time-check\",\n risk_level=2,\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ScheduledNotification\",\n resource_types_scopes=[\"ACS::ADB::DBCluster\"],\n rule_name=\"governance-evaluation-adb-cluster-maintain-time-check\",\n input_parameters={\n \"maintainTimes\": \"02:00-04:00,06:00-08:00,12:00-13:00\",\n })\ndefault_compliance_pack = alicloud.cfg.CompliancePack(\"default\",\n compliance_pack_name=name,\n description=\"CloudGovernanceCenter evaluation\",\n risk_level=2,\n config_rule_ids=[\n {\n \"config_rule_id\": rule1.id,\n },\n {\n \"config_rule_id\": rule2.id,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-config-name\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var rule1 = new AliCloud.Cfg.Rule(\"rule1\", new()\n {\n Description = name,\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"ram-user-ak-create-date-expired-check\",\n RiskLevel = 1,\n MaximumExecutionFrequency = \"TwentyFour_Hours\",\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ScheduledNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::RAM::User\",\n },\n RuleName = \"ciscompliancecheck_ram-user-ak-create-date-expired-check\",\n InputParameters = \n {\n { \"days\", \"90\" },\n },\n });\n\n var rule2 = new AliCloud.Cfg.Rule(\"rule2\", new()\n {\n Description = name,\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"adb-cluster-maintain-time-check\",\n RiskLevel = 2,\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ScheduledNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::ADB::DBCluster\",\n },\n RuleName = \"governance-evaluation-adb-cluster-maintain-time-check\",\n InputParameters = \n {\n { \"maintainTimes\", \"02:00-04:00,06:00-08:00,12:00-13:00\" },\n },\n });\n\n var defaultCompliancePack = new AliCloud.Cfg.CompliancePack(\"default\", new()\n {\n CompliancePackName = name,\n Description = \"CloudGovernanceCenter evaluation\",\n RiskLevel = 2,\n ConfigRuleIds = new[]\n {\n new AliCloud.Cfg.Inputs.CompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = rule1.Id,\n },\n new AliCloud.Cfg.Inputs.CompliancePackConfigRuleIdArgs\n {\n ConfigRuleId = rule2.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-config-name\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule1, err := cfg.NewRule(ctx, \"rule1\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"ram-user-ak-create-date-expired-check\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tMaximumExecutionFrequency: pulumi.String(\"TwentyFour_Hours\"),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ScheduledNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::RAM::User\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"ciscompliancecheck_ram-user-ak-create-date-expired-check\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"days\": pulumi.String(\"90\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule2, err := cfg.NewRule(ctx, \"rule2\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"adb-cluster-maintain-time-check\"),\n\t\t\tRiskLevel: pulumi.Int(2),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ScheduledNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ADB::DBCluster\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"governance-evaluation-adb-cluster-maintain-time-check\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"maintainTimes\": pulumi.String(\"02:00-04:00,06:00-08:00,12:00-13:00\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewCompliancePack(ctx, \"default\", \u0026cfg.CompliancePackArgs{\n\t\t\tCompliancePackName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"CloudGovernanceCenter evaluation\"),\n\t\t\tRiskLevel: pulumi.Int(2),\n\t\t\tConfigRuleIds: cfg.CompliancePackConfigRuleIdArray{\n\t\t\t\t\u0026cfg.CompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: rule1.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026cfg.CompliancePackConfigRuleIdArgs{\n\t\t\t\t\tConfigRuleId: rule2.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport com.pulumi.alicloud.cfg.CompliancePack;\nimport com.pulumi.alicloud.cfg.CompliancePackArgs;\nimport com.pulumi.alicloud.cfg.inputs.CompliancePackConfigRuleIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-config-name\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var rule1 = new Rule(\"rule1\", RuleArgs.builder()\n .description(name)\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"ram-user-ak-create-date-expired-check\")\n .riskLevel(1)\n .maximumExecutionFrequency(\"TwentyFour_Hours\")\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ScheduledNotification\")\n .resourceTypesScopes(\"ACS::RAM::User\")\n .ruleName(\"ciscompliancecheck_ram-user-ak-create-date-expired-check\")\n .inputParameters(Map.of(\"days\", \"90\"))\n .build());\n\n var rule2 = new Rule(\"rule2\", RuleArgs.builder()\n .description(name)\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"adb-cluster-maintain-time-check\")\n .riskLevel(2)\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ScheduledNotification\")\n .resourceTypesScopes(\"ACS::ADB::DBCluster\")\n .ruleName(\"governance-evaluation-adb-cluster-maintain-time-check\")\n .inputParameters(Map.of(\"maintainTimes\", \"02:00-04:00,06:00-08:00,12:00-13:00\"))\n .build());\n\n var defaultCompliancePack = new CompliancePack(\"defaultCompliancePack\", CompliancePackArgs.builder()\n .compliancePackName(name)\n .description(\"CloudGovernanceCenter evaluation\")\n .riskLevel(2)\n .configRuleIds( \n CompliancePackConfigRuleIdArgs.builder()\n .configRuleId(rule1.id())\n .build(),\n CompliancePackConfigRuleIdArgs.builder()\n .configRuleId(rule2.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-config-name\nresources:\n rule1:\n type: alicloud:cfg:Rule\n properties:\n description: ${name}\n sourceOwner: ALIYUN\n sourceIdentifier: ram-user-ak-create-date-expired-check\n riskLevel: 1\n maximumExecutionFrequency: TwentyFour_Hours\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ScheduledNotification\n resourceTypesScopes:\n - ACS::RAM::User\n ruleName: ciscompliancecheck_ram-user-ak-create-date-expired-check\n inputParameters:\n days: '90'\n rule2:\n type: alicloud:cfg:Rule\n properties:\n description: ${name}\n sourceOwner: ALIYUN\n sourceIdentifier: adb-cluster-maintain-time-check\n riskLevel: 2\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ScheduledNotification\n resourceTypesScopes:\n - ACS::ADB::DBCluster\n ruleName: governance-evaluation-adb-cluster-maintain-time-check\n inputParameters:\n maintainTimes: 02:00-04:00,06:00-08:00,12:00-13:00\n defaultCompliancePack:\n type: alicloud:cfg:CompliancePack\n name: default\n properties:\n compliancePackName: ${name}\n description: CloudGovernanceCenter evaluation\n riskLevel: '2'\n configRuleIds:\n - configRuleId: ${rule1.id}\n - configRuleId: ${rule2.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config Compliance Pack can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/compliancePack:CompliancePack example \u003cid\u003e\n```\n\n",
"properties": {
"compliancePackName": {
"type": "string",
@@ -118170,7 +120035,7 @@
}
},
"alicloud:cfg/configurationRecorder:ConfigurationRecorder": {
- "description": "Provides a Alicloud Config Configuration Recorder resource. Cloud Config is a specialized service for evaluating resources. Cloud Config tracks configuration changes of your resources and evaluates configuration compliance. Cloud Config can help you evaluate numerous resources and maintain the continuous compliance of your cloud infrastructure.\nFor information about Alicloud Config Configuration Recorder and how to use it, see [What is Configuration Recorder.](https://www.alibabacloud.com/help/en/cloud-config/latest/startconfigurationrecorder)\n\n\u003e **NOTE:** Available since v1.99.0.\n\n\u003e **NOTE:** The Cloud Config region only support `cn-shanghai` and `ap-southeast-1`.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cfg.ConfigurationRecorder(\"example\", {resourceTypes: [\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n]});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cfg.ConfigurationRecorder(\"example\", resource_types=[\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cfg.ConfigurationRecorder(\"example\", new()\n {\n ResourceTypes = new[]\n {\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cfg.NewConfigurationRecorder(ctx, \"example\", \u0026cfg.ConfigurationRecorderArgs{\n\t\t\tResourceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t\tpulumi.String(\"ACS::ECS::Disk\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cfg.ConfigurationRecorder;\nimport com.pulumi.alicloud.cfg.ConfigurationRecorderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ConfigurationRecorder(\"example\", ConfigurationRecorderArgs.builder()\n .resourceTypes( \n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cfg:ConfigurationRecorder\n properties:\n resourceTypes:\n - ACS::ECS::Instance\n - ACS::ECS::Disk\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlicloud Config Configuration Recorder can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/configurationRecorder:ConfigurationRecorder example 122378463********\n```\n\n",
+ "description": "Provides a Alicloud Config Configuration Recorder resource. Cloud Config is a specialized service for evaluating resources. Cloud Config tracks configuration changes of your resources and evaluates configuration compliance. Cloud Config can help you evaluate numerous resources and maintain the continuous compliance of your cloud infrastructure.\nFor information about Alicloud Config Configuration Recorder and how to use it, see [What is Configuration Recorder.](https://www.alibabacloud.com/help/en/cloud-config/latest/startconfigurationrecorder)\n\n\u003e **NOTE:** Available since v1.99.0.\n\n\u003e **NOTE:** The Cloud Config region only support `cn-shanghai` and `ap-southeast-1`.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cfg.ConfigurationRecorder(\"example\", {resourceTypes: [\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n]});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cfg.ConfigurationRecorder(\"example\", resource_types=[\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cfg.ConfigurationRecorder(\"example\", new()\n {\n ResourceTypes = new[]\n {\n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cfg.NewConfigurationRecorder(ctx, \"example\", \u0026cfg.ConfigurationRecorderArgs{\n\t\t\tResourceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::ECS::Instance\"),\n\t\t\t\tpulumi.String(\"ACS::ECS::Disk\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cfg.ConfigurationRecorder;\nimport com.pulumi.alicloud.cfg.ConfigurationRecorderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ConfigurationRecorder(\"example\", ConfigurationRecorderArgs.builder()\n .resourceTypes( \n \"ACS::ECS::Instance\",\n \"ACS::ECS::Disk\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cfg:ConfigurationRecorder\n properties:\n resourceTypes:\n - ACS::ECS::Instance\n - ACS::ECS::Disk\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlicloud Config Configuration Recorder can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/configurationRecorder:ConfigurationRecorder example 122378463********\n```\n\n",
"properties": {
"enterpriseEdition": {
"type": "boolean",
@@ -118249,7 +120114,7 @@
}
},
"alicloud:cfg/delivery:Delivery": {
- "description": "Provides a Config Delivery resource.\n\nDelivery channel of current account.\n\nFor information about Config Delivery and how to use it, see [What is Delivery](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createconfigdeliverychannel).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-sls\";\nconst _this = alicloud.getAccount({});\nconst thisGetRegions = alicloud.getRegions({\n current: true,\n});\nconst _default = new alicloud.log.Project(\"default\", {projectName: name});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n logstoreName: name,\n projectName: _default.projectName,\n});\nconst defaultDelivery = new alicloud.cfg.Delivery(\"default\", {\n configurationItemChangeNotification: true,\n nonCompliantNotification: true,\n deliveryChannelName: name,\n deliveryChannelTargetArn: pulumi.all([thisGetRegions, _this, _default.projectName, defaultStore.logstoreName]).apply(([thisGetRegions, _this, projectName, logstoreName]) =\u003e `acs:log:${thisGetRegions.ids?.[0]}:${_this.id}:project/${projectName}/logstore/${logstoreName}`),\n deliveryChannelType: \"SLS\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-sls\"\nthis = alicloud.get_account()\nthis_get_regions = alicloud.get_regions(current=True)\ndefault = alicloud.log.Project(\"default\", project_name=name)\ndefault_store = alicloud.log.Store(\"default\",\n logstore_name=name,\n project_name=default.project_name)\ndefault_delivery = alicloud.cfg.Delivery(\"default\",\n configuration_item_change_notification=True,\n non_compliant_notification=True,\n delivery_channel_name=name,\n delivery_channel_target_arn=pulumi.Output.all(\n project_name=default.project_name,\n logstore_name=default_store.logstore_name\n).apply(lambda resolved_outputs: f\"acs:log:{this_get_regions.ids[0]}:{this.id}:project/{resolved_outputs['project_name']}/logstore/{resolved_outputs['logstore_name']}\")\n,\n delivery_channel_type=\"SLS\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-sls\";\n var @this = AliCloud.GetAccount.Invoke();\n\n var thisGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var @default = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = name,\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n LogstoreName = name,\n ProjectName = @default.ProjectName,\n });\n\n var defaultDelivery = new AliCloud.Cfg.Delivery(\"default\", new()\n {\n ConfigurationItemChangeNotification = true,\n NonCompliantNotification = true,\n DeliveryChannelName = name,\n DeliveryChannelTargetArn = Output.Tuple(thisGetRegions, @this, @default.ProjectName, defaultStore.LogstoreName).Apply(values =\u003e\n {\n var thisGetRegions = values.Item1;\n var @this = values.Item2;\n var projectName = values.Item3;\n var logstoreName = values.Item4;\n return $\"acs:log:{thisGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Ids[0])}:{@this.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}/logstore/{logstoreName}\";\n }),\n DeliveryChannelType = \"SLS\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-sls\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tthis, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tthisGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tProjectName: _default.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewDelivery(ctx, \"default\", \u0026cfg.DeliveryArgs{\n\t\t\tConfigurationItemChangeNotification: pulumi.Bool(true),\n\t\t\tNonCompliantNotification: pulumi.Bool(true),\n\t\t\tDeliveryChannelName: pulumi.String(name),\n\t\t\tDeliveryChannelTargetArn: pulumi.All(_default.ProjectName, defaultStore.LogstoreName).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\tprojectName := _args[0].(string)\n\t\t\t\tlogstoreName := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v/logstore/%v\", thisGetRegions.Ids[0], this.Id, projectName, logstoreName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDeliveryChannelType: pulumi.String(\"SLS\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cfg.Delivery;\nimport com.pulumi.alicloud.cfg.DeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-sls\");\n final var this = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var thisGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var default_ = new Project(\"default\", ProjectArgs.builder()\n .projectName(name)\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .logstoreName(name)\n .projectName(default_.projectName())\n .build());\n\n var defaultDelivery = new Delivery(\"defaultDelivery\", DeliveryArgs.builder()\n .configurationItemChangeNotification(true)\n .nonCompliantNotification(true)\n .deliveryChannelName(name)\n .deliveryChannelTargetArn(Output.tuple(default_.projectName(), defaultStore.logstoreName()).applyValue(values -\u003e {\n var projectName = values.t1;\n var logstoreName = values.t2;\n return String.format(\"acs:log:%s:%s:project/%s/logstore/%s\", thisGetRegions.ids()[0],this_.id(),projectName,logstoreName);\n }))\n .deliveryChannelType(\"SLS\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-sls\nresources:\n default:\n type: alicloud:log:Project\n properties:\n projectName: ${name}\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n logstoreName: ${name}\n projectName: ${default.projectName}\n defaultDelivery:\n type: alicloud:cfg:Delivery\n name: default\n properties:\n configurationItemChangeNotification: true\n nonCompliantNotification: true\n deliveryChannelName: ${name}\n deliveryChannelTargetArn: acs:log:${thisGetRegions.ids[0]}:${this.id}:project/${default.projectName}/logstore/${defaultStore.logstoreName}\n deliveryChannelType: SLS\n description: ${name}\nvariables:\n this:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n thisGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConfig Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/delivery:Delivery example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Config Delivery resource.\n\nDelivery channel of current account.\n\nFor information about Config Delivery and how to use it, see [What is Delivery](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createconfigdeliverychannel).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-sls\";\nconst _this = alicloud.getAccount({});\nconst thisGetRegions = alicloud.getRegions({\n current: true,\n});\nconst _default = new alicloud.log.Project(\"default\", {projectName: name});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n logstoreName: name,\n projectName: _default.projectName,\n});\nconst defaultDelivery = new alicloud.cfg.Delivery(\"default\", {\n configurationItemChangeNotification: true,\n nonCompliantNotification: true,\n deliveryChannelName: name,\n deliveryChannelTargetArn: pulumi.all([thisGetRegions, _this, _default.projectName, defaultStore.logstoreName]).apply(([thisGetRegions, _this, projectName, logstoreName]) =\u003e `acs:log:${thisGetRegions.ids?.[0]}:${_this.id}:project/${projectName}/logstore/${logstoreName}`),\n deliveryChannelType: \"SLS\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-sls\"\nthis = alicloud.get_account()\nthis_get_regions = alicloud.get_regions(current=True)\ndefault = alicloud.log.Project(\"default\", project_name=name)\ndefault_store = alicloud.log.Store(\"default\",\n logstore_name=name,\n project_name=default.project_name)\ndefault_delivery = alicloud.cfg.Delivery(\"default\",\n configuration_item_change_notification=True,\n non_compliant_notification=True,\n delivery_channel_name=name,\n delivery_channel_target_arn=pulumi.Output.all(\n project_name=default.project_name,\n logstore_name=default_store.logstore_name\n).apply(lambda resolved_outputs: f\"acs:log:{this_get_regions.ids[0]}:{this.id}:project/{resolved_outputs['project_name']}/logstore/{resolved_outputs['logstore_name']}\")\n,\n delivery_channel_type=\"SLS\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-sls\";\n var @this = AliCloud.GetAccount.Invoke();\n\n var thisGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var @default = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = name,\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n LogstoreName = name,\n ProjectName = @default.ProjectName,\n });\n\n var defaultDelivery = new AliCloud.Cfg.Delivery(\"default\", new()\n {\n ConfigurationItemChangeNotification = true,\n NonCompliantNotification = true,\n DeliveryChannelName = name,\n DeliveryChannelTargetArn = Output.Tuple(thisGetRegions, @this, @default.ProjectName, defaultStore.LogstoreName).Apply(values =\u003e\n {\n var thisGetRegions = values.Item1;\n var @this = values.Item2;\n var projectName = values.Item3;\n var logstoreName = values.Item4;\n return $\"acs:log:{thisGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Ids[0])}:{@this.Apply(getAccountResult =\u003e getAccountResult.Id)}:project/{projectName}/logstore/{logstoreName}\";\n }),\n DeliveryChannelType = \"SLS\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-sls\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tthis, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tthisGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tProjectName: _default.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewDelivery(ctx, \"default\", \u0026cfg.DeliveryArgs{\n\t\t\tConfigurationItemChangeNotification: pulumi.Bool(true),\n\t\t\tNonCompliantNotification: pulumi.Bool(true),\n\t\t\tDeliveryChannelName: pulumi.String(name),\n\t\t\tDeliveryChannelTargetArn: pulumi.All(_default.ProjectName, defaultStore.LogstoreName).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\tprojectName := _args[0].(string)\n\t\t\t\tlogstoreName := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"acs:log:%v:%v:project/%v/logstore/%v\", thisGetRegions.Ids[0], this.Id, projectName, logstoreName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDeliveryChannelType: pulumi.String(\"SLS\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cfg.Delivery;\nimport com.pulumi.alicloud.cfg.DeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-sls\");\n final var this = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var thisGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var default_ = new Project(\"default\", ProjectArgs.builder()\n .projectName(name)\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .logstoreName(name)\n .projectName(default_.projectName())\n .build());\n\n var defaultDelivery = new Delivery(\"defaultDelivery\", DeliveryArgs.builder()\n .configurationItemChangeNotification(true)\n .nonCompliantNotification(true)\n .deliveryChannelName(name)\n .deliveryChannelTargetArn(Output.tuple(default_.projectName(), defaultStore.logstoreName()).applyValue(values -\u003e {\n var projectName = values.t1;\n var logstoreName = values.t2;\n return String.format(\"acs:log:%s:%s:project/%s/logstore/%s\", thisGetRegions.ids()[0],this_.id(),projectName,logstoreName);\n }))\n .deliveryChannelType(\"SLS\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-sls\nresources:\n default:\n type: alicloud:log:Project\n properties:\n projectName: ${name}\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n logstoreName: ${name}\n projectName: ${default.projectName}\n defaultDelivery:\n type: alicloud:cfg:Delivery\n name: default\n properties:\n configurationItemChangeNotification: true\n nonCompliantNotification: true\n deliveryChannelName: ${name}\n deliveryChannelTargetArn: acs:log:${thisGetRegions.ids[0]}:${this.id}:project/${default.projectName}/logstore/${defaultStore.logstoreName}\n deliveryChannelType: SLS\n description: ${name}\nvariables:\n this:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n thisGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nConfig Delivery can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/delivery:Delivery example \u003cid\u003e\n```\n\n",
"properties": {
"configurationItemChangeNotification": {
"type": "boolean",
@@ -118393,7 +120258,7 @@
}
},
"alicloud:cfg/deliveryChannel:DeliveryChannel": {
- "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new alicloud.mns.Topic(\"example\", {name: \"test-topic\"});\n// Example for create a MNS delivery channel\nconst exampleDeliveryChannel = new alicloud.cfg.DeliveryChannel(\"example\", {\n description: \"channel_description\",\n deliveryChannelName: \"channel_name\",\n deliveryChannelAssumeRoleArn: \"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n deliveryChannelType: \"MNS\",\n deliveryChannelTargetArn: std.format({\n input: \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n args: [example.name],\n }).then(invoke =\u003e invoke.result),\n deliveryChannelCondition: ` [\n {\n \\\\\"filterType\\\\\":\\\\\"ResourceType\\\\\",\n \\\\\"values\\\\\":[\n \\\\\"ACS::CEN::CenInstance\\\\\",\n \\\\\"ACS::CEN::Flowlog\\\\\",\n ],\n \\\\\"multiple\\\\\":true\n }\n ]\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nexample = alicloud.mns.Topic(\"example\", name=\"test-topic\")\n# Example for create a MNS delivery channel\nexample_delivery_channel = alicloud.cfg.DeliveryChannel(\"example\",\n description=\"channel_description\",\n delivery_channel_name=\"channel_name\",\n delivery_channel_assume_role_arn=\"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n delivery_channel_type=\"MNS\",\n delivery_channel_target_arn=std.format(input=\"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n args=[example.name]).result,\n delivery_channel_condition=\"\"\" [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Mns.Topic(\"example\", new()\n {\n Name = \"test-topic\",\n });\n\n // Example for create a MNS delivery channel\n var exampleDeliveryChannel = new AliCloud.Cfg.DeliveryChannel(\"example\", new()\n {\n Description = \"channel_description\",\n DeliveryChannelName = \"channel_name\",\n DeliveryChannelAssumeRoleArn = \"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n DeliveryChannelType = \"MNS\",\n DeliveryChannelTargetArn = Std.Format.Invoke(new()\n {\n Input = \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n Args = new[]\n {\n example.Name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DeliveryChannelCondition = @\" [\n {\n \\\"\"filterType\\\"\":\\\"\"ResourceType\\\"\",\n \\\"\"values\\\"\":[\n \\\"\"ACS::CEN::CenInstance\\\"\",\n \\\"\"ACS::CEN::Flowlog\\\"\",\n ],\n \\\"\"multiple\\\"\":true\n }\n ]\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mns\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := mns.NewTopic(ctx, \"example\", \u0026mns.TopicArgs{\n\t\t\tName: pulumi.String(\"test-topic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n\t\t\tArgs: pulumi.StringArray{\n\t\t\t\texample.Name,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Example for create a MNS delivery channel\n\t\t_, err = cfg.NewDeliveryChannel(ctx, \"example\", \u0026cfg.DeliveryChannelArgs{\n\t\t\tDescription: pulumi.String(\"channel_description\"),\n\t\t\tDeliveryChannelName: pulumi.String(\"channel_name\"),\n\t\t\tDeliveryChannelAssumeRoleArn: pulumi.String(\"acs:ram::11827252********:role/aliyunserviceroleforconfig\"),\n\t\t\tDeliveryChannelType: pulumi.String(\"MNS\"),\n\t\t\tDeliveryChannelTargetArn: pulumi.String(invokeFormat.Result),\n\t\t\tDeliveryChannelCondition: pulumi.String(` [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.mns.Topic;\nimport com.pulumi.alicloud.mns.TopicArgs;\nimport com.pulumi.alicloud.cfg.DeliveryChannel;\nimport com.pulumi.alicloud.cfg.DeliveryChannelArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Topic(\"example\", TopicArgs.builder()\n .name(\"test-topic\")\n .build());\n\n // Example for create a MNS delivery channel\n var exampleDeliveryChannel = new DeliveryChannel(\"exampleDeliveryChannel\", DeliveryChannelArgs.builder()\n .description(\"channel_description\")\n .deliveryChannelName(\"channel_name\")\n .deliveryChannelAssumeRoleArn(\"acs:ram::11827252********:role/aliyunserviceroleforconfig\")\n .deliveryChannelType(\"MNS\")\n .deliveryChannelTargetArn(StdFunctions.format(FormatArgs.builder()\n .input(\"acs:oss:cn-shanghai:11827252********:/topics/%s\")\n .args(example.name())\n .build()).result())\n .deliveryChannelCondition(\"\"\"\n [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:mns:Topic\n properties:\n name: test-topic\n # Example for create a MNS delivery channel\n exampleDeliveryChannel:\n type: alicloud:cfg:DeliveryChannel\n name: example\n properties:\n description: channel_description\n deliveryChannelName: channel_name\n deliveryChannelAssumeRoleArn: acs:ram::11827252********:role/aliyunserviceroleforconfig\n deliveryChannelType: MNS\n deliveryChannelTargetArn:\n fn::invoke:\n function: std:format\n arguments:\n input: acs:oss:cn-shanghai:11827252********:/topics/%s\n args:\n - ${example.name}\n return: result\n deliveryChannelCondition: |2\n [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlicloud Config Delivery Channel can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/deliveryChannel:DeliveryChannel example cdc-49a2ad756057********\n```\n\n",
+ "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new alicloud.mns.Topic(\"example\", {name: \"test-topic\"});\n// Example for create a MNS delivery channel\nconst exampleDeliveryChannel = new alicloud.cfg.DeliveryChannel(\"example\", {\n description: \"channel_description\",\n deliveryChannelName: \"channel_name\",\n deliveryChannelAssumeRoleArn: \"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n deliveryChannelType: \"MNS\",\n deliveryChannelTargetArn: std.format({\n input: \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n args: [example.name],\n }).then(invoke =\u003e invoke.result),\n deliveryChannelCondition: ` [\n {\n \\\\\"filterType\\\\\":\\\\\"ResourceType\\\\\",\n \\\\\"values\\\\\":[\n \\\\\"ACS::CEN::CenInstance\\\\\",\n \\\\\"ACS::CEN::Flowlog\\\\\",\n ],\n \\\\\"multiple\\\\\":true\n }\n ]\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nexample = alicloud.mns.Topic(\"example\", name=\"test-topic\")\n# Example for create a MNS delivery channel\nexample_delivery_channel = alicloud.cfg.DeliveryChannel(\"example\",\n description=\"channel_description\",\n delivery_channel_name=\"channel_name\",\n delivery_channel_assume_role_arn=\"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n delivery_channel_type=\"MNS\",\n delivery_channel_target_arn=std.format(input=\"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n args=[example.name]).result,\n delivery_channel_condition=\"\"\" [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Mns.Topic(\"example\", new()\n {\n Name = \"test-topic\",\n });\n\n // Example for create a MNS delivery channel\n var exampleDeliveryChannel = new AliCloud.Cfg.DeliveryChannel(\"example\", new()\n {\n Description = \"channel_description\",\n DeliveryChannelName = \"channel_name\",\n DeliveryChannelAssumeRoleArn = \"acs:ram::11827252********:role/aliyunserviceroleforconfig\",\n DeliveryChannelType = \"MNS\",\n DeliveryChannelTargetArn = Std.Format.Invoke(new()\n {\n Input = \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n Args = new[]\n {\n example.Name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DeliveryChannelCondition = @\" [\n {\n \\\"\"filterType\\\"\":\\\"\"ResourceType\\\"\",\n \\\"\"values\\\"\":[\n \\\"\"ACS::CEN::CenInstance\\\"\",\n \\\"\"ACS::CEN::Flowlog\\\"\",\n ],\n \\\"\"multiple\\\"\":true\n }\n ]\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mns\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := mns.NewTopic(ctx, \"example\", \u0026mns.TopicArgs{\n\t\t\tName: pulumi.String(\"test-topic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"acs:oss:cn-shanghai:11827252********:/topics/%s\",\n\t\t\tArgs: pulumi.StringArray{\n\t\t\t\texample.Name,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Example for create a MNS delivery channel\n\t\t_, err = cfg.NewDeliveryChannel(ctx, \"example\", \u0026cfg.DeliveryChannelArgs{\n\t\t\tDescription: pulumi.String(\"channel_description\"),\n\t\t\tDeliveryChannelName: pulumi.String(\"channel_name\"),\n\t\t\tDeliveryChannelAssumeRoleArn: pulumi.String(\"acs:ram::11827252********:role/aliyunserviceroleforconfig\"),\n\t\t\tDeliveryChannelType: pulumi.String(\"MNS\"),\n\t\t\tDeliveryChannelTargetArn: pulumi.String(invokeFormat.Result),\n\t\t\tDeliveryChannelCondition: pulumi.String(` [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.mns.Topic;\nimport com.pulumi.alicloud.mns.TopicArgs;\nimport com.pulumi.alicloud.cfg.DeliveryChannel;\nimport com.pulumi.alicloud.cfg.DeliveryChannelArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Topic(\"example\", TopicArgs.builder()\n .name(\"test-topic\")\n .build());\n\n // Example for create a MNS delivery channel\n var exampleDeliveryChannel = new DeliveryChannel(\"exampleDeliveryChannel\", DeliveryChannelArgs.builder()\n .description(\"channel_description\")\n .deliveryChannelName(\"channel_name\")\n .deliveryChannelAssumeRoleArn(\"acs:ram::11827252********:role/aliyunserviceroleforconfig\")\n .deliveryChannelType(\"MNS\")\n .deliveryChannelTargetArn(StdFunctions.format(FormatArgs.builder()\n .input(\"acs:oss:cn-shanghai:11827252********:/topics/%s\")\n .args(example.name())\n .build()).result())\n .deliveryChannelCondition(\"\"\"\n [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:mns:Topic\n properties:\n name: test-topic\n # Example for create a MNS delivery channel\n exampleDeliveryChannel:\n type: alicloud:cfg:DeliveryChannel\n name: example\n properties:\n description: channel_description\n deliveryChannelName: channel_name\n deliveryChannelAssumeRoleArn: acs:ram::11827252********:role/aliyunserviceroleforconfig\n deliveryChannelType: MNS\n deliveryChannelTargetArn:\n fn::invoke:\n function: std:format\n arguments:\n input: acs:oss:cn-shanghai:11827252********:/topics/%s\n args:\n - ${example.name}\n return: result\n deliveryChannelCondition: |2\n [\n {\n \\\"filterType\\\":\\\"ResourceType\\\",\n \\\"values\\\":[\n \\\"ACS::CEN::CenInstance\\\",\n \\\"ACS::CEN::Flowlog\\\",\n ],\n \\\"multiple\\\":true\n }\n ]\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlicloud Config Delivery Channel can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/deliveryChannel:DeliveryChannel example cdc-49a2ad756057********\n```\n\n",
"properties": {
"deliveryChannelAssumeRoleArn": {
"type": "string",
@@ -118506,7 +120371,7 @@
}
},
"alicloud:cfg/remediation:Remediation": {
- "description": "Provides a Config Remediation resource.\n\nFor information about Config Remediation and how to use it, see [What is Remediation](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createremediation).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-oss\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {\n bucket: `${name}-${defaultInteger.result}`,\n tags: {\n For: \"example\",\n },\n});\nconst nameBucketAcl = new alicloud.oss.BucketAcl(\"name\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read\",\n});\nconst defaultRule = new alicloud.cfg.Rule(\"default\", {\n description: \"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"oss-bucket-public-read-prohibited\",\n riskLevel: 1,\n tagKeyScope: \"For\",\n tagValueScope: \"example\",\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n resourceTypesScopes: [\"ACS::OSS::Bucket\"],\n ruleName: \"oss-bucket-public-read-prohibited\",\n});\nconst defaultRemediation = new alicloud.cfg.Remediation(\"default\", {\n configRuleId: defaultRule.configRuleId,\n remediationTemplateId: \"ACS-OSS-PutBucketAcl\",\n remediationSourceType: \"ALIYUN\",\n invokeType: \"MANUAL_EXECUTION\",\n params: Promise.all([defaultBucket.bucket, _default]).then(([bucket, _default]) =\u003e `{\"bucketName\": \"${bucket}\", \"regionId\": \"${_default.regions?.[0]?.id}\", \"permissionName\": \"private\"}`),\n remediationType: \"OOS\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-oss\"\ndefault = alicloud.get_regions(current=True)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_bucket = alicloud.oss.Bucket(\"default\",\n bucket=f\"{name}-{default_integer['result']}\",\n tags={\n \"For\": \"example\",\n })\nname_bucket_acl = alicloud.oss.BucketAcl(\"name\",\n bucket=default_bucket.bucket,\n acl=\"public-read\")\ndefault_rule = alicloud.cfg.Rule(\"default\",\n description=\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n source_owner=\"ALIYUN\",\n source_identifier=\"oss-bucket-public-read-prohibited\",\n risk_level=1,\n tag_key_scope=\"For\",\n tag_value_scope=\"example\",\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n resource_types_scopes=[\"ACS::OSS::Bucket\"],\n rule_name=\"oss-bucket-public-read-prohibited\")\ndefault_remediation = alicloud.cfg.Remediation(\"default\",\n config_rule_id=default_rule.config_rule_id,\n remediation_template_id=\"ACS-OSS-PutBucketAcl\",\n remediation_source_type=\"ALIYUN\",\n invoke_type=\"MANUAL_EXECUTION\",\n params=default_bucket.bucket.apply(lambda bucket: f\"{{\\\"bucketName\\\": \\\"{bucket}\\\", \\\"regionId\\\": \\\"{default.regions[0].id}\\\", \\\"permissionName\\\": \\\"private\\\"}}\"),\n remediation_type=\"OOS\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-oss\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"{name}-{defaultInteger.Result}\",\n Tags = \n {\n { \"For\", \"example\" },\n },\n });\n\n var nameBucketAcl = new AliCloud.Oss.BucketAcl(\"name\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read\",\n });\n\n var defaultRule = new AliCloud.Cfg.Rule(\"default\", new()\n {\n Description = \"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"oss-bucket-public-read-prohibited\",\n RiskLevel = 1,\n TagKeyScope = \"For\",\n TagValueScope = \"example\",\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::OSS::Bucket\",\n },\n RuleName = \"oss-bucket-public-read-prohibited\",\n });\n\n var defaultRemediation = new AliCloud.Cfg.Remediation(\"default\", new()\n {\n ConfigRuleId = defaultRule.ConfigRuleId,\n RemediationTemplateId = \"ACS-OSS-PutBucketAcl\",\n RemediationSourceType = \"ALIYUN\",\n InvokeType = \"MANUAL_EXECUTION\",\n Params = Output.Tuple(defaultBucket.BucketName, @default).Apply(values =\u003e\n {\n var bucket = values.Item1;\n var @default = values.Item2;\n return $\"{{\\\"bucketName\\\": \\\"{bucket}\\\", \\\"regionId\\\": \\\"{@default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}\\\", \\\"permissionName\\\": \\\"private\\\"}}\";\n }),\n RemediationType = \"OOS\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-oss\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"name\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRule, err := cfg.NewRule(ctx, \"default\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"oss-bucket-public-read-prohibited\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tTagKeyScope: pulumi.String(\"For\"),\n\t\t\tTagValueScope: pulumi.String(\"example\"),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::OSS::Bucket\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"oss-bucket-public-read-prohibited\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewRemediation(ctx, \"default\", \u0026cfg.RemediationArgs{\n\t\t\tConfigRuleId: defaultRule.ConfigRuleId,\n\t\t\tRemediationTemplateId: pulumi.String(\"ACS-OSS-PutBucketAcl\"),\n\t\t\tRemediationSourceType: pulumi.String(\"ALIYUN\"),\n\t\t\tInvokeType: pulumi.String(\"MANUAL_EXECUTION\"),\n\t\t\tParams: defaultBucket.Bucket.ApplyT(func(bucket string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"{\\\"bucketName\\\": \\\"%v\\\", \\\"regionId\\\": \\\"%v\\\", \\\"permissionName\\\": \\\"private\\\"}\", bucket, _default.Regions[0].Id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tRemediationType: pulumi.String(\"OOS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport com.pulumi.alicloud.cfg.Remediation;\nimport com.pulumi.alicloud.cfg.RemediationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-oss\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"%s-%s\", name,defaultInteger.result()))\n .tags(Map.of(\"For\", \"example\"))\n .build());\n\n var nameBucketAcl = new BucketAcl(\"nameBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read\")\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .description(\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"oss-bucket-public-read-prohibited\")\n .riskLevel(1)\n .tagKeyScope(\"For\")\n .tagValueScope(\"example\")\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .resourceTypesScopes(\"ACS::OSS::Bucket\")\n .ruleName(\"oss-bucket-public-read-prohibited\")\n .build());\n\n var defaultRemediation = new Remediation(\"defaultRemediation\", RemediationArgs.builder()\n .configRuleId(defaultRule.configRuleId())\n .remediationTemplateId(\"ACS-OSS-PutBucketAcl\")\n .remediationSourceType(\"ALIYUN\")\n .invokeType(\"MANUAL_EXECUTION\")\n .params(defaultBucket.bucket().applyValue(_bucket -\u003e String.format(\"{{\\\"bucketName\\\": \\\"%s\\\", \\\"regionId\\\": \\\"%s\\\", \\\"permissionName\\\": \\\"private\\\"}}\", _bucket,default_.regions()[0].id())))\n .remediationType(\"OOS\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-oss\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: ${name}-${defaultInteger.result}\n tags:\n For: example\n nameBucketAcl:\n type: alicloud:oss:BucketAcl\n name: name\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read\n defaultRule:\n type: alicloud:cfg:Rule\n name: default\n properties:\n description: If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\n sourceOwner: ALIYUN\n sourceIdentifier: oss-bucket-public-read-prohibited\n riskLevel: 1\n tagKeyScope: For\n tagValueScope: example\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ConfigurationItemChangeNotification\n resourceTypesScopes:\n - ACS::OSS::Bucket\n ruleName: oss-bucket-public-read-prohibited\n defaultRemediation:\n type: alicloud:cfg:Remediation\n name: default\n properties:\n configRuleId: ${defaultRule.configRuleId}\n remediationTemplateId: ACS-OSS-PutBucketAcl\n remediationSourceType: ALIYUN\n invokeType: MANUAL_EXECUTION\n params: '{\"bucketName\": \"${defaultBucket.bucket}\", \"regionId\": \"${default.regions[0].id}\", \"permissionName\": \"private\"}'\n remediationType: OOS\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConfig Remediation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/remediation:Remediation example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Config Remediation resource.\n\nFor information about Config Remediation and how to use it, see [What is Remediation](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createremediation).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example-oss\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {\n bucket: `${name}-${defaultInteger.result}`,\n tags: {\n For: \"example\",\n },\n});\nconst nameBucketAcl = new alicloud.oss.BucketAcl(\"name\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read\",\n});\nconst defaultRule = new alicloud.cfg.Rule(\"default\", {\n description: \"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"oss-bucket-public-read-prohibited\",\n riskLevel: 1,\n tagKeyScope: \"For\",\n tagValueScope: \"example\",\n regionIdsScope: _default.then(_default =\u003e _default.regions?.[0]?.id),\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n resourceTypesScopes: [\"ACS::OSS::Bucket\"],\n ruleName: \"oss-bucket-public-read-prohibited\",\n});\nconst defaultRemediation = new alicloud.cfg.Remediation(\"default\", {\n configRuleId: defaultRule.configRuleId,\n remediationTemplateId: \"ACS-OSS-PutBucketAcl\",\n remediationSourceType: \"ALIYUN\",\n invokeType: \"MANUAL_EXECUTION\",\n params: Promise.all([defaultBucket.bucket, _default]).then(([bucket, _default]) =\u003e `{\"bucketName\": \"${bucket}\", \"regionId\": \"${_default.regions?.[0]?.id}\", \"permissionName\": \"private\"}`),\n remediationType: \"OOS\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example-oss\"\ndefault = alicloud.get_regions(current=True)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_bucket = alicloud.oss.Bucket(\"default\",\n bucket=f\"{name}-{default_integer['result']}\",\n tags={\n \"For\": \"example\",\n })\nname_bucket_acl = alicloud.oss.BucketAcl(\"name\",\n bucket=default_bucket.bucket,\n acl=\"public-read\")\ndefault_rule = alicloud.cfg.Rule(\"default\",\n description=\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n source_owner=\"ALIYUN\",\n source_identifier=\"oss-bucket-public-read-prohibited\",\n risk_level=1,\n tag_key_scope=\"For\",\n tag_value_scope=\"example\",\n region_ids_scope=default.regions[0].id,\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n resource_types_scopes=[\"ACS::OSS::Bucket\"],\n rule_name=\"oss-bucket-public-read-prohibited\")\ndefault_remediation = alicloud.cfg.Remediation(\"default\",\n config_rule_id=default_rule.config_rule_id,\n remediation_template_id=\"ACS-OSS-PutBucketAcl\",\n remediation_source_type=\"ALIYUN\",\n invoke_type=\"MANUAL_EXECUTION\",\n params=default_bucket.bucket.apply(lambda bucket: f\"{{\\\"bucketName\\\": \\\"{bucket}\\\", \\\"regionId\\\": \\\"{default.regions[0].id}\\\", \\\"permissionName\\\": \\\"private\\\"}}\"),\n remediation_type=\"OOS\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example-oss\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"{name}-{defaultInteger.Result}\",\n Tags = \n {\n { \"For\", \"example\" },\n },\n });\n\n var nameBucketAcl = new AliCloud.Oss.BucketAcl(\"name\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read\",\n });\n\n var defaultRule = new AliCloud.Cfg.Rule(\"default\", new()\n {\n Description = \"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"oss-bucket-public-read-prohibited\",\n RiskLevel = 1,\n TagKeyScope = \"For\",\n TagValueScope = \"example\",\n RegionIdsScope = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n ResourceTypesScopes = new[]\n {\n \"ACS::OSS::Bucket\",\n },\n RuleName = \"oss-bucket-public-read-prohibited\",\n });\n\n var defaultRemediation = new AliCloud.Cfg.Remediation(\"default\", new()\n {\n ConfigRuleId = defaultRule.ConfigRuleId,\n RemediationTemplateId = \"ACS-OSS-PutBucketAcl\",\n RemediationSourceType = \"ALIYUN\",\n InvokeType = \"MANUAL_EXECUTION\",\n Params = Output.Tuple(defaultBucket.BucketName, @default).Apply(values =\u003e\n {\n var bucket = values.Item1;\n var @default = values.Item2;\n return $\"{{\\\"bucketName\\\": \\\"{bucket}\\\", \\\"regionId\\\": \\\"{@default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}\\\", \\\"permissionName\\\": \\\"private\\\"}}\";\n }),\n RemediationType = \"OOS\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example-oss\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"name\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRule, err := cfg.NewRule(ctx, \"default\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"oss-bucket-public-read-prohibited\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tTagKeyScope: pulumi.String(\"For\"),\n\t\t\tTagValueScope: pulumi.String(\"example\"),\n\t\t\tRegionIdsScope: pulumi.String(_default.Regions[0].Id),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::OSS::Bucket\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"oss-bucket-public-read-prohibited\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewRemediation(ctx, \"default\", \u0026cfg.RemediationArgs{\n\t\t\tConfigRuleId: defaultRule.ConfigRuleId,\n\t\t\tRemediationTemplateId: pulumi.String(\"ACS-OSS-PutBucketAcl\"),\n\t\t\tRemediationSourceType: pulumi.String(\"ALIYUN\"),\n\t\t\tInvokeType: pulumi.String(\"MANUAL_EXECUTION\"),\n\t\t\tParams: defaultBucket.Bucket.ApplyT(func(bucket string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"{\\\"bucketName\\\": \\\"%v\\\", \\\"regionId\\\": \\\"%v\\\", \\\"permissionName\\\": \\\"private\\\"}\", bucket, _default.Regions[0].Id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tRemediationType: pulumi.String(\"OOS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport com.pulumi.alicloud.cfg.Remediation;\nimport com.pulumi.alicloud.cfg.RemediationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example-oss\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"%s-%s\", name,defaultInteger.result()))\n .tags(Map.of(\"For\", \"example\"))\n .build());\n\n var nameBucketAcl = new BucketAcl(\"nameBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read\")\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .description(\"If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"oss-bucket-public-read-prohibited\")\n .riskLevel(1)\n .tagKeyScope(\"For\")\n .tagValueScope(\"example\")\n .regionIdsScope(default_.regions()[0].id())\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .resourceTypesScopes(\"ACS::OSS::Bucket\")\n .ruleName(\"oss-bucket-public-read-prohibited\")\n .build());\n\n var defaultRemediation = new Remediation(\"defaultRemediation\", RemediationArgs.builder()\n .configRuleId(defaultRule.configRuleId())\n .remediationTemplateId(\"ACS-OSS-PutBucketAcl\")\n .remediationSourceType(\"ALIYUN\")\n .invokeType(\"MANUAL_EXECUTION\")\n .params(defaultBucket.bucket().applyValue(_bucket -\u003e String.format(\"{{\\\"bucketName\\\": \\\"%s\\\", \\\"regionId\\\": \\\"%s\\\", \\\"permissionName\\\": \\\"private\\\"}}\", _bucket,default_.regions()[0].id())))\n .remediationType(\"OOS\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example-oss\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: ${name}-${defaultInteger.result}\n tags:\n For: example\n nameBucketAcl:\n type: alicloud:oss:BucketAcl\n name: name\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read\n defaultRule:\n type: alicloud:cfg:Rule\n name: default\n properties:\n description: If the ACL policy of the OSS bucket denies read access from the Internet, the configuration is considered compliant.\n sourceOwner: ALIYUN\n sourceIdentifier: oss-bucket-public-read-prohibited\n riskLevel: 1\n tagKeyScope: For\n tagValueScope: example\n regionIdsScope: ${default.regions[0].id}\n configRuleTriggerTypes: ConfigurationItemChangeNotification\n resourceTypesScopes:\n - ACS::OSS::Bucket\n ruleName: oss-bucket-public-read-prohibited\n defaultRemediation:\n type: alicloud:cfg:Remediation\n name: default\n properties:\n configRuleId: ${defaultRule.configRuleId}\n remediationTemplateId: ACS-OSS-PutBucketAcl\n remediationSourceType: ALIYUN\n invokeType: MANUAL_EXECUTION\n params: '{\"bucketName\": \"${defaultBucket.bucket}\", \"regionId\": \"${default.regions[0].id}\", \"permissionName\": \"private\"}'\n remediationType: OOS\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nConfig Remediation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/remediation:Remediation example \u003cid\u003e\n```\n\n",
"properties": {
"configRuleId": {
"type": "string",
@@ -118621,7 +120486,7 @@
}
},
"alicloud:cfg/rule:Rule": {
- "description": "Provides a Config Rule resource.\n\nFor information about Config Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createconfigrule).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultRule = new alicloud.cfg.Rule(\"default\", {\n description: \"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n riskLevel: 1,\n tagValueScope: \"example-value\",\n tagKeyScope: \"example-key\",\n excludeResourceIdsScope: \"example-resource_id\",\n regionIdsScope: \"cn-hangzhou\",\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n resourceGroupIdsScope: _default.then(_default =\u003e _default.ids?.[0]),\n resourceTypesScopes: [\"ACS::RDS::DBInstance\"],\n ruleName: \"contains-tag\",\n inputParameters: {\n key1: \"value1\",\n key2: \"value2\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_rule = alicloud.cfg.Rule(\"default\",\n description=\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n risk_level=1,\n tag_value_scope=\"example-value\",\n tag_key_scope=\"example-key\",\n exclude_resource_ids_scope=\"example-resource_id\",\n region_ids_scope=\"cn-hangzhou\",\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n resource_group_ids_scope=default.ids[0],\n resource_types_scopes=[\"ACS::RDS::DBInstance\"],\n rule_name=\"contains-tag\",\n input_parameters={\n \"key1\": \"value1\",\n \"key2\": \"value2\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultRule = new AliCloud.Cfg.Rule(\"default\", new()\n {\n Description = \"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n RiskLevel = 1,\n TagValueScope = \"example-value\",\n TagKeyScope = \"example-key\",\n ExcludeResourceIdsScope = \"example-resource_id\",\n RegionIdsScope = \"cn-hangzhou\",\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n ResourceGroupIdsScope = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n ResourceTypesScopes = new[]\n {\n \"ACS::RDS::DBInstance\",\n },\n RuleName = \"contains-tag\",\n InputParameters = \n {\n { \"key1\", \"value1\" },\n { \"key2\", \"value2\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewRule(ctx, \"default\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tTagValueScope: pulumi.String(\"example-value\"),\n\t\t\tTagKeyScope: pulumi.String(\"example-key\"),\n\t\t\tExcludeResourceIdsScope: pulumi.String(\"example-resource_id\"),\n\t\t\tRegionIdsScope: pulumi.String(\"cn-hangzhou\"),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tResourceGroupIdsScope: pulumi.String(_default.Ids[0]),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::RDS::DBInstance\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\"key2\": pulumi.String(\"value2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .description(\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .riskLevel(1)\n .tagValueScope(\"example-value\")\n .tagKeyScope(\"example-key\")\n .excludeResourceIdsScope(\"example-resource_id\")\n .regionIdsScope(\"cn-hangzhou\")\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .resourceGroupIdsScope(default_.ids()[0])\n .resourceTypesScopes(\"ACS::RDS::DBInstance\")\n .ruleName(\"contains-tag\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key1\", \"value1\"),\n Map.entry(\"key2\", \"value2\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultRule:\n type: alicloud:cfg:Rule\n name: default\n properties:\n description: If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\n sourceOwner: ALIYUN\n sourceIdentifier: contains-tag\n riskLevel: 1\n tagValueScope: example-value\n tagKeyScope: example-key\n excludeResourceIdsScope: example-resource_id\n regionIdsScope: cn-hangzhou\n configRuleTriggerTypes: ConfigurationItemChangeNotification\n resourceGroupIdsScope: ${default.ids[0]}\n resourceTypesScopes:\n - ACS::RDS::DBInstance\n ruleName: contains-tag\n inputParameters:\n key1: value1\n key2: value2\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nConfig Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/rule:Rule example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Config Rule resource.\n\nFor information about Config Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/cloud-config/latest/api-config-2020-09-07-createconfigrule).\n\n\u003e **NOTE:** Available since v1.204.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultRule = new alicloud.cfg.Rule(\"default\", {\n description: \"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"contains-tag\",\n riskLevel: 1,\n tagValueScope: \"example-value\",\n tagKeyScope: \"example-key\",\n excludeResourceIdsScope: \"example-resource_id\",\n regionIdsScope: \"cn-hangzhou\",\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n resourceGroupIdsScope: _default.then(_default =\u003e _default.ids?.[0]),\n resourceTypesScopes: [\"ACS::RDS::DBInstance\"],\n ruleName: \"contains-tag\",\n inputParameters: {\n key1: \"value1\",\n key2: \"value2\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_rule = alicloud.cfg.Rule(\"default\",\n description=\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n source_owner=\"ALIYUN\",\n source_identifier=\"contains-tag\",\n risk_level=1,\n tag_value_scope=\"example-value\",\n tag_key_scope=\"example-key\",\n exclude_resource_ids_scope=\"example-resource_id\",\n region_ids_scope=\"cn-hangzhou\",\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n resource_group_ids_scope=default.ids[0],\n resource_types_scopes=[\"ACS::RDS::DBInstance\"],\n rule_name=\"contains-tag\",\n input_parameters={\n \"key1\": \"value1\",\n \"key2\": \"value2\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultRule = new AliCloud.Cfg.Rule(\"default\", new()\n {\n Description = \"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\",\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"contains-tag\",\n RiskLevel = 1,\n TagValueScope = \"example-value\",\n TagKeyScope = \"example-key\",\n ExcludeResourceIdsScope = \"example-resource_id\",\n RegionIdsScope = \"cn-hangzhou\",\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n ResourceGroupIdsScope = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n ResourceTypesScopes = new[]\n {\n \"ACS::RDS::DBInstance\",\n },\n RuleName = \"contains-tag\",\n InputParameters = \n {\n { \"key1\", \"value1\" },\n { \"key2\", \"value2\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cfg.NewRule(ctx, \"default\", \u0026cfg.RuleArgs{\n\t\t\tDescription: pulumi.String(\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\"),\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"contains-tag\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tTagValueScope: pulumi.String(\"example-value\"),\n\t\t\tTagKeyScope: pulumi.String(\"example-key\"),\n\t\t\tExcludeResourceIdsScope: pulumi.String(\"example-resource_id\"),\n\t\t\tRegionIdsScope: pulumi.String(\"cn-hangzhou\"),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tResourceGroupIdsScope: pulumi.String(_default.Ids[0]),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::RDS::DBInstance\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"contains-tag\"),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"key1\": pulumi.String(\"value1\"),\n\t\t\t\t\"key2\": pulumi.String(\"value2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cfg.Rule;\nimport com.pulumi.alicloud.cfg.RuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultRule = new Rule(\"defaultRule\", RuleArgs.builder()\n .description(\"If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\")\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"contains-tag\")\n .riskLevel(1)\n .tagValueScope(\"example-value\")\n .tagKeyScope(\"example-key\")\n .excludeResourceIdsScope(\"example-resource_id\")\n .regionIdsScope(\"cn-hangzhou\")\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .resourceGroupIdsScope(default_.ids()[0])\n .resourceTypesScopes(\"ACS::RDS::DBInstance\")\n .ruleName(\"contains-tag\")\n .inputParameters(Map.ofEntries(\n Map.entry(\"key1\", \"value1\"),\n Map.entry(\"key2\", \"value2\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultRule:\n type: alicloud:cfg:Rule\n name: default\n properties:\n description: If the resource matches one of the specified tag key-value pairs, the configuration is considered compliant.\n sourceOwner: ALIYUN\n sourceIdentifier: contains-tag\n riskLevel: 1\n tagValueScope: example-value\n tagKeyScope: example-key\n excludeResourceIdsScope: example-resource_id\n regionIdsScope: cn-hangzhou\n configRuleTriggerTypes: ConfigurationItemChangeNotification\n resourceGroupIdsScope: ${default.ids[0]}\n resourceTypesScopes:\n - ACS::RDS::DBInstance\n ruleName: contains-tag\n inputParameters:\n key1: value1\n key2: value2\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nConfig Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cfg/rule:Rule example \u003cid\u003e\n```\n\n",
"properties": {
"accountId": {
"type": "integer",
@@ -118974,7 +120839,7 @@
}
},
"alicloud:chatbot/publishTask:PublishTask": {
- "description": "Provides a Chatbot Publish Task resource.\n\nFor information about Chatbot Publish Task and how to use it, see [What is Publish Task](https://help.aliyun.com/document_detail/433996.html).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.chatbot.getAgents({});\nconst defaultPublishTask = new alicloud.chatbot.PublishTask(\"default\", {\n bizType: \"faq\",\n agentKey: _default.then(_default =\u003e _default.agents?.[0]?.agentKey),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.chatbot.get_agents()\ndefault_publish_task = alicloud.chatbot.PublishTask(\"default\",\n biz_type=\"faq\",\n agent_key=default.agents[0].agent_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Chatbot.GetAgents.Invoke();\n\n var defaultPublishTask = new AliCloud.Chatbot.PublishTask(\"default\", new()\n {\n BizType = \"faq\",\n AgentKey = @default.Apply(@default =\u003e @default.Apply(getAgentsResult =\u003e getAgentsResult.Agents[0]?.AgentKey)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/chatbot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := chatbot.GetAgents(ctx, \u0026chatbot.GetAgentsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = chatbot.NewPublishTask(ctx, \"default\", \u0026chatbot.PublishTaskArgs{\n\t\t\tBizType: pulumi.String(\"faq\"),\n\t\t\tAgentKey: pulumi.String(_default.Agents[0].AgentKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.chatbot.ChatbotFunctions;\nimport com.pulumi.alicloud.chatbot.inputs.GetAgentsArgs;\nimport com.pulumi.alicloud.chatbot.PublishTask;\nimport com.pulumi.alicloud.chatbot.PublishTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ChatbotFunctions.getAgents(GetAgentsArgs.builder()\n .build());\n\n var defaultPublishTask = new PublishTask(\"defaultPublishTask\", PublishTaskArgs.builder()\n .bizType(\"faq\")\n .agentKey(default_.agents()[0].agentKey())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultPublishTask:\n type: alicloud:chatbot:PublishTask\n name: default\n properties:\n bizType: faq\n agentKey: ${default.agents[0].agentKey}\nvariables:\n default:\n fn::invoke:\n function: alicloud:chatbot:getAgents\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nChatbot Publish Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:chatbot/publishTask:PublishTask example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Chatbot Publish Task resource.\n\nFor information about Chatbot Publish Task and how to use it, see [What is Publish Task](https://help.aliyun.com/document_detail/433996.html).\n\n\u003e **NOTE:** Available since v1.203.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.chatbot.getAgents({});\nconst defaultPublishTask = new alicloud.chatbot.PublishTask(\"default\", {\n bizType: \"faq\",\n agentKey: _default.then(_default =\u003e _default.agents?.[0]?.agentKey),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.chatbot.get_agents()\ndefault_publish_task = alicloud.chatbot.PublishTask(\"default\",\n biz_type=\"faq\",\n agent_key=default.agents[0].agent_key)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Chatbot.GetAgents.Invoke();\n\n var defaultPublishTask = new AliCloud.Chatbot.PublishTask(\"default\", new()\n {\n BizType = \"faq\",\n AgentKey = @default.Apply(@default =\u003e @default.Apply(getAgentsResult =\u003e getAgentsResult.Agents[0]?.AgentKey)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/chatbot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := chatbot.GetAgents(ctx, \u0026chatbot.GetAgentsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = chatbot.NewPublishTask(ctx, \"default\", \u0026chatbot.PublishTaskArgs{\n\t\t\tBizType: pulumi.String(\"faq\"),\n\t\t\tAgentKey: pulumi.String(_default.Agents[0].AgentKey),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.chatbot.ChatbotFunctions;\nimport com.pulumi.alicloud.chatbot.inputs.GetAgentsArgs;\nimport com.pulumi.alicloud.chatbot.PublishTask;\nimport com.pulumi.alicloud.chatbot.PublishTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ChatbotFunctions.getAgents(GetAgentsArgs.builder()\n .build());\n\n var defaultPublishTask = new PublishTask(\"defaultPublishTask\", PublishTaskArgs.builder()\n .bizType(\"faq\")\n .agentKey(default_.agents()[0].agentKey())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultPublishTask:\n type: alicloud:chatbot:PublishTask\n name: default\n properties:\n bizType: faq\n agentKey: ${default.agents[0].agentKey}\nvariables:\n default:\n fn::invoke:\n function: alicloud:chatbot:getAgents\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nChatbot Publish Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:chatbot/publishTask:PublishTask example \u003cid\u003e\n```\n\n",
"properties": {
"agentKey": {
"type": "string",
@@ -119068,7 +120933,7 @@
}
},
"alicloud:clickhouse/account:Account": {
- "description": "Provides a Click House Account resource.\n\nFor information about Click House Account and how to use it, see [What is Account](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createaccount).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst type = config.get(\"type\") || \"Normal\";\nconst _default = alicloud.clickhouse.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.regions?.[0]?.zoneIds?.[1]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"22.8.5.29\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"500\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n});\nconst defaultAccount = new alicloud.clickhouse.Account(\"default\", {\n dbClusterId: defaultDbCluster.id,\n accountDescription: \"tf-example-description\",\n accountName: \"examplename\",\n accountPassword: \"Example1234\",\n type: type,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ntype = config.get(\"type\")\nif type is None:\n type = \"Normal\"\ndefault = alicloud.clickhouse.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.regions[0].zone_ids[1].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"22.8.5.29\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"500\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id)\ndefault_account = alicloud.clickhouse.Account(\"default\",\n db_cluster_id=default_db_cluster.id,\n account_description=\"tf-example-description\",\n account_name=\"examplename\",\n account_password=\"Example1234\",\n type=type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var type = config.Get(\"type\") ?? \"Normal\";\n var @default = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[1]?.ZoneId)),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"22.8.5.29\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"500\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultAccount = new AliCloud.ClickHouse.Account(\"default\", new()\n {\n DbClusterId = defaultDbCluster.Id,\n AccountDescription = \"tf-example-description\",\n AccountName = \"examplename\",\n AccountPassword = \"Example1234\",\n Type = type,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_type := \"Normal\"\n\t\tif param := cfg.Get(\"type\"); param != \"\" {\n\t\t\t_type = param\n\t\t}\n\t\t_default, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Regions[0].ZoneIds[1].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDbCluster, err := clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"22.8.5.29\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"500\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewAccount(ctx, \"default\", \u0026clickhouse.AccountArgs{\n\t\t\tDbClusterId: defaultDbCluster.ID(),\n\t\t\tAccountDescription: pulumi.String(\"tf-example-description\"),\n\t\t\tAccountName: pulumi.String(\"examplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example1234\"),\n\t\t\tType: pulumi.String(_type),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport com.pulumi.alicloud.clickhouse.Account;\nimport com.pulumi.alicloud.clickhouse.AccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var type = config.get(\"type\").orElse(\"Normal\");\n final var default = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.regions()[0].zoneIds()[1].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"22.8.5.29\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"500\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbClusterId(defaultDbCluster.id())\n .accountDescription(\"tf-example-description\")\n .accountName(\"examplename\")\n .accountPassword(\"Example1234\")\n .type(type)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n type:\n type: string\n default: Normal\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.regions[0].zoneIds[1].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: 22.8.5.29\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '500'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n defaultAccount:\n type: alicloud:clickhouse:Account\n name: default\n properties:\n dbClusterId: ${defaultDbCluster.id}\n accountDescription: tf-example-description\n accountName: examplename\n accountPassword: Example1234\n type: ${type}\nvariables:\n default:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/account:Account example \u003cdb_cluster_id\u003e:\u003caccount_name\u003e\n```\n\n",
+ "description": "Provides a Click House Account resource.\n\nFor information about Click House Account and how to use it, see [What is Account](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createaccount).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst type = config.get(\"type\") || \"Normal\";\nconst _default = alicloud.clickhouse.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.regions?.[0]?.zoneIds?.[1]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"22.8.5.29\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"500\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n});\nconst defaultAccount = new alicloud.clickhouse.Account(\"default\", {\n dbClusterId: defaultDbCluster.id,\n accountDescription: \"tf-example-description\",\n accountName: \"examplename\",\n accountPassword: \"Example1234\",\n type: type,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ntype = config.get(\"type\")\nif type is None:\n type = \"Normal\"\ndefault = alicloud.clickhouse.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.regions[0].zone_ids[1].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"22.8.5.29\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"500\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id)\ndefault_account = alicloud.clickhouse.Account(\"default\",\n db_cluster_id=default_db_cluster.id,\n account_description=\"tf-example-description\",\n account_name=\"examplename\",\n account_password=\"Example1234\",\n type=type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var type = config.Get(\"type\") ?? \"Normal\";\n var @default = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[1]?.ZoneId)),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"22.8.5.29\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"500\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultAccount = new AliCloud.ClickHouse.Account(\"default\", new()\n {\n DbClusterId = defaultDbCluster.Id,\n AccountDescription = \"tf-example-description\",\n AccountName = \"examplename\",\n AccountPassword = \"Example1234\",\n Type = type,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_type := \"Normal\"\n\t\tif param := cfg.Get(\"type\"); param != \"\" {\n\t\t\t_type = param\n\t\t}\n\t\t_default, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Regions[0].ZoneIds[1].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDbCluster, err := clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"22.8.5.29\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"500\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewAccount(ctx, \"default\", \u0026clickhouse.AccountArgs{\n\t\t\tDbClusterId: defaultDbCluster.ID(),\n\t\t\tAccountDescription: pulumi.String(\"tf-example-description\"),\n\t\t\tAccountName: pulumi.String(\"examplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example1234\"),\n\t\t\tType: pulumi.String(_type),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport com.pulumi.alicloud.clickhouse.Account;\nimport com.pulumi.alicloud.clickhouse.AccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var type = config.get(\"type\").orElse(\"Normal\");\n final var default = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.regions()[0].zoneIds()[1].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"22.8.5.29\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"500\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbClusterId(defaultDbCluster.id())\n .accountDescription(\"tf-example-description\")\n .accountName(\"examplename\")\n .accountPassword(\"Example1234\")\n .type(type)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n type:\n type: string\n default: Normal\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.regions[0].zoneIds[1].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: 22.8.5.29\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '500'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n defaultAccount:\n type: alicloud:clickhouse:Account\n name: default\n properties:\n dbClusterId: ${defaultDbCluster.id}\n accountDescription: tf-example-description\n accountName: examplename\n accountPassword: Example1234\n type: ${type}\nvariables:\n default:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/account:Account example \u003cdb_cluster_id\u003e:\u003caccount_name\u003e\n```\n\n",
"properties": {
"accountDescription": {
"type": "string",
@@ -119250,7 +121115,7 @@
}
},
"alicloud:clickhouse/backupPolicy:BackupPolicy": {
- "description": "Provides a Click House Backup Policy resource.\n\nFor information about Click House Backup Policy and how to use it, see [What is Backup Policy](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createbackuppolicy).\n\n\u003e **NOTE:** Available since v1.147.0.\n\n\u003e **NOTE:** Only the cloud database ClickHouse cluster version `20.3` supports data backup.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.clickhouse.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.regions?.[0]?.zoneIds?.[1]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"22.8.5.29\",\n status: \"Running\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"500\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n});\nconst defaultBackupPolicy = new alicloud.clickhouse.BackupPolicy(\"default\", {\n dbClusterId: defaultDbCluster.id,\n preferredBackupPeriods: [\n \"Monday\",\n \"Friday\",\n ],\n preferredBackupTime: \"00:00Z-01:00Z\",\n backupRetentionPeriod: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.clickhouse.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.regions[0].zone_ids[1].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"22.8.5.29\",\n status=\"Running\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"500\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id)\ndefault_backup_policy = alicloud.clickhouse.BackupPolicy(\"default\",\n db_cluster_id=default_db_cluster.id,\n preferred_backup_periods=[\n \"Monday\",\n \"Friday\",\n ],\n preferred_backup_time=\"00:00Z-01:00Z\",\n backup_retention_period=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[1]?.ZoneId)),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"22.8.5.29\",\n Status = \"Running\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"500\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultBackupPolicy = new AliCloud.ClickHouse.BackupPolicy(\"default\", new()\n {\n DbClusterId = defaultDbCluster.Id,\n PreferredBackupPeriods = new[]\n {\n \"Monday\",\n \"Friday\",\n },\n PreferredBackupTime = \"00:00Z-01:00Z\",\n BackupRetentionPeriod = 7,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Regions[0].ZoneIds[1].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDbCluster, err := clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"22.8.5.29\"),\n\t\t\tStatus: pulumi.String(\"Running\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"500\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewBackupPolicy(ctx, \"default\", \u0026clickhouse.BackupPolicyArgs{\n\t\t\tDbClusterId: defaultDbCluster.ID(),\n\t\t\tPreferredBackupPeriods: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Monday\"),\n\t\t\t\tpulumi.String(\"Friday\"),\n\t\t\t},\n\t\t\tPreferredBackupTime: pulumi.String(\"00:00Z-01:00Z\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport com.pulumi.alicloud.clickhouse.BackupPolicy;\nimport com.pulumi.alicloud.clickhouse.BackupPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.regions()[0].zoneIds()[1].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"22.8.5.29\")\n .status(\"Running\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"500\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultBackupPolicy = new BackupPolicy(\"defaultBackupPolicy\", BackupPolicyArgs.builder()\n .dbClusterId(defaultDbCluster.id())\n .preferredBackupPeriods( \n \"Monday\",\n \"Friday\")\n .preferredBackupTime(\"00:00Z-01:00Z\")\n .backupRetentionPeriod(7)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.regions[0].zoneIds[1].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: 22.8.5.29\n status: Running\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '500'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n defaultBackupPolicy:\n type: alicloud:clickhouse:BackupPolicy\n name: default\n properties:\n dbClusterId: ${defaultDbCluster.id}\n preferredBackupPeriods:\n - Monday\n - Friday\n preferredBackupTime: 00:00Z-01:00Z\n backupRetentionPeriod: 7\nvariables:\n default:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Backup Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/backupPolicy:BackupPolicy example \u003cdb_cluster_id\u003e\n```\n\n",
+ "description": "Provides a Click House Backup Policy resource.\n\nFor information about Click House Backup Policy and how to use it, see [What is Backup Policy](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createbackuppolicy).\n\n\u003e **NOTE:** Available since v1.147.0.\n\n\u003e **NOTE:** Only the cloud database ClickHouse cluster version `20.3` supports data backup.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.clickhouse.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.regions?.[0]?.zoneIds?.[1]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"22.8.5.29\",\n status: \"Running\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"500\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n});\nconst defaultBackupPolicy = new alicloud.clickhouse.BackupPolicy(\"default\", {\n dbClusterId: defaultDbCluster.id,\n preferredBackupPeriods: [\n \"Monday\",\n \"Friday\",\n ],\n preferredBackupTime: \"00:00Z-01:00Z\",\n backupRetentionPeriod: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.clickhouse.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.regions[0].zone_ids[1].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"22.8.5.29\",\n status=\"Running\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"500\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id)\ndefault_backup_policy = alicloud.clickhouse.BackupPolicy(\"default\",\n db_cluster_id=default_db_cluster.id,\n preferred_backup_periods=[\n \"Monday\",\n \"Friday\",\n ],\n preferred_backup_time=\"00:00Z-01:00Z\",\n backup_retention_period=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[1]?.ZoneId)),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"22.8.5.29\",\n Status = \"Running\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"500\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultBackupPolicy = new AliCloud.ClickHouse.BackupPolicy(\"default\", new()\n {\n DbClusterId = defaultDbCluster.Id,\n PreferredBackupPeriods = new[]\n {\n \"Monday\",\n \"Friday\",\n },\n PreferredBackupTime = \"00:00Z-01:00Z\",\n BackupRetentionPeriod = 7,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Regions[0].ZoneIds[1].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDbCluster, err := clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"22.8.5.29\"),\n\t\t\tStatus: pulumi.String(\"Running\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"500\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewBackupPolicy(ctx, \"default\", \u0026clickhouse.BackupPolicyArgs{\n\t\t\tDbClusterId: defaultDbCluster.ID(),\n\t\t\tPreferredBackupPeriods: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Monday\"),\n\t\t\t\tpulumi.String(\"Friday\"),\n\t\t\t},\n\t\t\tPreferredBackupTime: pulumi.String(\"00:00Z-01:00Z\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport com.pulumi.alicloud.clickhouse.BackupPolicy;\nimport com.pulumi.alicloud.clickhouse.BackupPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.regions()[0].zoneIds()[1].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"22.8.5.29\")\n .status(\"Running\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"500\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultBackupPolicy = new BackupPolicy(\"defaultBackupPolicy\", BackupPolicyArgs.builder()\n .dbClusterId(defaultDbCluster.id())\n .preferredBackupPeriods( \n \"Monday\",\n \"Friday\")\n .preferredBackupTime(\"00:00Z-01:00Z\")\n .backupRetentionPeriod(7)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.regions[0].zoneIds[1].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: 22.8.5.29\n status: Running\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '500'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n defaultBackupPolicy:\n type: alicloud:clickhouse:BackupPolicy\n name: default\n properties:\n dbClusterId: ${defaultDbCluster.id}\n preferredBackupPeriods:\n - Monday\n - Friday\n preferredBackupTime: 00:00Z-01:00Z\n backupRetentionPeriod: 7\nvariables:\n default:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Backup Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/backupPolicy:BackupPolicy example \u003cdb_cluster_id\u003e\n```\n\n",
"properties": {
"backupRetentionPeriod": {
"type": "integer",
@@ -119341,7 +121206,7 @@
}
},
"alicloud:clickhouse/dbCluster:DbCluster": {
- "description": "Provides a Click House DBCluster resource.\n\nFor information about Click House DBCluster and how to use it, see [What is DBCluster](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createdbinstance).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetRegions = alicloud.clickhouse.getRegions({\n regionId: region,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zoneIds?.[0]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"23.8\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"100\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_regions = alicloud.clickhouse.get_regions(region_id=region)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_regions.regions[0].zone_ids[0].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"23.8\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"100\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id,\n resource_group_id=default.groups[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetRegions = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n RegionId = region,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[0]?.ZoneId),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"23.8\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"100\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(region),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].ZoneIds[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"23.8\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"100\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetRegions = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(region)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetRegions.regions()[0].zoneIds()[0].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"23.8\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"100\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region:\n type: string\n default: cn-hangzhou\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetRegions.regions[0].zoneIds[0].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: '23.8'\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '100'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n resourceGroupId: ${default.groups[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n regionId: ${region}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House DBCluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/dbCluster:DbCluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Click House DBCluster resource.\n\nFor information about Click House DBCluster and how to use it, see [What is DBCluster](https://www.alibabacloud.com/help/zh/clickhouse/latest/api-clickhouse-2019-11-11-createdbinstance).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetRegions = alicloud.clickhouse.getRegions({\n regionId: region,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zoneIds?.[0]?.zoneId),\n});\nconst defaultDbCluster = new alicloud.clickhouse.DbCluster(\"default\", {\n dbClusterVersion: \"23.8\",\n category: \"Basic\",\n dbClusterClass: \"S8\",\n dbClusterNetworkType: \"vpc\",\n dbNodeGroupCount: 1,\n paymentType: \"PayAsYouGo\",\n dbNodeStorage: \"100\",\n storageType: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_regions = alicloud.clickhouse.get_regions(region_id=region)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_regions.regions[0].zone_ids[0].zone_id)\ndefault_db_cluster = alicloud.clickhouse.DbCluster(\"default\",\n db_cluster_version=\"23.8\",\n category=\"Basic\",\n db_cluster_class=\"S8\",\n db_cluster_network_type=\"vpc\",\n db_node_group_count=1,\n payment_type=\"PayAsYouGo\",\n db_node_storage=\"100\",\n storage_type=\"cloud_essd\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id,\n resource_group_id=default.groups[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetRegions = AliCloud.ClickHouse.GetRegions.Invoke(new()\n {\n RegionId = region,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.ZoneIds[0]?.ZoneId),\n });\n\n var defaultDbCluster = new AliCloud.ClickHouse.DbCluster(\"default\", new()\n {\n DbClusterVersion = \"23.8\",\n Category = \"Basic\",\n DbClusterClass = \"S8\",\n DbClusterNetworkType = \"vpc\",\n DbNodeGroupCount = 1,\n PaymentType = \"PayAsYouGo\",\n DbNodeStorage = \"100\",\n StorageType = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouse\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := clickhouse.GetRegions(ctx, \u0026clickhouse.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(region),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].ZoneIds[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouse.NewDbCluster(ctx, \"default\", \u0026clickhouse.DbClusterArgs{\n\t\t\tDbClusterVersion: pulumi.String(\"23.8\"),\n\t\t\tCategory: pulumi.String(\"Basic\"),\n\t\t\tDbClusterClass: pulumi.String(\"S8\"),\n\t\t\tDbClusterNetworkType: pulumi.String(\"vpc\"),\n\t\t\tDbNodeGroupCount: pulumi.Int(1),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDbNodeStorage: pulumi.String(\"100\"),\n\t\t\tStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.clickhouse.ClickhouseFunctions;\nimport com.pulumi.alicloud.clickhouse.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouse.DbCluster;\nimport com.pulumi.alicloud.clickhouse.DbClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetRegions = ClickhouseFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(region)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetRegions.regions()[0].zoneIds()[0].zoneId())\n .build());\n\n var defaultDbCluster = new DbCluster(\"defaultDbCluster\", DbClusterArgs.builder()\n .dbClusterVersion(\"23.8\")\n .category(\"Basic\")\n .dbClusterClass(\"S8\")\n .dbClusterNetworkType(\"vpc\")\n .dbNodeGroupCount(1)\n .paymentType(\"PayAsYouGo\")\n .dbNodeStorage(\"100\")\n .storageType(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .resourceGroupId(default_.groups()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region:\n type: string\n default: cn-hangzhou\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetRegions.regions[0].zoneIds[0].zoneId}\n defaultDbCluster:\n type: alicloud:clickhouse:DbCluster\n name: default\n properties:\n dbClusterVersion: '23.8'\n category: Basic\n dbClusterClass: S8\n dbClusterNetworkType: vpc\n dbNodeGroupCount: '1'\n paymentType: PayAsYouGo\n dbNodeStorage: '100'\n storageType: cloud_essd\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n resourceGroupId: ${default.groups[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:clickhouse:getRegions\n arguments:\n regionId: ${region}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House DBCluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouse/dbCluster:DbCluster example \u003cid\u003e\n```\n\n",
"properties": {
"allocatePublicConnection": {
"type": "boolean",
@@ -119737,7 +121602,7 @@
}
},
"alicloud:clickhouseenterprisedbcluster/account:Account": {
- "description": "Provides a Click House Enterprise Db Cluster Account resource.\n\nClickhouse enterprise instance account.\n\nFor information about Click House Enterprise Db Cluster Account and how to use it, see [What is Enterprise Db Cluster Account](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateAccount).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultWrovOd = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.Account(\"default\", {\n account: \"abc\",\n description: \"example_desc\",\n dbInstanceId: defaultWrovOd.id,\n accountType: \"NormalAccount\",\n password: \"abc123456!\",\n dmlAuthSetting: {\n dmlAuthority: 0,\n ddlAuthority: true,\n allowDictionaries: [\"*\"],\n allowDatabases: [\"*\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefault_wrov_od = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.Account(\"default\",\n account=\"abc\",\n description=\"example_desc\",\n db_instance_id=default_wrov_od.id,\n account_type=\"NormalAccount\",\n password=\"abc123456!\",\n dml_auth_setting={\n \"dml_authority\": 0,\n \"ddl_authority\": True,\n \"allow_dictionaries\": [\"*\"],\n \"allow_databases\": [\"*\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultWrovOd = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.Account(\"default\", new()\n {\n AccountValue = \"abc\",\n Description = \"example_desc\",\n DbInstanceId = defaultWrovOd.Id,\n AccountType = \"NormalAccount\",\n Password = \"abc123456!\",\n DmlAuthSetting = new AliCloud.clickHouseEnterpriseDbCluster.Inputs.AccountDmlAuthSettingArgs\n {\n DmlAuthority = 0,\n DdlAuthority = true,\n AllowDictionaries = new[]\n {\n \"*\",\n },\n AllowDatabases = new[]\n {\n \"*\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultWrovOd, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultWrovOd\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewAccount(ctx, \"default\", \u0026clickhouseenterprisedbcluster.AccountArgs{\n\t\t\tAccount: pulumi.String(\"abc\"),\n\t\t\tDescription: pulumi.String(\"example_desc\"),\n\t\t\tDbInstanceId: defaultWrovOd.ID(),\n\t\t\tAccountType: pulumi.String(\"NormalAccount\"),\n\t\t\tPassword: pulumi.String(\"abc123456!\"),\n\t\t\tDmlAuthSetting: \u0026clickhouseenterprisedbcluster.AccountDmlAuthSettingArgs{\n\t\t\t\tDmlAuthority: pulumi.Int(0),\n\t\t\t\tDdlAuthority: pulumi.Bool(true),\n\t\t\t\tAllowDictionaries: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t},\n\t\t\t\tAllowDatabases: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.Account;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.AccountArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.inputs.AccountDmlAuthSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultWrovOd = new ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new Account(\"default\", AccountArgs.builder()\n .account(\"abc\")\n .description(\"example_desc\")\n .dbInstanceId(defaultWrovOd.id())\n .accountType(\"NormalAccount\")\n .password(\"abc123456!\")\n .dmlAuthSetting(AccountDmlAuthSettingArgs.builder()\n .dmlAuthority(0)\n .ddlAuthority(true)\n .allowDictionaries(\"*\")\n .allowDatabases(\"*\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultWrovOd:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:Account\n properties:\n account: abc\n description: example_desc\n dbInstanceId: ${defaultWrovOd.id}\n accountType: NormalAccount\n password: abc123456!\n dmlAuthSetting:\n dmlAuthority: '0'\n ddlAuthority: true\n allowDictionaries:\n - '*'\n allowDatabases:\n - '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Enterprise Db Cluster Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/account:Account example \u003cdb_instance_id\u003e:\u003caccount\u003e\n```\n\n",
+ "description": "Provides a Click House Enterprise Db Cluster Account resource.\n\nClickhouse enterprise instance account.\n\nFor information about Click House Enterprise Db Cluster Account and how to use it, see [What is Enterprise Db Cluster Account](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateAccount).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultWrovOd = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.Account(\"default\", {\n account: \"abc\",\n description: \"example_desc\",\n dbInstanceId: defaultWrovOd.id,\n accountType: \"NormalAccount\",\n password: \"abc123456!\",\n dmlAuthSetting: {\n dmlAuthority: 0,\n ddlAuthority: true,\n allowDictionaries: [\"*\"],\n allowDatabases: [\"*\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefault_wrov_od = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.Account(\"default\",\n account=\"abc\",\n description=\"example_desc\",\n db_instance_id=default_wrov_od.id,\n account_type=\"NormalAccount\",\n password=\"abc123456!\",\n dml_auth_setting={\n \"dml_authority\": 0,\n \"ddl_authority\": True,\n \"allow_dictionaries\": [\"*\"],\n \"allow_databases\": [\"*\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultWrovOd = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.Account(\"default\", new()\n {\n AccountValue = \"abc\",\n Description = \"example_desc\",\n DbInstanceId = defaultWrovOd.Id,\n AccountType = \"NormalAccount\",\n Password = \"abc123456!\",\n DmlAuthSetting = new AliCloud.clickHouseEnterpriseDbCluster.Inputs.AccountDmlAuthSettingArgs\n {\n DmlAuthority = 0,\n DdlAuthority = true,\n AllowDictionaries = new[]\n {\n \"*\",\n },\n AllowDatabases = new[]\n {\n \"*\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultWrovOd, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultWrovOd\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewAccount(ctx, \"default\", \u0026clickhouseenterprisedbcluster.AccountArgs{\n\t\t\tAccount: pulumi.String(\"abc\"),\n\t\t\tDescription: pulumi.String(\"example_desc\"),\n\t\t\tDbInstanceId: defaultWrovOd.ID(),\n\t\t\tAccountType: pulumi.String(\"NormalAccount\"),\n\t\t\tPassword: pulumi.String(\"abc123456!\"),\n\t\t\tDmlAuthSetting: \u0026clickhouseenterprisedbcluster.AccountDmlAuthSettingArgs{\n\t\t\t\tDmlAuthority: pulumi.Int(0),\n\t\t\t\tDdlAuthority: pulumi.Bool(true),\n\t\t\t\tAllowDictionaries: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t},\n\t\t\t\tAllowDatabases: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.Account;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.AccountArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.inputs.AccountDmlAuthSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultWrovOd = new ClickHouseEnterpriseDbCluster(\"defaultWrovOd\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new Account(\"default\", AccountArgs.builder()\n .account(\"abc\")\n .description(\"example_desc\")\n .dbInstanceId(defaultWrovOd.id())\n .accountType(\"NormalAccount\")\n .password(\"abc123456!\")\n .dmlAuthSetting(AccountDmlAuthSettingArgs.builder()\n .dmlAuthority(0)\n .ddlAuthority(true)\n .allowDictionaries(\"*\")\n .allowDatabases(\"*\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultWrovOd:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:Account\n properties:\n account: abc\n description: example_desc\n dbInstanceId: ${defaultWrovOd.id}\n accountType: NormalAccount\n password: abc123456!\n dmlAuthSetting:\n dmlAuthority: '0'\n ddlAuthority: true\n allowDictionaries:\n - '*'\n allowDatabases:\n - '*'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Enterprise Db Cluster Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/account:Account example \u003cdb_instance_id\u003e:\u003caccount\u003e\n```\n\n",
"properties": {
"account": {
"type": "string",
@@ -119858,7 +121723,7 @@
}
},
"alicloud:clickhouseenterprisedbcluster/backupPolicy:BackupPolicy": {
- "description": "Provides a Click House Enterprise Db Cluster Backup Policy resource.\n\nEnterprise ClickHouse instance backup policy.\n\nFor information about Click House Enterprise Db Cluster Backup Policy and how to use it, see [What is Enterprise Db Cluster Backup Policy](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateBackupPolicy).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst default1tTLwe = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.BackupPolicy(\"default\", {\n preferredBackupPeriod: \"Monday\",\n preferredBackupTime: \"04:00Z-05:00Z\",\n backupRetentionPeriod: 7,\n dbInstanceId: default1tTLwe.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefault1t_t_lwe = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.BackupPolicy(\"default\",\n preferred_backup_period=\"Monday\",\n preferred_backup_time=\"04:00Z-05:00Z\",\n backup_retention_period=7,\n db_instance_id=default1t_t_lwe.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var default1tTLwe = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.BackupPolicy(\"default\", new()\n {\n PreferredBackupPeriod = \"Monday\",\n PreferredBackupTime = \"04:00Z-05:00Z\",\n BackupRetentionPeriod = 7,\n DbInstanceId = default1tTLwe.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault1tTLwe, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"default1tTLwe\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewBackupPolicy(ctx, \"default\", \u0026clickhouseenterprisedbcluster.BackupPolicyArgs{\n\t\t\tPreferredBackupPeriod: pulumi.String(\"Monday\"),\n\t\t\tPreferredBackupTime: pulumi.String(\"04:00Z-05:00Z\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(7),\n\t\t\tDbInstanceId: default1tTLwe.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.BackupPolicy;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.BackupPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var default1tTLwe = new ClickHouseEnterpriseDbCluster(\"default1tTLwe\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new BackupPolicy(\"default\", BackupPolicyArgs.builder()\n .preferredBackupPeriod(\"Monday\")\n .preferredBackupTime(\"04:00Z-05:00Z\")\n .backupRetentionPeriod(7)\n .dbInstanceId(default1tTLwe.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n default1tTLwe:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:BackupPolicy\n properties:\n preferredBackupPeriod: Monday\n preferredBackupTime: 04:00Z-05:00Z\n backupRetentionPeriod: '7'\n dbInstanceId: ${default1tTLwe.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Enterprise Db Cluster Backup Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/backupPolicy:BackupPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Click House Enterprise Db Cluster Backup Policy resource.\n\nEnterprise ClickHouse instance backup policy.\n\nFor information about Click House Enterprise Db Cluster Backup Policy and how to use it, see [What is Enterprise Db Cluster Backup Policy](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateBackupPolicy).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst default1tTLwe = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.BackupPolicy(\"default\", {\n preferredBackupPeriod: \"Monday\",\n preferredBackupTime: \"04:00Z-05:00Z\",\n backupRetentionPeriod: 7,\n dbInstanceId: default1tTLwe.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefault1t_t_lwe = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.BackupPolicy(\"default\",\n preferred_backup_period=\"Monday\",\n preferred_backup_time=\"04:00Z-05:00Z\",\n backup_retention_period=7,\n db_instance_id=default1t_t_lwe.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var default1tTLwe = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"default1tTLwe\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.BackupPolicy(\"default\", new()\n {\n PreferredBackupPeriod = \"Monday\",\n PreferredBackupTime = \"04:00Z-05:00Z\",\n BackupRetentionPeriod = 7,\n DbInstanceId = default1tTLwe.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault1tTLwe, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"default1tTLwe\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewBackupPolicy(ctx, \"default\", \u0026clickhouseenterprisedbcluster.BackupPolicyArgs{\n\t\t\tPreferredBackupPeriod: pulumi.String(\"Monday\"),\n\t\t\tPreferredBackupTime: pulumi.String(\"04:00Z-05:00Z\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(7),\n\t\t\tDbInstanceId: default1tTLwe.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.BackupPolicy;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.BackupPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var default1tTLwe = new ClickHouseEnterpriseDbCluster(\"default1tTLwe\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new BackupPolicy(\"default\", BackupPolicyArgs.builder()\n .preferredBackupPeriod(\"Monday\")\n .preferredBackupTime(\"04:00Z-05:00Z\")\n .backupRetentionPeriod(7)\n .dbInstanceId(default1tTLwe.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n default1tTLwe:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:BackupPolicy\n properties:\n preferredBackupPeriod: Monday\n preferredBackupTime: 04:00Z-05:00Z\n backupRetentionPeriod: '7'\n dbInstanceId: ${default1tTLwe.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Enterprise Db Cluster Backup Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/backupPolicy:BackupPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"backupRetentionPeriod": {
"type": "integer",
@@ -119933,7 +121798,7 @@
}
},
"alicloud:clickhouseenterprisedbcluster/clickHouseEnterpriseDbCluster:ClickHouseEnterpriseDbCluster": {
- "description": "Provides a Click House Enterprise D B Cluster resource.\n\nEnterprise Edition Cluster Resources.\n\nFor information about Click House Enterprise D B Cluster and how to use it, see [What is Enterprise D B Cluster](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateDBInstance).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst vswIpRangeK = config.get(\"vswIpRangeK\") || \"172.16.3.0/24\";\nconst vswIpRangeL = config.get(\"vswIpRangeL\") || \"172.16.2.0/24\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst zoneIdL = config.get(\"zoneIdL\") || \"cn-beijing-l\";\nconst zoneIdK = config.get(\"zoneIdK\") || \"cn-beijing-k\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultylyLu8 = new alicloud.vpc.Switch(\"defaultylyLu8\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdL,\n cidrBlock: vswIpRangeL,\n});\nconst defaultRNbPh8 = new alicloud.vpc.Switch(\"defaultRNbPh8\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdK,\n cidrBlock: vswIpRangeK,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n multiZones: [\n {\n vswitchIds: [defaultTQWN3k.id],\n zoneId: zoneIdI,\n },\n {\n vswitchIds: [defaultylyLu8.id],\n zoneId: zoneIdL,\n },\n {\n vswitchIds: [defaultRNbPh8.id],\n zoneId: zoneIdK,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nvsw_ip_range_k = config.get(\"vswIpRangeK\")\nif vsw_ip_range_k is None:\n vsw_ip_range_k = \"172.16.3.0/24\"\nvsw_ip_range_l = config.get(\"vswIpRangeL\")\nif vsw_ip_range_l is None:\n vsw_ip_range_l = \"172.16.2.0/24\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\nzone_id_l = config.get(\"zoneIdL\")\nif zone_id_l is None:\n zone_id_l = \"cn-beijing-l\"\nzone_id_k = config.get(\"zoneIdK\")\nif zone_id_k is None:\n zone_id_k = \"cn-beijing-k\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultyly_lu8 = alicloud.vpc.Switch(\"defaultylyLu8\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_l,\n cidr_block=vsw_ip_range_l)\ndefault_r_nb_ph8 = alicloud.vpc.Switch(\"defaultRNbPh8\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_k,\n cidr_block=vsw_ip_range_k)\ndefault = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id,\n multi_zones=[\n {\n \"vswitch_ids\": [default_tqwn3k.id],\n \"zone_id\": zone_id_i,\n },\n {\n \"vswitch_ids\": [defaultyly_lu8.id],\n \"zone_id\": zone_id_l,\n },\n {\n \"vswitch_ids\": [default_r_nb_ph8.id],\n \"zone_id\": zone_id_k,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var vswIpRangeK = config.Get(\"vswIpRangeK\") ?? \"172.16.3.0/24\";\n var vswIpRangeL = config.Get(\"vswIpRangeL\") ?? \"172.16.2.0/24\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var zoneIdL = config.Get(\"zoneIdL\") ?? \"cn-beijing-l\";\n var zoneIdK = config.Get(\"zoneIdK\") ?? \"cn-beijing-k\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultylyLu8 = new AliCloud.Vpc.Switch(\"defaultylyLu8\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdL,\n CidrBlock = vswIpRangeL,\n });\n\n var defaultRNbPh8 = new AliCloud.Vpc.Switch(\"defaultRNbPh8\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdK,\n CidrBlock = vswIpRangeK,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"default\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n MultiZones = new[]\n {\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultTQWN3k.Id,\n },\n ZoneId = zoneIdI,\n },\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultylyLu8.Id,\n },\n ZoneId = zoneIdL,\n },\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultRNbPh8.Id,\n },\n ZoneId = zoneIdK,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tvswIpRangeK := \"172.16.3.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeK\"); param != \"\" {\n\t\t\tvswIpRangeK = param\n\t\t}\n\t\tvswIpRangeL := \"172.16.2.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeL\"); param != \"\" {\n\t\t\tvswIpRangeL = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tzoneIdL := \"cn-beijing-l\"\n\t\tif param := cfg.Get(\"zoneIdL\"); param != \"\" {\n\t\t\tzoneIdL = param\n\t\t}\n\t\tzoneIdK := \"cn-beijing-k\"\n\t\tif param := cfg.Get(\"zoneIdK\"); param != \"\" {\n\t\t\tzoneIdK = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultylyLu8, err := vpc.NewSwitch(ctx, \"defaultylyLu8\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdL),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeL),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRNbPh8, err := vpc.NewSwitch(ctx, \"defaultRNbPh8\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdK),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeK),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"default\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t\tMultiZones: clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArray{\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultTQWN3k.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\t\t},\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultylyLu8.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdL),\n\t\t\t\t},\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultRNbPh8.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdK),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var vswIpRangeK = config.get(\"vswIpRangeK\").orElse(\"172.16.3.0/24\");\n final var vswIpRangeL = config.get(\"vswIpRangeL\").orElse(\"172.16.2.0/24\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n final var zoneIdL = config.get(\"zoneIdL\").orElse(\"cn-beijing-l\");\n final var zoneIdK = config.get(\"zoneIdK\").orElse(\"cn-beijing-k\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultylyLu8 = new Switch(\"defaultylyLu8\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdL)\n .cidrBlock(vswIpRangeL)\n .build());\n\n var defaultRNbPh8 = new Switch(\"defaultRNbPh8\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdK)\n .cidrBlock(vswIpRangeK)\n .build());\n\n var default_ = new ClickHouseEnterpriseDbCluster(\"default\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .multiZones( \n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultTQWN3k.id())\n .zoneId(zoneIdI)\n .build(),\n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultylyLu8.id())\n .zoneId(zoneIdL)\n .build(),\n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultRNbPh8.id())\n .zoneId(zoneIdK)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n regionId:\n type: string\n default: cn-beijing\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n vswIpRangeK:\n type: string\n default: 172.16.3.0/24\n vswIpRangeL:\n type: string\n default: 172.16.2.0/24\n zoneIdI:\n type: string\n default: cn-beijing-i\n zoneIdL:\n type: string\n default: cn-beijing-l\n zoneIdK:\n type: string\n default: cn-beijing-k\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultylyLu8:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdL}\n cidrBlock: ${vswIpRangeL}\n defaultRNbPh8:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdK}\n cidrBlock: ${vswIpRangeK}\n default:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n multiZones:\n - vswitchIds:\n - ${defaultTQWN3k.id}\n zoneId: ${zoneIdI}\n - vswitchIds:\n - ${defaultylyLu8.id}\n zoneId: ${zoneIdL}\n - vswitchIds:\n - ${defaultRNbPh8.id}\n zoneId: ${zoneIdK}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Enterprise D B Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/clickHouseEnterpriseDbCluster:ClickHouseEnterpriseDbCluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Click House Enterprise D B Cluster resource.\n\nEnterprise Edition Cluster Resources.\n\nFor information about Click House Enterprise D B Cluster and how to use it, see [What is Enterprise D B Cluster](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateDBInstance).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst vswIpRangeK = config.get(\"vswIpRangeK\") || \"172.16.3.0/24\";\nconst vswIpRangeL = config.get(\"vswIpRangeL\") || \"172.16.2.0/24\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst zoneIdL = config.get(\"zoneIdL\") || \"cn-beijing-l\";\nconst zoneIdK = config.get(\"zoneIdK\") || \"cn-beijing-k\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultylyLu8 = new alicloud.vpc.Switch(\"defaultylyLu8\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdL,\n cidrBlock: vswIpRangeL,\n});\nconst defaultRNbPh8 = new alicloud.vpc.Switch(\"defaultRNbPh8\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdK,\n cidrBlock: vswIpRangeK,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n multiZones: [\n {\n vswitchIds: [defaultTQWN3k.id],\n zoneId: zoneIdI,\n },\n {\n vswitchIds: [defaultylyLu8.id],\n zoneId: zoneIdL,\n },\n {\n vswitchIds: [defaultRNbPh8.id],\n zoneId: zoneIdK,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nvsw_ip_range_k = config.get(\"vswIpRangeK\")\nif vsw_ip_range_k is None:\n vsw_ip_range_k = \"172.16.3.0/24\"\nvsw_ip_range_l = config.get(\"vswIpRangeL\")\nif vsw_ip_range_l is None:\n vsw_ip_range_l = \"172.16.2.0/24\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\nzone_id_l = config.get(\"zoneIdL\")\nif zone_id_l is None:\n zone_id_l = \"cn-beijing-l\"\nzone_id_k = config.get(\"zoneIdK\")\nif zone_id_k is None:\n zone_id_k = \"cn-beijing-k\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultyly_lu8 = alicloud.vpc.Switch(\"defaultylyLu8\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_l,\n cidr_block=vsw_ip_range_l)\ndefault_r_nb_ph8 = alicloud.vpc.Switch(\"defaultRNbPh8\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_k,\n cidr_block=vsw_ip_range_k)\ndefault = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"default\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id,\n multi_zones=[\n {\n \"vswitch_ids\": [default_tqwn3k.id],\n \"zone_id\": zone_id_i,\n },\n {\n \"vswitch_ids\": [defaultyly_lu8.id],\n \"zone_id\": zone_id_l,\n },\n {\n \"vswitch_ids\": [default_r_nb_ph8.id],\n \"zone_id\": zone_id_k,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var vswIpRangeK = config.Get(\"vswIpRangeK\") ?? \"172.16.3.0/24\";\n var vswIpRangeL = config.Get(\"vswIpRangeL\") ?? \"172.16.2.0/24\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var zoneIdL = config.Get(\"zoneIdL\") ?? \"cn-beijing-l\";\n var zoneIdK = config.Get(\"zoneIdK\") ?? \"cn-beijing-k\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultylyLu8 = new AliCloud.Vpc.Switch(\"defaultylyLu8\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdL,\n CidrBlock = vswIpRangeL,\n });\n\n var defaultRNbPh8 = new AliCloud.Vpc.Switch(\"defaultRNbPh8\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdK,\n CidrBlock = vswIpRangeK,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"default\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n MultiZones = new[]\n {\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultTQWN3k.Id,\n },\n ZoneId = zoneIdI,\n },\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultylyLu8.Id,\n },\n ZoneId = zoneIdL,\n },\n new AliCloud.clickHouseEnterpriseDbCluster.Inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs\n {\n VswitchIds = new[]\n {\n defaultRNbPh8.Id,\n },\n ZoneId = zoneIdK,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tvswIpRangeK := \"172.16.3.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeK\"); param != \"\" {\n\t\t\tvswIpRangeK = param\n\t\t}\n\t\tvswIpRangeL := \"172.16.2.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeL\"); param != \"\" {\n\t\t\tvswIpRangeL = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tzoneIdL := \"cn-beijing-l\"\n\t\tif param := cfg.Get(\"zoneIdL\"); param != \"\" {\n\t\t\tzoneIdL = param\n\t\t}\n\t\tzoneIdK := \"cn-beijing-k\"\n\t\tif param := cfg.Get(\"zoneIdK\"); param != \"\" {\n\t\t\tzoneIdK = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultylyLu8, err := vpc.NewSwitch(ctx, \"defaultylyLu8\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdL),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeL),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRNbPh8, err := vpc.NewSwitch(ctx, \"defaultRNbPh8\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdK),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeK),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"default\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t\tMultiZones: clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArray{\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultTQWN3k.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\t\t},\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultylyLu8.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdL),\n\t\t\t\t},\n\t\t\t\t\u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterMultiZoneArgs{\n\t\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\t\tdefaultRNbPh8.ID(),\n\t\t\t\t\t},\n\t\t\t\t\tZoneId: pulumi.String(zoneIdK),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.inputs.ClickHouseEnterpriseDbClusterMultiZoneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var vswIpRangeK = config.get(\"vswIpRangeK\").orElse(\"172.16.3.0/24\");\n final var vswIpRangeL = config.get(\"vswIpRangeL\").orElse(\"172.16.2.0/24\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n final var zoneIdL = config.get(\"zoneIdL\").orElse(\"cn-beijing-l\");\n final var zoneIdK = config.get(\"zoneIdK\").orElse(\"cn-beijing-k\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultylyLu8 = new Switch(\"defaultylyLu8\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdL)\n .cidrBlock(vswIpRangeL)\n .build());\n\n var defaultRNbPh8 = new Switch(\"defaultRNbPh8\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdK)\n .cidrBlock(vswIpRangeK)\n .build());\n\n var default_ = new ClickHouseEnterpriseDbCluster(\"default\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .multiZones( \n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultTQWN3k.id())\n .zoneId(zoneIdI)\n .build(),\n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultylyLu8.id())\n .zoneId(zoneIdL)\n .build(),\n ClickHouseEnterpriseDbClusterMultiZoneArgs.builder()\n .vswitchIds(defaultRNbPh8.id())\n .zoneId(zoneIdK)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n regionId:\n type: string\n default: cn-beijing\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n vswIpRangeK:\n type: string\n default: 172.16.3.0/24\n vswIpRangeL:\n type: string\n default: 172.16.2.0/24\n zoneIdI:\n type: string\n default: cn-beijing-i\n zoneIdL:\n type: string\n default: cn-beijing-l\n zoneIdK:\n type: string\n default: cn-beijing-k\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultylyLu8:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdL}\n cidrBlock: ${vswIpRangeL}\n defaultRNbPh8:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdK}\n cidrBlock: ${vswIpRangeK}\n default:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n multiZones:\n - vswitchIds:\n - ${defaultTQWN3k.id}\n zoneId: ${zoneIdI}\n - vswitchIds:\n - ${defaultylyLu8.id}\n zoneId: ${zoneIdL}\n - vswitchIds:\n - ${defaultRNbPh8.id}\n zoneId: ${zoneIdK}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Enterprise D B Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/clickHouseEnterpriseDbCluster:ClickHouseEnterpriseDbCluster example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -120065,7 +121930,7 @@
}
},
"alicloud:clickhouseenterprisedbcluster/publicEndpoint:PublicEndpoint": {
- "description": "Provides a Click House Enterprise Db Cluster Public Endpoint resource.\n\nClickHouse enterprise instance public network endpoint.\n\nFor information about Click House Enterprise Db Cluster Public Endpoint and how to use it, see [What is Enterprise Db Cluster Public Endpoint](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateEndpoint).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultaqnt22 = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.PublicEndpoint(\"default\", {\n dbInstanceId: defaultaqnt22.id,\n netType: \"Public\",\n connectionStringPrefix: defaultaqnt22.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultaqnt22 = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.PublicEndpoint(\"default\",\n db_instance_id=defaultaqnt22.id,\n net_type=\"Public\",\n connection_string_prefix=defaultaqnt22.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultaqnt22 = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.PublicEndpoint(\"default\", new()\n {\n DbInstanceId = defaultaqnt22.Id,\n NetType = \"Public\",\n ConnectionStringPrefix = defaultaqnt22.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultaqnt22, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultaqnt22\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewPublicEndpoint(ctx, \"default\", \u0026clickhouseenterprisedbcluster.PublicEndpointArgs{\n\t\t\tDbInstanceId: defaultaqnt22.ID(),\n\t\t\tNetType: pulumi.String(\"Public\"),\n\t\t\tConnectionStringPrefix: defaultaqnt22.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.PublicEndpoint;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.PublicEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultaqnt22 = new ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new PublicEndpoint(\"default\", PublicEndpointArgs.builder()\n .dbInstanceId(defaultaqnt22.id())\n .netType(\"Public\")\n .connectionStringPrefix(defaultaqnt22.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultaqnt22:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:PublicEndpoint\n properties:\n dbInstanceId: ${defaultaqnt22.id}\n netType: Public\n connectionStringPrefix: ${defaultaqnt22.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Enterprise Db Cluster Public Endpoint can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/publicEndpoint:PublicEndpoint example \u003cdb_instance_id\u003e:\u003cnet_type\u003e\n```\n\n",
+ "description": "Provides a Click House Enterprise Db Cluster Public Endpoint resource.\n\nClickHouse enterprise instance public network endpoint.\n\nFor information about Click House Enterprise Db Cluster Public Endpoint and how to use it, see [What is Enterprise Db Cluster Public Endpoint](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/CreateEndpoint).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultaqnt22 = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.PublicEndpoint(\"default\", {\n dbInstanceId: defaultaqnt22.id,\n netType: \"Public\",\n connectionStringPrefix: defaultaqnt22.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultaqnt22 = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.PublicEndpoint(\"default\",\n db_instance_id=defaultaqnt22.id,\n net_type=\"Public\",\n connection_string_prefix=defaultaqnt22.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultaqnt22 = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.PublicEndpoint(\"default\", new()\n {\n DbInstanceId = defaultaqnt22.Id,\n NetType = \"Public\",\n ConnectionStringPrefix = defaultaqnt22.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultaqnt22, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultaqnt22\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewPublicEndpoint(ctx, \"default\", \u0026clickhouseenterprisedbcluster.PublicEndpointArgs{\n\t\t\tDbInstanceId: defaultaqnt22.ID(),\n\t\t\tNetType: pulumi.String(\"Public\"),\n\t\t\tConnectionStringPrefix: defaultaqnt22.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.PublicEndpoint;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.PublicEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultaqnt22 = new ClickHouseEnterpriseDbCluster(\"defaultaqnt22\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new PublicEndpoint(\"default\", PublicEndpointArgs.builder()\n .dbInstanceId(defaultaqnt22.id())\n .netType(\"Public\")\n .connectionStringPrefix(defaultaqnt22.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultaqnt22:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:PublicEndpoint\n properties:\n dbInstanceId: ${defaultaqnt22.id}\n netType: Public\n connectionStringPrefix: ${defaultaqnt22.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Enterprise Db Cluster Public Endpoint can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/publicEndpoint:PublicEndpoint example \u003cdb_instance_id\u003e:\u003cnet_type\u003e\n```\n\n",
"properties": {
"connectionStringPrefix": {
"type": "string",
@@ -120128,7 +121993,7 @@
}
},
"alicloud:clickhouseenterprisedbcluster/securityIp:SecurityIp": {
- "description": "Provides a Click House Enterprise Db Cluster Security I P resource.\n\nEnterprise Clickhouse instance Security IP.\n\nFor information about Click House Enterprise Db Cluster Security I P and how to use it, see [What is Enterprise Db Cluster Security I P](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/ModifySecurityIPList).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultn0nVrN = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.SecurityIp(\"default\", {\n groupName: \"example_group\",\n securityIpList: \"127.0.0.2\",\n dbInstanceId: defaultn0nVrN.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultn0n_vr_n = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.SecurityIp(\"default\",\n group_name=\"example_group\",\n security_ip_list=\"127.0.0.2\",\n db_instance_id=defaultn0n_vr_n.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultn0nVrN = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.SecurityIp(\"default\", new()\n {\n GroupName = \"example_group\",\n SecurityIpList = \"127.0.0.2\",\n DbInstanceId = defaultn0nVrN.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultn0nVrN, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultn0nVrN\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewSecurityIp(ctx, \"default\", \u0026clickhouseenterprisedbcluster.SecurityIpArgs{\n\t\t\tGroupName: pulumi.String(\"example_group\"),\n\t\t\tSecurityIpList: pulumi.String(\"127.0.0.2\"),\n\t\t\tDbInstanceId: defaultn0nVrN.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.SecurityIp;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.SecurityIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultn0nVrN = new ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new SecurityIp(\"default\", SecurityIpArgs.builder()\n .groupName(\"example_group\")\n .securityIpList(\"127.0.0.2\")\n .dbInstanceId(defaultn0nVrN.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultn0nVrN:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:SecurityIp\n properties:\n groupName: example_group\n securityIpList: 127.0.0.2\n dbInstanceId: ${defaultn0nVrN.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nClick House Enterprise Db Cluster Security I P can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/securityIp:SecurityIp example \u003cdb_instance_id\u003e:\u003cgroup_name\u003e\n```\n\n",
+ "description": "Provides a Click House Enterprise Db Cluster Security I P resource.\n\nEnterprise Clickhouse instance Security IP.\n\nFor information about Click House Enterprise Db Cluster Security I P and how to use it, see [What is Enterprise Db Cluster Security I P](https://next.api.alibabacloud.com/document/clickhouse/2023-05-22/ModifySecurityIPList).\n\n\u003e **NOTE:** Available since v1.247.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-beijing\";\nconst vswIpRangeI = config.get(\"vswIpRangeI\") || \"172.16.1.0/24\";\nconst vpcIpRange = config.get(\"vpcIpRange\") || \"172.16.0.0/12\";\nconst zoneIdI = config.get(\"zoneIdI\") || \"cn-beijing-i\";\nconst defaultktKLuM = new alicloud.vpc.Network(\"defaultktKLuM\", {cidrBlock: vpcIpRange});\nconst defaultTQWN3k = new alicloud.vpc.Switch(\"defaultTQWN3k\", {\n vpcId: defaultktKLuM.id,\n zoneId: zoneIdI,\n cidrBlock: vswIpRangeI,\n});\nconst defaultn0nVrN = new alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", {\n zoneId: zoneIdI,\n vpcId: defaultktKLuM.id,\n scaleMin: \"8\",\n scaleMax: \"16\",\n vswitchId: defaultTQWN3k.id,\n});\nconst _default = new alicloud.clickhouseenterprisedbcluster.SecurityIp(\"default\", {\n groupName: \"example_group\",\n securityIpList: \"127.0.0.2\",\n dbInstanceId: defaultn0nVrN.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-beijing\"\nvsw_ip_range_i = config.get(\"vswIpRangeI\")\nif vsw_ip_range_i is None:\n vsw_ip_range_i = \"172.16.1.0/24\"\nvpc_ip_range = config.get(\"vpcIpRange\")\nif vpc_ip_range is None:\n vpc_ip_range = \"172.16.0.0/12\"\nzone_id_i = config.get(\"zoneIdI\")\nif zone_id_i is None:\n zone_id_i = \"cn-beijing-i\"\ndefaultkt_k_lu_m = alicloud.vpc.Network(\"defaultktKLuM\", cidr_block=vpc_ip_range)\ndefault_tqwn3k = alicloud.vpc.Switch(\"defaultTQWN3k\",\n vpc_id=defaultkt_k_lu_m.id,\n zone_id=zone_id_i,\n cidr_block=vsw_ip_range_i)\ndefaultn0n_vr_n = alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\",\n zone_id=zone_id_i,\n vpc_id=defaultkt_k_lu_m.id,\n scale_min=\"8\",\n scale_max=\"16\",\n vswitch_id=default_tqwn3k.id)\ndefault = alicloud.clickhouseenterprisedbcluster.SecurityIp(\"default\",\n group_name=\"example_group\",\n security_ip_list=\"127.0.0.2\",\n db_instance_id=defaultn0n_vr_n.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-beijing\";\n var vswIpRangeI = config.Get(\"vswIpRangeI\") ?? \"172.16.1.0/24\";\n var vpcIpRange = config.Get(\"vpcIpRange\") ?? \"172.16.0.0/12\";\n var zoneIdI = config.Get(\"zoneIdI\") ?? \"cn-beijing-i\";\n var defaultktKLuM = new AliCloud.Vpc.Network(\"defaultktKLuM\", new()\n {\n CidrBlock = vpcIpRange,\n });\n\n var defaultTQWN3k = new AliCloud.Vpc.Switch(\"defaultTQWN3k\", new()\n {\n VpcId = defaultktKLuM.Id,\n ZoneId = zoneIdI,\n CidrBlock = vswIpRangeI,\n });\n\n var defaultn0nVrN = new AliCloud.ClickHouseEnterpriseDbCluster.ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", new()\n {\n ZoneId = zoneIdI,\n VpcId = defaultktKLuM.Id,\n ScaleMin = \"8\",\n ScaleMax = \"16\",\n VswitchId = defaultTQWN3k.Id,\n });\n\n var @default = new AliCloud.ClickHouseEnterpriseDbCluster.SecurityIp(\"default\", new()\n {\n GroupName = \"example_group\",\n SecurityIpList = \"127.0.0.2\",\n DbInstanceId = defaultn0nVrN.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/clickhouseenterprisedbcluster\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-beijing\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tvswIpRangeI := \"172.16.1.0/24\"\n\t\tif param := cfg.Get(\"vswIpRangeI\"); param != \"\" {\n\t\t\tvswIpRangeI = param\n\t\t}\n\t\tvpcIpRange := \"172.16.0.0/12\"\n\t\tif param := cfg.Get(\"vpcIpRange\"); param != \"\" {\n\t\t\tvpcIpRange = param\n\t\t}\n\t\tzoneIdI := \"cn-beijing-i\"\n\t\tif param := cfg.Get(\"zoneIdI\"); param != \"\" {\n\t\t\tzoneIdI = param\n\t\t}\n\t\tdefaultktKLuM, err := vpc.NewNetwork(ctx, \"defaultktKLuM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(vpcIpRange),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultTQWN3k, err := vpc.NewSwitch(ctx, \"defaultTQWN3k\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tCidrBlock: pulumi.String(vswIpRangeI),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultn0nVrN, err := clickhouseenterprisedbcluster.NewClickHouseEnterpriseDbCluster(ctx, \"defaultn0nVrN\", \u0026clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs{\n\t\t\tZoneId: pulumi.String(zoneIdI),\n\t\t\tVpcId: defaultktKLuM.ID(),\n\t\t\tScaleMin: pulumi.String(\"8\"),\n\t\t\tScaleMax: pulumi.String(\"16\"),\n\t\t\tVswitchId: defaultTQWN3k.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = clickhouseenterprisedbcluster.NewSecurityIp(ctx, \"default\", \u0026clickhouseenterprisedbcluster.SecurityIpArgs{\n\t\t\tGroupName: pulumi.String(\"example_group\"),\n\t\t\tSecurityIpList: pulumi.String(\"127.0.0.2\"),\n\t\t\tDbInstanceId: defaultn0nVrN.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbCluster;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.ClickHouseEnterpriseDbClusterArgs;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.SecurityIp;\nimport com.pulumi.alicloud.clickhouseenterprisedbcluster.SecurityIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-beijing\");\n final var vswIpRangeI = config.get(\"vswIpRangeI\").orElse(\"172.16.1.0/24\");\n final var vpcIpRange = config.get(\"vpcIpRange\").orElse(\"172.16.0.0/12\");\n final var zoneIdI = config.get(\"zoneIdI\").orElse(\"cn-beijing-i\");\n var defaultktKLuM = new Network(\"defaultktKLuM\", NetworkArgs.builder()\n .cidrBlock(vpcIpRange)\n .build());\n\n var defaultTQWN3k = new Switch(\"defaultTQWN3k\", SwitchArgs.builder()\n .vpcId(defaultktKLuM.id())\n .zoneId(zoneIdI)\n .cidrBlock(vswIpRangeI)\n .build());\n\n var defaultn0nVrN = new ClickHouseEnterpriseDbCluster(\"defaultn0nVrN\", ClickHouseEnterpriseDbClusterArgs.builder()\n .zoneId(zoneIdI)\n .vpcId(defaultktKLuM.id())\n .scaleMin(\"8\")\n .scaleMax(\"16\")\n .vswitchId(defaultTQWN3k.id())\n .build());\n\n var default_ = new SecurityIp(\"default\", SecurityIpArgs.builder()\n .groupName(\"example_group\")\n .securityIpList(\"127.0.0.2\")\n .dbInstanceId(defaultn0nVrN.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-beijing\n vswIpRangeI:\n type: string\n default: 172.16.1.0/24\n vpcIpRange:\n type: string\n default: 172.16.0.0/12\n zoneIdI:\n type: string\n default: cn-beijing-i\nresources:\n defaultktKLuM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: ${vpcIpRange}\n defaultTQWN3k:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultktKLuM.id}\n zoneId: ${zoneIdI}\n cidrBlock: ${vswIpRangeI}\n defaultn0nVrN:\n type: alicloud:clickhouseenterprisedbcluster:ClickHouseEnterpriseDbCluster\n properties:\n zoneId: ${zoneIdI}\n vpcId: ${defaultktKLuM.id}\n scaleMin: '8'\n scaleMax: '16'\n vswitchId: ${defaultTQWN3k.id}\n default:\n type: alicloud:clickhouseenterprisedbcluster:SecurityIp\n properties:\n groupName: example_group\n securityIpList: 127.0.0.2\n dbInstanceId: ${defaultn0nVrN.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nClick House Enterprise Db Cluster Security I P can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:clickhouseenterprisedbcluster/securityIp:SecurityIp example \u003cdb_instance_id\u003e:\u003cgroup_name\u003e\n```\n\n",
"properties": {
"dbInstanceId": {
"type": "string",
@@ -120191,7 +122056,7 @@
}
},
"alicloud:cloudauth/faceConfig:FaceConfig": {
- "description": "Provides a Cloudauth Face Config resource.\n\nFor information about Cloudauth Face Config and how to use it, see [What is Face Config](https://help.aliyun.com/zh/id-verification/cloudauth/product-overview/end-of-integration-announcement-on-id-verification).\n\n\u003e **NOTE:** Available since v1.137.0.\n\n\u003e **NOTE:** In order to provide you with more perfect product capabilities, the real person certification service has stopped access, it is recommended that you use the upgraded version of the [real person certification financial real person certification service](https://help.aliyun.com/zh/id-verification/product-overview/what-is-id-verification-for-financial-services). Users that have access to real person authentication are not affected.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst example = new alicloud.cloudauth.FaceConfig(\"example\", {\n bizName: std.format({\n input: \"%s-biz\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n bizType: std.format({\n input: \"type-%s\",\n args: [_default.result],\n }).then(invoke =\u003e invoke.result),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nexample = alicloud.cloudauth.FaceConfig(\"example\",\n biz_name=std.format(input=\"%s-biz\",\n args=[name]).result,\n biz_type=std.format(input=\"type-%s\",\n args=[default[\"result\"]]).result)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var example = new AliCloud.CloudAuth.FaceConfig(\"example\", new()\n {\n BizName = Std.Format.Invoke(new()\n {\n Input = \"%s-biz\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n BizType = Std.Format.Invoke(new()\n {\n Input = \"type-%s\",\n Args = new[]\n {\n @default.Result,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudauth\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-biz\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"type-%s\",\n\t\t\tArgs: []interface{}{\n\t\t\t\t_default.Result,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudauth.NewFaceConfig(ctx, \"example\", \u0026cloudauth.FaceConfigArgs{\n\t\t\tBizName: pulumi.String(invokeFormat.Result),\n\t\t\tBizType: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudauth.FaceConfig;\nimport com.pulumi.alicloud.cloudauth.FaceConfigArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var example = new FaceConfig(\"example\", FaceConfigArgs.builder()\n .bizName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-biz\")\n .args(name)\n .build()).result())\n .bizType(StdFunctions.format(FormatArgs.builder()\n .input(\"type-%s\")\n .args(default_.result())\n .build()).result())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n example:\n type: alicloud:cloudauth:FaceConfig\n properties:\n bizName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-biz'\n args:\n - ${name}\n return: result\n bizType:\n fn::invoke:\n function: std:format\n arguments:\n input: type-%s\n args:\n - ${default.result}\n return: result\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloudauth Face Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudauth/faceConfig:FaceConfig example \u003clang\u003e\n```\n\n",
+ "description": "Provides a Cloudauth Face Config resource.\n\nFor information about Cloudauth Face Config and how to use it, see [What is Face Config](https://help.aliyun.com/zh/id-verification/cloudauth/product-overview/end-of-integration-announcement-on-id-verification).\n\n\u003e **NOTE:** Available since v1.137.0.\n\n\u003e **NOTE:** In order to provide you with more perfect product capabilities, the real person certification service has stopped access, it is recommended that you use the upgraded version of the [real person certification financial real person certification service](https://help.aliyun.com/zh/id-verification/product-overview/what-is-id-verification-for-financial-services). Users that have access to real person authentication are not affected.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst example = new alicloud.cloudauth.FaceConfig(\"example\", {\n bizName: std.format({\n input: \"%s-biz\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n bizType: std.format({\n input: \"type-%s\",\n args: [_default.result],\n }).then(invoke =\u003e invoke.result),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nexample = alicloud.cloudauth.FaceConfig(\"example\",\n biz_name=std.format(input=\"%s-biz\",\n args=[name]).result,\n biz_type=std.format(input=\"type-%s\",\n args=[default[\"result\"]]).result)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var example = new AliCloud.CloudAuth.FaceConfig(\"example\", new()\n {\n BizName = Std.Format.Invoke(new()\n {\n Input = \"%s-biz\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n BizType = Std.Format.Invoke(new()\n {\n Input = \"type-%s\",\n Args = new[]\n {\n @default.Result,\n },\n }).Apply(invoke =\u003e invoke.Result),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudauth\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-biz\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"type-%s\",\n\t\t\tArgs: []interface{}{\n\t\t\t\t_default.Result,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudauth.NewFaceConfig(ctx, \"example\", \u0026cloudauth.FaceConfigArgs{\n\t\t\tBizName: pulumi.String(invokeFormat.Result),\n\t\t\tBizType: pulumi.String(invokeFormat1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudauth.FaceConfig;\nimport com.pulumi.alicloud.cloudauth.FaceConfigArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var example = new FaceConfig(\"example\", FaceConfigArgs.builder()\n .bizName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-biz\")\n .args(name)\n .build()).result())\n .bizType(StdFunctions.format(FormatArgs.builder()\n .input(\"type-%s\")\n .args(default_.result())\n .build()).result())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n example:\n type: alicloud:cloudauth:FaceConfig\n properties:\n bizName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-biz'\n args:\n - ${name}\n return: result\n bizType:\n fn::invoke:\n function: std:format\n arguments:\n input: type-%s\n args:\n - ${default.result}\n return: result\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloudauth Face Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudauth/faceConfig:FaceConfig example \u003clang\u003e\n```\n\n",
"properties": {
"bizName": {
"type": "string",
@@ -120245,7 +122110,7 @@
}
},
"alicloud:cloudconnect/network:Network": {
- "description": "Provides a cloud connect network resource. Cloud Connect Network (CCN) is another important component of Smart Access Gateway. It is a device access matrix composed of Alibaba Cloud distributed access gateways. You can add multiple Smart Access Gateway (SAG) devices to a CCN instance and then attach the CCN instance to a Cloud Enterprise Network (CEN) instance to connect the local branches to the Alibaba Cloud.\n\nFor information about cloud connect network and how to use it, see [What is Cloud Connect Network](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/createcloudconnectnetwork).\n\n\u003e **NOTE:** Available since v1.59.0.\n\n\u003e **NOTE:** Only the following regions support create Cloud Connect Network. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe cloud connect network instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/network:Network example ccn-abc123456\n```\n\n",
+ "description": "Provides a cloud connect network resource. Cloud Connect Network (CCN) is another important component of Smart Access Gateway. It is a device access matrix composed of Alibaba Cloud distributed access gateways. You can add multiple Smart Access Gateway (SAG) devices to a CCN instance and then attach the CCN instance to a Cloud Enterprise Network (CEN) instance to connect the local branches to the Alibaba Cloud.\n\nFor information about cloud connect network and how to use it, see [What is Cloud Connect Network](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/createcloudconnectnetwork).\n\n\u003e **NOTE:** Available since v1.59.0.\n\n\u003e **NOTE:** Only the following regions support create Cloud Connect Network. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nThe cloud connect network instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/network:Network example ccn-abc123456\n```\n\n",
"properties": {
"cidrBlock": {
"type": "string",
@@ -120313,7 +122178,7 @@
}
},
"alicloud:cloudconnect/networkAttachment:NetworkAttachment": {
- "description": "Provides a Cloud Connect Network Attachment resource. This topic describes how to associate a Smart Access Gateway (SAG) instance with a network instance. You must associate an SAG instance with a network instance if you want to connect the SAG to Alibaba Cloud. You can connect an SAG to Alibaba Cloud through a leased line, the Internet, or the active and standby links.\n\nFor information about Cloud Connect Network Attachment and how to use it, see [What is Cloud Connect Network Attachment](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/bindsmartaccessgateway).\n\n\u003e **NOTE:** Available since v1.64.0.\n\n\u003e **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst sagId = config.get(\"sagId\") || \"sag-9bifkf***\";\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\nconst defaultNetworkAttachment = new alicloud.cloudconnect.NetworkAttachment(\"default\", {\n ccnId: _default.id,\n sagId: sagId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nsag_id = config.get(\"sagId\")\nif sag_id is None:\n sag_id = \"sag-9bifkf***\"\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\ndefault_network_attachment = alicloud.cloudconnect.NetworkAttachment(\"default\",\n ccn_id=default.id,\n sag_id=sag_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var sagId = config.Get(\"sagId\") ?? \"sag-9bifkf***\";\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n var defaultNetworkAttachment = new AliCloud.CloudConnect.NetworkAttachment(\"default\", new()\n {\n CcnId = @default.Id,\n SagId = sagId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tsagId := \"sag-9bifkf***\"\n\t\tif param := cfg.Get(\"sagId\"); param != \"\" {\n\t\t\tsagId = param\n\t\t}\n\t\t_default, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudconnect.NewNetworkAttachment(ctx, \"default\", \u0026cloudconnect.NetworkAttachmentArgs{\n\t\t\tCcnId: _default.ID(),\n\t\t\tSagId: pulumi.String(sagId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport com.pulumi.alicloud.cloudconnect.NetworkAttachment;\nimport com.pulumi.alicloud.cloudconnect.NetworkAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var sagId = config.get(\"sagId\").orElse(\"sag-9bifkf***\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n var defaultNetworkAttachment = new NetworkAttachment(\"defaultNetworkAttachment\", NetworkAttachmentArgs.builder()\n .ccnId(default_.id())\n .sagId(sagId)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n sagId:\n type: string\n default: sag-9bifkf***\nresources:\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n defaultNetworkAttachment:\n type: alicloud:cloudconnect:NetworkAttachment\n name: default\n properties:\n ccnId: ${default.id}\n sagId: ${sagId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe Cloud Connect Network Attachment can be imported using the instance_id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/networkAttachment:NetworkAttachment example ccn-abc123456:sag-abc123456\n```\n\n",
+ "description": "Provides a Cloud Connect Network Attachment resource. This topic describes how to associate a Smart Access Gateway (SAG) instance with a network instance. You must associate an SAG instance with a network instance if you want to connect the SAG to Alibaba Cloud. You can connect an SAG to Alibaba Cloud through a leased line, the Internet, or the active and standby links.\n\nFor information about Cloud Connect Network Attachment and how to use it, see [What is Cloud Connect Network Attachment](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/bindsmartaccessgateway).\n\n\u003e **NOTE:** Available since v1.64.0.\n\n\u003e **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst sagId = config.get(\"sagId\") || \"sag-9bifkf***\";\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\nconst defaultNetworkAttachment = new alicloud.cloudconnect.NetworkAttachment(\"default\", {\n ccnId: _default.id,\n sagId: sagId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nsag_id = config.get(\"sagId\")\nif sag_id is None:\n sag_id = \"sag-9bifkf***\"\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\ndefault_network_attachment = alicloud.cloudconnect.NetworkAttachment(\"default\",\n ccn_id=default.id,\n sag_id=sag_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var sagId = config.Get(\"sagId\") ?? \"sag-9bifkf***\";\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n var defaultNetworkAttachment = new AliCloud.CloudConnect.NetworkAttachment(\"default\", new()\n {\n CcnId = @default.Id,\n SagId = sagId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tsagId := \"sag-9bifkf***\"\n\t\tif param := cfg.Get(\"sagId\"); param != \"\" {\n\t\t\tsagId = param\n\t\t}\n\t\t_default, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudconnect.NewNetworkAttachment(ctx, \"default\", \u0026cloudconnect.NetworkAttachmentArgs{\n\t\t\tCcnId: _default.ID(),\n\t\t\tSagId: pulumi.String(sagId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport com.pulumi.alicloud.cloudconnect.NetworkAttachment;\nimport com.pulumi.alicloud.cloudconnect.NetworkAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var sagId = config.get(\"sagId\").orElse(\"sag-9bifkf***\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n var defaultNetworkAttachment = new NetworkAttachment(\"defaultNetworkAttachment\", NetworkAttachmentArgs.builder()\n .ccnId(default_.id())\n .sagId(sagId)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n sagId:\n type: string\n default: sag-9bifkf***\nresources:\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n defaultNetworkAttachment:\n type: alicloud:cloudconnect:NetworkAttachment\n name: default\n properties:\n ccnId: ${default.id}\n sagId: ${sagId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nThe Cloud Connect Network Attachment can be imported using the instance_id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/networkAttachment:NetworkAttachment example ccn-abc123456:sag-abc123456\n```\n\n",
"properties": {
"ccnId": {
"type": "string",
@@ -120362,7 +122227,7 @@
}
},
"alicloud:cloudconnect/networkGrant:NetworkGrant": {
- "description": "Provides a Cloud Connect Network Grant resource. If the CEN instance to be attached belongs to another account, authorization by the CEN instance is required.\n\nFor information about Cloud Connect Network Grant and how to use it, see [What is Cloud Connect Network Grant](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/grantinstancetocbn).\n\n\u003e **NOTE:** Available since v1.63.0.\n\n\u003e **NOTE:** Only the following regions support create Cloud Connect Network Grant. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst anotherUid = config.getNumber(\"anotherUid\") || 123456789;\n// Method 2: Use the target cen account's access_key, secret_key\n// provider \"alicloud\" {\n// region = \"cn-hangzhou\"\n// access_key = \"access_key\"\n// secret_key = \"secret_key\"\n// alias = \"cen_account\"\n// }\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\nconst cen = new alicloud.cen.Instance(\"cen\", {cenInstanceName: name});\nconst defaultNetworkGrant = new alicloud.cloudconnect.NetworkGrant(\"default\", {\n ccnId: _default.id,\n cenId: cen.id,\n cenUid: anotherUid,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nanother_uid = config.get_float(\"anotherUid\")\nif another_uid is None:\n another_uid = 123456789\n# Method 2: Use the target cen account's access_key, secret_key\n# provider \"alicloud\" {\n# region = \"cn-hangzhou\"\n# access_key = \"access_key\"\n# secret_key = \"secret_key\"\n# alias = \"cen_account\"\n# }\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\ncen = alicloud.cen.Instance(\"cen\", cen_instance_name=name)\ndefault_network_grant = alicloud.cloudconnect.NetworkGrant(\"default\",\n ccn_id=default.id,\n cen_id=cen.id,\n cen_uid=another_uid)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var anotherUid = config.GetDouble(\"anotherUid\") ?? 123456789;\n // Method 2: Use the target cen account's access_key, secret_key\n // provider \"alicloud\" {\n // region = \"cn-hangzhou\"\n // access_key = \"access_key\"\n // secret_key = \"secret_key\"\n // alias = \"cen_account\"\n // }\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n var cen = new AliCloud.Cen.Instance(\"cen\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultNetworkGrant = new AliCloud.CloudConnect.NetworkGrant(\"default\", new()\n {\n CcnId = @default.Id,\n CenId = cen.Id,\n CenUid = anotherUid,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tanotherUid := float64(123456789)\n\t\tif param := cfg.GetFloat64(\"anotherUid\"); param != 0 {\n\t\t\tanotherUid = param\n\t\t}\n\t\t// Method 2: Use the target cen account's access_key, secret_key\n\t\t//\n\t\t//\tprovider \"alicloud\" {\n\t\t//\t region = \"cn-hangzhou\"\n\t\t//\t access_key = \"access_key\"\n\t\t//\t secret_key = \"secret_key\"\n\t\t//\t alias = \"cen_account\"\n\t\t//\t}\n\t\t_default, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcen, err := cen.NewInstance(ctx, \"cen\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudconnect.NewNetworkGrant(ctx, \"default\", \u0026cloudconnect.NetworkGrantArgs{\n\t\t\tCcnId: _default.ID(),\n\t\t\tCenId: cen.ID(),\n\t\t\tCenUid: pulumi.Float64(anotherUid),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cloudconnect.NetworkGrant;\nimport com.pulumi.alicloud.cloudconnect.NetworkGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var anotherUid = config.get(\"anotherUid\").orElse(123456789);\n // Method 2: Use the target cen account's access_key, secret_key\n // provider \"alicloud\" {\n // region = \"cn-hangzhou\"\n // access_key = \"access_key\"\n // secret_key = \"secret_key\"\n // alias = \"cen_account\"\n // }\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n var cen = new Instance(\"cen\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultNetworkGrant = new NetworkGrant(\"defaultNetworkGrant\", NetworkGrantArgs.builder()\n .ccnId(default_.id())\n .cenId(cen.id())\n .cenUid(anotherUid)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n anotherUid:\n type: number\n default: 1.23456789e+08\nresources:\n # Method 2: Use the target cen account's access_key, secret_key\n # provider \"alicloud\" {\n # region = \"cn-hangzhou\"\n # access_key = \"access_key\"\n # secret_key = \"secret_key\"\n # alias = \"cen_account\"\n # }\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n cen:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultNetworkGrant:\n type: alicloud:cloudconnect:NetworkGrant\n name: default\n properties:\n ccnId: ${default.id}\n cenId: ${cen.id}\n cenUid: ${anotherUid}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe Cloud Connect Network Grant can be imported using the instance_id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/networkGrant:NetworkGrant example ccn-abc123456:cen-abc123456\n```\n\n",
+ "description": "Provides a Cloud Connect Network Grant resource. If the CEN instance to be attached belongs to another account, authorization by the CEN instance is required.\n\nFor information about Cloud Connect Network Grant and how to use it, see [What is Cloud Connect Network Grant](https://www.alibabacloud.com/help/en/smart-access-gateway/latest/grantinstancetocbn).\n\n\u003e **NOTE:** Available since v1.63.0.\n\n\u003e **NOTE:** Only the following regions support create Cloud Connect Network Grant. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst anotherUid = config.getNumber(\"anotherUid\") || 123456789;\n// Method 2: Use the target cen account's access_key, secret_key\n// provider \"alicloud\" {\n// region = \"cn-hangzhou\"\n// access_key = \"access_key\"\n// secret_key = \"secret_key\"\n// alias = \"cen_account\"\n// }\nconst _default = new alicloud.cloudconnect.Network(\"default\", {\n name: name,\n description: name,\n cidrBlock: \"192.168.0.0/24\",\n isDefault: true,\n});\nconst cen = new alicloud.cen.Instance(\"cen\", {cenInstanceName: name});\nconst defaultNetworkGrant = new alicloud.cloudconnect.NetworkGrant(\"default\", {\n ccnId: _default.id,\n cenId: cen.id,\n cenUid: anotherUid,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nanother_uid = config.get_float(\"anotherUid\")\nif another_uid is None:\n another_uid = 123456789\n# Method 2: Use the target cen account's access_key, secret_key\n# provider \"alicloud\" {\n# region = \"cn-hangzhou\"\n# access_key = \"access_key\"\n# secret_key = \"secret_key\"\n# alias = \"cen_account\"\n# }\ndefault = alicloud.cloudconnect.Network(\"default\",\n name=name,\n description=name,\n cidr_block=\"192.168.0.0/24\",\n is_default=True)\ncen = alicloud.cen.Instance(\"cen\", cen_instance_name=name)\ndefault_network_grant = alicloud.cloudconnect.NetworkGrant(\"default\",\n ccn_id=default.id,\n cen_id=cen.id,\n cen_uid=another_uid)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var anotherUid = config.GetDouble(\"anotherUid\") ?? 123456789;\n // Method 2: Use the target cen account's access_key, secret_key\n // provider \"alicloud\" {\n // region = \"cn-hangzhou\"\n // access_key = \"access_key\"\n // secret_key = \"secret_key\"\n // alias = \"cen_account\"\n // }\n var @default = new AliCloud.CloudConnect.Network(\"default\", new()\n {\n Name = name,\n Description = name,\n CidrBlock = \"192.168.0.0/24\",\n IsDefault = true,\n });\n\n var cen = new AliCloud.Cen.Instance(\"cen\", new()\n {\n CenInstanceName = name,\n });\n\n var defaultNetworkGrant = new AliCloud.CloudConnect.NetworkGrant(\"default\", new()\n {\n CcnId = @default.Id,\n CenId = cen.Id,\n CenUid = anotherUid,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudconnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tanotherUid := float64(123456789)\n\t\tif param := cfg.GetFloat64(\"anotherUid\"); param != 0 {\n\t\t\tanotherUid = param\n\t\t}\n\t\t// Method 2: Use the target cen account's access_key, secret_key\n\t\t//\n\t\t//\tprovider \"alicloud\" {\n\t\t//\t region = \"cn-hangzhou\"\n\t\t//\t access_key = \"access_key\"\n\t\t//\t secret_key = \"secret_key\"\n\t\t//\t alias = \"cen_account\"\n\t\t//\t}\n\t\t_default, err := cloudconnect.NewNetwork(ctx, \"default\", \u0026cloudconnect.NetworkArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tIsDefault: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcen, err := cen.NewInstance(ctx, \"cen\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudconnect.NewNetworkGrant(ctx, \"default\", \u0026cloudconnect.NetworkGrantArgs{\n\t\t\tCcnId: _default.ID(),\n\t\t\tCenId: cen.ID(),\n\t\t\tCenUid: pulumi.Float64(anotherUid),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudconnect.Network;\nimport com.pulumi.alicloud.cloudconnect.NetworkArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cloudconnect.NetworkGrant;\nimport com.pulumi.alicloud.cloudconnect.NetworkGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var anotherUid = config.get(\"anotherUid\").orElse(123456789);\n // Method 2: Use the target cen account's access_key, secret_key\n // provider \"alicloud\" {\n // region = \"cn-hangzhou\"\n // access_key = \"access_key\"\n // secret_key = \"secret_key\"\n // alias = \"cen_account\"\n // }\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .name(name)\n .description(name)\n .cidrBlock(\"192.168.0.0/24\")\n .isDefault(true)\n .build());\n\n var cen = new Instance(\"cen\", InstanceArgs.builder()\n .cenInstanceName(name)\n .build());\n\n var defaultNetworkGrant = new NetworkGrant(\"defaultNetworkGrant\", NetworkGrantArgs.builder()\n .ccnId(default_.id())\n .cenId(cen.id())\n .cenUid(anotherUid)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n anotherUid:\n type: number\n default: 1.23456789e+08\nresources:\n # Method 2: Use the target cen account's access_key, secret_key\n # provider \"alicloud\" {\n # region = \"cn-hangzhou\"\n # access_key = \"access_key\"\n # secret_key = \"secret_key\"\n # alias = \"cen_account\"\n # }\n default:\n type: alicloud:cloudconnect:Network\n properties:\n name: ${name}\n description: ${name}\n cidrBlock: 192.168.0.0/24\n isDefault: true\n cen:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n defaultNetworkGrant:\n type: alicloud:cloudconnect:NetworkGrant\n name: default\n properties:\n ccnId: ${default.id}\n cenId: ${cen.id}\n cenUid: ${anotherUid}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nThe Cloud Connect Network Grant can be imported using the instance_id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudconnect/networkGrant:NetworkGrant example ccn-abc123456:cen-abc123456\n```\n\n",
"properties": {
"ccnId": {
"type": "string",
@@ -120427,7 +122292,7 @@
}
},
"alicloud:cloudcontrol/resource:Resource": {
- "description": "Provides a Cloud Control Resource resource.\n\n\n\nFor information about Cloud Control Resource and how to use it, see [What is Resource](https://next.api.aliyun.com/document/cloudcontrol/2022-08-30/GetResourceType).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst mqInstance = new alicloud.cloudcontrol.Resource(\"mq_instance\", {\n desireAttributes: JSON.stringify({\n InstanceName: \"terraform-example-ons-instance\",\n }),\n product: \"Ons\",\n resourceCode: \"Instance\",\n});\nconst _default = new alicloud.cloudcontrol.Resource(\"default\", {\n product: \"Ons\",\n resourceCode: \"Instance::Topic\",\n resourceId: mqInstance.resourceId,\n desireAttributes: pulumi.jsonStringify({\n InstanceId: mqInstance.resourceId,\n TopicName: \"terraform-example-ons-topic\",\n MessageType: \"1\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nmq_instance = alicloud.cloudcontrol.Resource(\"mq_instance\",\n desire_attributes=json.dumps({\n \"InstanceName\": \"terraform-example-ons-instance\",\n }),\n product=\"Ons\",\n resource_code=\"Instance\")\ndefault = alicloud.cloudcontrol.Resource(\"default\",\n product=\"Ons\",\n resource_code=\"Instance::Topic\",\n resource_id=mq_instance.resource_id,\n desire_attributes=pulumi.Output.json_dumps({\n \"InstanceId\": mq_instance.resource_id,\n \"TopicName\": \"terraform-example-ons-topic\",\n \"MessageType\": \"1\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var mqInstance = new AliCloud.CloudControl.Resource(\"mq_instance\", new()\n {\n DesireAttributes = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"InstanceName\"] = \"terraform-example-ons-instance\",\n }),\n Product = \"Ons\",\n ResourceCode = \"Instance\",\n });\n\n var @default = new AliCloud.CloudControl.Resource(\"default\", new()\n {\n Product = \"Ons\",\n ResourceCode = \"Instance::Topic\",\n ResourceId = mqInstance.ResourceId,\n DesireAttributes = Output.JsonSerialize(Output.Create(new Dictionary\u003cstring, object?\u003e\n {\n [\"InstanceId\"] = mqInstance.ResourceId,\n [\"TopicName\"] = \"terraform-example-ons-topic\",\n [\"MessageType\"] = \"1\",\n })),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudcontrol\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"InstanceName\": \"terraform-example-ons-instance\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmqInstance, err := cloudcontrol.NewResource(ctx, \"mq_instance\", \u0026cloudcontrol.ResourceArgs{\n\t\t\tDesireAttributes: pulumi.String(json0),\n\t\t\tProduct: pulumi.String(\"Ons\"),\n\t\t\tResourceCode: pulumi.String(\"Instance\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudcontrol.NewResource(ctx, \"default\", \u0026cloudcontrol.ResourceArgs{\n\t\t\tProduct: pulumi.String(\"Ons\"),\n\t\t\tResourceCode: pulumi.String(\"Instance::Topic\"),\n\t\t\tResourceId: mqInstance.ResourceId,\n\t\t\tDesireAttributes: mqInstance.ResourceId.ApplyT(func(resourceId string) (pulumi.String, error) {\n\t\t\t\tvar _zero pulumi.String\n\t\t\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\t\t\"InstanceId\": resourceId,\n\t\t\t\t\t\"TopicName\": \"terraform-example-ons-topic\",\n\t\t\t\t\t\"MessageType\": \"1\",\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\treturn pulumi.String(json1), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudcontrol.Resource;\nimport com.pulumi.alicloud.cloudcontrol.ResourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var mqInstance = new Resource(\"mqInstance\", ResourceArgs.builder()\n .desireAttributes(serializeJson(\n jsonObject(\n jsonProperty(\"InstanceName\", \"terraform-example-ons-instance\")\n )))\n .product(\"Ons\")\n .resourceCode(\"Instance\")\n .build());\n\n var default_ = new Resource(\"default\", ResourceArgs.builder()\n .product(\"Ons\")\n .resourceCode(\"Instance::Topic\")\n .resourceId(mqInstance.resourceId())\n .desireAttributes(mqInstance.resourceId().applyValue(_resourceId -\u003e serializeJson(\n jsonObject(\n jsonProperty(\"InstanceId\", _resourceId),\n jsonProperty(\"TopicName\", \"terraform-example-ons-topic\"),\n jsonProperty(\"MessageType\", \"1\")\n ))))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n mqInstance:\n type: alicloud:cloudcontrol:Resource\n name: mq_instance\n properties:\n desireAttributes:\n fn::toJSON:\n InstanceName: terraform-example-ons-instance\n product: Ons\n resourceCode: Instance\n default:\n type: alicloud:cloudcontrol:Resource\n properties:\n product: Ons\n resourceCode: Instance::Topic\n resourceId: ${mqInstance.resourceId}\n desireAttributes:\n fn::toJSON:\n InstanceId: ${mqInstance.resourceId}\n TopicName: terraform-example-ons-topic\n MessageType: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Control Resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudcontrol/resource:Resource example \u003cprovider\u003e:\u003cproduct\u003e:\u003cresource_code\u003e:\u003cresource_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Control Resource resource.\n\n\n\nFor information about Cloud Control Resource and how to use it, see [What is Resource](https://next.api.aliyun.com/document/cloudcontrol/2022-08-30/GetResourceType).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst mqInstance = new alicloud.cloudcontrol.Resource(\"mq_instance\", {\n desireAttributes: JSON.stringify({\n InstanceName: \"terraform-example-ons-instance\",\n }),\n product: \"Ons\",\n resourceCode: \"Instance\",\n});\nconst _default = new alicloud.cloudcontrol.Resource(\"default\", {\n product: \"Ons\",\n resourceCode: \"Instance::Topic\",\n resourceId: mqInstance.resourceId,\n desireAttributes: pulumi.jsonStringify({\n InstanceId: mqInstance.resourceId,\n TopicName: \"terraform-example-ons-topic\",\n MessageType: \"1\",\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nmq_instance = alicloud.cloudcontrol.Resource(\"mq_instance\",\n desire_attributes=json.dumps({\n \"InstanceName\": \"terraform-example-ons-instance\",\n }),\n product=\"Ons\",\n resource_code=\"Instance\")\ndefault = alicloud.cloudcontrol.Resource(\"default\",\n product=\"Ons\",\n resource_code=\"Instance::Topic\",\n resource_id=mq_instance.resource_id,\n desire_attributes=pulumi.Output.json_dumps({\n \"InstanceId\": mq_instance.resource_id,\n \"TopicName\": \"terraform-example-ons-topic\",\n \"MessageType\": \"1\",\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var mqInstance = new AliCloud.CloudControl.Resource(\"mq_instance\", new()\n {\n DesireAttributes = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"InstanceName\"] = \"terraform-example-ons-instance\",\n }),\n Product = \"Ons\",\n ResourceCode = \"Instance\",\n });\n\n var @default = new AliCloud.CloudControl.Resource(\"default\", new()\n {\n Product = \"Ons\",\n ResourceCode = \"Instance::Topic\",\n ResourceId = mqInstance.ResourceId,\n DesireAttributes = Output.JsonSerialize(Output.Create(new Dictionary\u003cstring, object?\u003e\n {\n [\"InstanceId\"] = mqInstance.ResourceId,\n [\"TopicName\"] = \"terraform-example-ons-topic\",\n [\"MessageType\"] = \"1\",\n })),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudcontrol\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"InstanceName\": \"terraform-example-ons-instance\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmqInstance, err := cloudcontrol.NewResource(ctx, \"mq_instance\", \u0026cloudcontrol.ResourceArgs{\n\t\t\tDesireAttributes: pulumi.String(json0),\n\t\t\tProduct: pulumi.String(\"Ons\"),\n\t\t\tResourceCode: pulumi.String(\"Instance\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudcontrol.NewResource(ctx, \"default\", \u0026cloudcontrol.ResourceArgs{\n\t\t\tProduct: pulumi.String(\"Ons\"),\n\t\t\tResourceCode: pulumi.String(\"Instance::Topic\"),\n\t\t\tResourceId: mqInstance.ResourceId,\n\t\t\tDesireAttributes: mqInstance.ResourceId.ApplyT(func(resourceId string) (pulumi.String, error) {\n\t\t\t\tvar _zero pulumi.String\n\t\t\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\t\t\"InstanceId\": resourceId,\n\t\t\t\t\t\"TopicName\": \"terraform-example-ons-topic\",\n\t\t\t\t\t\"MessageType\": \"1\",\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\treturn pulumi.String(json1), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudcontrol.Resource;\nimport com.pulumi.alicloud.cloudcontrol.ResourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var mqInstance = new Resource(\"mqInstance\", ResourceArgs.builder()\n .desireAttributes(serializeJson(\n jsonObject(\n jsonProperty(\"InstanceName\", \"terraform-example-ons-instance\")\n )))\n .product(\"Ons\")\n .resourceCode(\"Instance\")\n .build());\n\n var default_ = new Resource(\"default\", ResourceArgs.builder()\n .product(\"Ons\")\n .resourceCode(\"Instance::Topic\")\n .resourceId(mqInstance.resourceId())\n .desireAttributes(mqInstance.resourceId().applyValue(_resourceId -\u003e serializeJson(\n jsonObject(\n jsonProperty(\"InstanceId\", _resourceId),\n jsonProperty(\"TopicName\", \"terraform-example-ons-topic\"),\n jsonProperty(\"MessageType\", \"1\")\n ))))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n mqInstance:\n type: alicloud:cloudcontrol:Resource\n name: mq_instance\n properties:\n desireAttributes:\n fn::toJSON:\n InstanceName: terraform-example-ons-instance\n product: Ons\n resourceCode: Instance\n default:\n type: alicloud:cloudcontrol:Resource\n properties:\n product: Ons\n resourceCode: Instance::Topic\n resourceId: ${mqInstance.resourceId}\n desireAttributes:\n fn::toJSON:\n InstanceId: ${mqInstance.resourceId}\n TopicName: terraform-example-ons-topic\n MessageType: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Control Resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudcontrol/resource:Resource example \u003cprovider\u003e:\u003cproduct\u003e:\u003cresource_code\u003e:\u003cresource_id\u003e\n```\n\n",
"properties": {
"desireAttributes": {
"type": "string",
@@ -120515,7 +122380,7 @@
}
},
"alicloud:cloudfirewall/addressBook:AddressBook": {
- "description": "Provides a Cloud Firewall Address Book resource.\n\nFor information about Cloud Firewall Address Book and how to use it, see [What is Address Book](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-addaddressbook).\n\n\u003e **NOTE:** Available since v1.178.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cloudfirewall.AddressBook(\"example\", {\n description: \"example_value\",\n groupName: \"example_value\",\n groupType: \"tag\",\n tagRelation: \"and\",\n autoAddTagEcs: 0,\n ecsTags: [{\n tagKey: \"created\",\n tagValue: \"tfTestAcc0\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cloudfirewall.AddressBook(\"example\",\n description=\"example_value\",\n group_name=\"example_value\",\n group_type=\"tag\",\n tag_relation=\"and\",\n auto_add_tag_ecs=0,\n ecs_tags=[{\n \"tag_key\": \"created\",\n \"tag_value\": \"tfTestAcc0\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.CloudFirewall.AddressBook(\"example\", new()\n {\n Description = \"example_value\",\n GroupName = \"example_value\",\n GroupType = \"tag\",\n TagRelation = \"and\",\n AutoAddTagEcs = 0,\n EcsTags = new[]\n {\n new AliCloud.CloudFirewall.Inputs.AddressBookEcsTagArgs\n {\n TagKey = \"created\",\n TagValue = \"tfTestAcc0\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewAddressBook(ctx, \"example\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tGroupName: pulumi.String(\"example_value\"),\n\t\t\tGroupType: pulumi.String(\"tag\"),\n\t\t\tTagRelation: pulumi.String(\"and\"),\n\t\t\tAutoAddTagEcs: pulumi.Int(0),\n\t\t\tEcsTags: cloudfirewall.AddressBookEcsTagArray{\n\t\t\t\t\u0026cloudfirewall.AddressBookEcsTagArgs{\n\t\t\t\t\tTagKey: pulumi.String(\"created\"),\n\t\t\t\t\tTagValue: pulumi.String(\"tfTestAcc0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.AddressBook;\nimport com.pulumi.alicloud.cloudfirewall.AddressBookArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.AddressBookEcsTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AddressBook(\"example\", AddressBookArgs.builder()\n .description(\"example_value\")\n .groupName(\"example_value\")\n .groupType(\"tag\")\n .tagRelation(\"and\")\n .autoAddTagEcs(0)\n .ecsTags(AddressBookEcsTagArgs.builder()\n .tagKey(\"created\")\n .tagValue(\"tfTestAcc0\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description: example_value\n groupName: example_value\n groupType: tag\n tagRelation: and\n autoAddTagEcs: 0\n ecsTags:\n - tagKey: created\n tagValue: tfTestAcc0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Address Book can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/addressBook:AddressBook example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Address Book resource.\n\nFor information about Cloud Firewall Address Book and how to use it, see [What is Address Book](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-addaddressbook).\n\n\u003e **NOTE:** Available since v1.178.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cloudfirewall.AddressBook(\"example\", {\n description: \"example_value\",\n groupName: \"example_value\",\n groupType: \"tag\",\n tagRelation: \"and\",\n autoAddTagEcs: 0,\n ecsTags: [{\n tagKey: \"created\",\n tagValue: \"tfTestAcc0\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cloudfirewall.AddressBook(\"example\",\n description=\"example_value\",\n group_name=\"example_value\",\n group_type=\"tag\",\n tag_relation=\"and\",\n auto_add_tag_ecs=0,\n ecs_tags=[{\n \"tag_key\": \"created\",\n \"tag_value\": \"tfTestAcc0\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.CloudFirewall.AddressBook(\"example\", new()\n {\n Description = \"example_value\",\n GroupName = \"example_value\",\n GroupType = \"tag\",\n TagRelation = \"and\",\n AutoAddTagEcs = 0,\n EcsTags = new[]\n {\n new AliCloud.CloudFirewall.Inputs.AddressBookEcsTagArgs\n {\n TagKey = \"created\",\n TagValue = \"tfTestAcc0\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewAddressBook(ctx, \"example\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tGroupName: pulumi.String(\"example_value\"),\n\t\t\tGroupType: pulumi.String(\"tag\"),\n\t\t\tTagRelation: pulumi.String(\"and\"),\n\t\t\tAutoAddTagEcs: pulumi.Int(0),\n\t\t\tEcsTags: cloudfirewall.AddressBookEcsTagArray{\n\t\t\t\t\u0026cloudfirewall.AddressBookEcsTagArgs{\n\t\t\t\t\tTagKey: pulumi.String(\"created\"),\n\t\t\t\t\tTagValue: pulumi.String(\"tfTestAcc0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.AddressBook;\nimport com.pulumi.alicloud.cloudfirewall.AddressBookArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.AddressBookEcsTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AddressBook(\"example\", AddressBookArgs.builder()\n .description(\"example_value\")\n .groupName(\"example_value\")\n .groupType(\"tag\")\n .tagRelation(\"and\")\n .autoAddTagEcs(0)\n .ecsTags(AddressBookEcsTagArgs.builder()\n .tagKey(\"created\")\n .tagValue(\"tfTestAcc0\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description: example_value\n groupName: example_value\n groupType: tag\n tagRelation: and\n autoAddTagEcs: 0\n ecsTags:\n - tagKey: created\n tagValue: tfTestAcc0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Address Book can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/addressBook:AddressBook example \u003cid\u003e\n```\n\n",
"properties": {
"addressLists": {
"type": "array",
@@ -120683,7 +122548,7 @@
}
},
"alicloud:cloudfirewall/controlPolicy:ControlPolicy": {
- "description": "Provides a Cloud Firewall Control Policy resource.\n\nFor information about Cloud Firewall Control Policy and how to use it, see [What is Control Policy](https://www.alibabacloud.com/help/doc-detail/138867.htm).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudfirewall.ControlPolicy(\"default\", {\n direction: \"in\",\n applicationName: \"ANY\",\n description: name,\n aclAction: \"accept\",\n source: \"127.0.0.1/32\",\n sourceType: \"net\",\n destination: \"127.0.0.2/32\",\n destinationType: \"net\",\n proto: \"ANY\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudfirewall.ControlPolicy(\"default\",\n direction=\"in\",\n application_name=\"ANY\",\n description=name,\n acl_action=\"accept\",\n source=\"127.0.0.1/32\",\n source_type=\"net\",\n destination=\"127.0.0.2/32\",\n destination_type=\"net\",\n proto=\"ANY\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudFirewall.ControlPolicy(\"default\", new()\n {\n Direction = \"in\",\n ApplicationName = \"ANY\",\n Description = name,\n AclAction = \"accept\",\n Source = \"127.0.0.1/32\",\n SourceType = \"net\",\n Destination = \"127.0.0.2/32\",\n DestinationType = \"net\",\n Proto = \"ANY\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudfirewall.NewControlPolicy(ctx, \"default\", \u0026cloudfirewall.ControlPolicyArgs{\n\t\t\tDirection: pulumi.String(\"in\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"ANY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ControlPolicy(\"default\", ControlPolicyArgs.builder()\n .direction(\"in\")\n .applicationName(\"ANY\")\n .description(name)\n .aclAction(\"accept\")\n .source(\"127.0.0.1/32\")\n .sourceType(\"net\")\n .destination(\"127.0.0.2/32\")\n .destinationType(\"net\")\n .proto(\"ANY\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudfirewall:ControlPolicy\n properties:\n direction: in\n applicationName: ANY\n description: ${name}\n aclAction: accept\n source: 127.0.0.1/32\n sourceType: net\n destination: 127.0.0.2/32\n destinationType: net\n proto: ANY\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/controlPolicy:ControlPolicy example \u003cacl_uuid\u003e:\u003cdirection\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Control Policy resource.\n\nFor information about Cloud Firewall Control Policy and how to use it, see [What is Control Policy](https://www.alibabacloud.com/help/doc-detail/138867.htm).\n\n\u003e **NOTE:** Available since v1.129.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudfirewall.ControlPolicy(\"default\", {\n direction: \"in\",\n applicationName: \"ANY\",\n description: name,\n aclAction: \"accept\",\n source: \"127.0.0.1/32\",\n sourceType: \"net\",\n destination: \"127.0.0.2/32\",\n destinationType: \"net\",\n proto: \"ANY\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudfirewall.ControlPolicy(\"default\",\n direction=\"in\",\n application_name=\"ANY\",\n description=name,\n acl_action=\"accept\",\n source=\"127.0.0.1/32\",\n source_type=\"net\",\n destination=\"127.0.0.2/32\",\n destination_type=\"net\",\n proto=\"ANY\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudFirewall.ControlPolicy(\"default\", new()\n {\n Direction = \"in\",\n ApplicationName = \"ANY\",\n Description = name,\n AclAction = \"accept\",\n Source = \"127.0.0.1/32\",\n SourceType = \"net\",\n Destination = \"127.0.0.2/32\",\n DestinationType = \"net\",\n Proto = \"ANY\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudfirewall.NewControlPolicy(ctx, \"default\", \u0026cloudfirewall.ControlPolicyArgs{\n\t\t\tDirection: pulumi.String(\"in\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"ANY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ControlPolicy(\"default\", ControlPolicyArgs.builder()\n .direction(\"in\")\n .applicationName(\"ANY\")\n .description(name)\n .aclAction(\"accept\")\n .source(\"127.0.0.1/32\")\n .sourceType(\"net\")\n .destination(\"127.0.0.2/32\")\n .destinationType(\"net\")\n .proto(\"ANY\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudfirewall:ControlPolicy\n properties:\n direction: in\n applicationName: ANY\n description: ${name}\n aclAction: accept\n source: 127.0.0.1/32\n sourceType: net\n destination: 127.0.0.2/32\n destinationType: net\n proto: ANY\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/controlPolicy:ControlPolicy example \u003cacl_uuid\u003e:\u003cdirection\u003e\n```\n\n",
"properties": {
"aclAction": {
"type": "string",
@@ -121049,7 +122914,7 @@
}
},
"alicloud:cloudfirewall/controlPolicyOrder:ControlPolicyOrder": {
- "description": "Provides a Cloud Firewall Control Policy Order resource.\n\nFor information about Cloud Firewall Control Policy Order and how to use it, see [What is Control Policy Order](https://www.alibabacloud.com/help/doc-detail/138867.htm).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudfirewall.ControlPolicy(\"default\", {\n direction: \"in\",\n applicationName: \"ANY\",\n description: name,\n aclAction: \"accept\",\n source: \"127.0.0.1/32\",\n sourceType: \"net\",\n destination: \"127.0.0.2/32\",\n destinationType: \"net\",\n proto: \"ANY\",\n});\nconst defaultControlPolicyOrder = new alicloud.cloudfirewall.ControlPolicyOrder(\"default\", {\n aclUuid: _default.aclUuid,\n direction: _default.direction,\n order: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudfirewall.ControlPolicy(\"default\",\n direction=\"in\",\n application_name=\"ANY\",\n description=name,\n acl_action=\"accept\",\n source=\"127.0.0.1/32\",\n source_type=\"net\",\n destination=\"127.0.0.2/32\",\n destination_type=\"net\",\n proto=\"ANY\")\ndefault_control_policy_order = alicloud.cloudfirewall.ControlPolicyOrder(\"default\",\n acl_uuid=default.acl_uuid,\n direction=default.direction,\n order=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudFirewall.ControlPolicy(\"default\", new()\n {\n Direction = \"in\",\n ApplicationName = \"ANY\",\n Description = name,\n AclAction = \"accept\",\n Source = \"127.0.0.1/32\",\n SourceType = \"net\",\n Destination = \"127.0.0.2/32\",\n DestinationType = \"net\",\n Proto = \"ANY\",\n });\n\n var defaultControlPolicyOrder = new AliCloud.CloudFirewall.ControlPolicyOrder(\"default\", new()\n {\n AclUuid = @default.AclUuid,\n Direction = @default.Direction,\n Order = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudfirewall.NewControlPolicy(ctx, \"default\", \u0026cloudfirewall.ControlPolicyArgs{\n\t\t\tDirection: pulumi.String(\"in\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"ANY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewControlPolicyOrder(ctx, \"default\", \u0026cloudfirewall.ControlPolicyOrderArgs{\n\t\t\tAclUuid: _default.AclUuid,\n\t\t\tDirection: _default.Direction,\n\t\t\tOrder: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyArgs;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyOrder;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ControlPolicy(\"default\", ControlPolicyArgs.builder()\n .direction(\"in\")\n .applicationName(\"ANY\")\n .description(name)\n .aclAction(\"accept\")\n .source(\"127.0.0.1/32\")\n .sourceType(\"net\")\n .destination(\"127.0.0.2/32\")\n .destinationType(\"net\")\n .proto(\"ANY\")\n .build());\n\n var defaultControlPolicyOrder = new ControlPolicyOrder(\"defaultControlPolicyOrder\", ControlPolicyOrderArgs.builder()\n .aclUuid(default_.aclUuid())\n .direction(default_.direction())\n .order(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudfirewall:ControlPolicy\n properties:\n direction: in\n applicationName: ANY\n description: ${name}\n aclAction: accept\n source: 127.0.0.1/32\n sourceType: net\n destination: 127.0.0.2/32\n destinationType: net\n proto: ANY\n defaultControlPolicyOrder:\n type: alicloud:cloudfirewall:ControlPolicyOrder\n name: default\n properties:\n aclUuid: ${default.aclUuid}\n direction: ${default.direction}\n order: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Control Policy Order can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/controlPolicyOrder:ControlPolicyOrder example \u003cacl_uuid\u003e:\u003cdirection\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Control Policy Order resource.\n\nFor information about Cloud Firewall Control Policy Order and how to use it, see [What is Control Policy Order](https://www.alibabacloud.com/help/doc-detail/138867.htm).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudfirewall.ControlPolicy(\"default\", {\n direction: \"in\",\n applicationName: \"ANY\",\n description: name,\n aclAction: \"accept\",\n source: \"127.0.0.1/32\",\n sourceType: \"net\",\n destination: \"127.0.0.2/32\",\n destinationType: \"net\",\n proto: \"ANY\",\n});\nconst defaultControlPolicyOrder = new alicloud.cloudfirewall.ControlPolicyOrder(\"default\", {\n aclUuid: _default.aclUuid,\n direction: _default.direction,\n order: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudfirewall.ControlPolicy(\"default\",\n direction=\"in\",\n application_name=\"ANY\",\n description=name,\n acl_action=\"accept\",\n source=\"127.0.0.1/32\",\n source_type=\"net\",\n destination=\"127.0.0.2/32\",\n destination_type=\"net\",\n proto=\"ANY\")\ndefault_control_policy_order = alicloud.cloudfirewall.ControlPolicyOrder(\"default\",\n acl_uuid=default.acl_uuid,\n direction=default.direction,\n order=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudFirewall.ControlPolicy(\"default\", new()\n {\n Direction = \"in\",\n ApplicationName = \"ANY\",\n Description = name,\n AclAction = \"accept\",\n Source = \"127.0.0.1/32\",\n SourceType = \"net\",\n Destination = \"127.0.0.2/32\",\n DestinationType = \"net\",\n Proto = \"ANY\",\n });\n\n var defaultControlPolicyOrder = new AliCloud.CloudFirewall.ControlPolicyOrder(\"default\", new()\n {\n AclUuid = @default.AclUuid,\n Direction = @default.Direction,\n Order = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudfirewall.NewControlPolicy(ctx, \"default\", \u0026cloudfirewall.ControlPolicyArgs{\n\t\t\tDirection: pulumi.String(\"in\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"ANY\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewControlPolicyOrder(ctx, \"default\", \u0026cloudfirewall.ControlPolicyOrderArgs{\n\t\t\tAclUuid: _default.AclUuid,\n\t\t\tDirection: _default.Direction,\n\t\t\tOrder: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyArgs;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyOrder;\nimport com.pulumi.alicloud.cloudfirewall.ControlPolicyOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ControlPolicy(\"default\", ControlPolicyArgs.builder()\n .direction(\"in\")\n .applicationName(\"ANY\")\n .description(name)\n .aclAction(\"accept\")\n .source(\"127.0.0.1/32\")\n .sourceType(\"net\")\n .destination(\"127.0.0.2/32\")\n .destinationType(\"net\")\n .proto(\"ANY\")\n .build());\n\n var defaultControlPolicyOrder = new ControlPolicyOrder(\"defaultControlPolicyOrder\", ControlPolicyOrderArgs.builder()\n .aclUuid(default_.aclUuid())\n .direction(default_.direction())\n .order(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudfirewall:ControlPolicy\n properties:\n direction: in\n applicationName: ANY\n description: ${name}\n aclAction: accept\n source: 127.0.0.1/32\n sourceType: net\n destination: 127.0.0.2/32\n destinationType: net\n proto: ANY\n defaultControlPolicyOrder:\n type: alicloud:cloudfirewall:ControlPolicyOrder\n name: default\n properties:\n aclUuid: ${default.aclUuid}\n direction: ${default.direction}\n order: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Control Policy Order can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/controlPolicyOrder:ControlPolicyOrder example \u003cacl_uuid\u003e:\u003cdirection\u003e\n```\n\n",
"properties": {
"aclUuid": {
"type": "string",
@@ -121112,7 +122977,7 @@
}
},
"alicloud:cloudfirewall/firewallVpcFirewall:FirewallVpcFirewall": {
- "description": "Provides a Cloud Firewall Vpc Firewall resource.\n\nFor information about Cloud Firewall Vpc Firewall and how to use it, see [What is Vpc Firewall](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createvpcfirewallconfigure).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst current = alicloud.getAccount({});\nconst _default = new alicloud.cloudfirewall.FirewallVpcFirewall(\"default\", {\n vpcFirewallName: \"tf-example\",\n memberUid: current.then(current =\u003e current.id),\n localVpc: {\n vpcId: \"vpc-bp1d065m6hzn1xbw8ibfd\",\n regionNo: \"cn-hangzhou\",\n localVpcCidrTableLists: [{\n localRouteTableId: \"vtb-bp1lj0ddg846856chpzrv\",\n localRouteEntryLists: [{\n localNextHopInstanceId: \"ri-bp1uobww3aputjlwwkyrh\",\n localDestinationCidr: \"10.1.0.0/16\",\n }],\n }],\n },\n peerVpc: {\n vpcId: \"vpc-bp1gcmm64o3caox84v0nz\",\n regionNo: \"cn-hangzhou\",\n peerVpcCidrTableLists: [{\n peerRouteTableId: \"vtb-bp1f516f2hh4sok1ig9b5\",\n peerRouteEntryLists: [{\n peerDestinationCidr: \"10.0.0.0/16\",\n peerNextHopInstanceId: \"ri-bp1thhtgf6ydr2or52l3n\",\n }],\n }],\n },\n status: \"open\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ncurrent = alicloud.get_account()\ndefault = alicloud.cloudfirewall.FirewallVpcFirewall(\"default\",\n vpc_firewall_name=\"tf-example\",\n member_uid=current.id,\n local_vpc={\n \"vpc_id\": \"vpc-bp1d065m6hzn1xbw8ibfd\",\n \"region_no\": \"cn-hangzhou\",\n \"local_vpc_cidr_table_lists\": [{\n \"local_route_table_id\": \"vtb-bp1lj0ddg846856chpzrv\",\n \"local_route_entry_lists\": [{\n \"local_next_hop_instance_id\": \"ri-bp1uobww3aputjlwwkyrh\",\n \"local_destination_cidr\": \"10.1.0.0/16\",\n }],\n }],\n },\n peer_vpc={\n \"vpc_id\": \"vpc-bp1gcmm64o3caox84v0nz\",\n \"region_no\": \"cn-hangzhou\",\n \"peer_vpc_cidr_table_lists\": [{\n \"peer_route_table_id\": \"vtb-bp1f516f2hh4sok1ig9b5\",\n \"peer_route_entry_lists\": [{\n \"peer_destination_cidr\": \"10.0.0.0/16\",\n \"peer_next_hop_instance_id\": \"ri-bp1thhtgf6ydr2or52l3n\",\n }],\n }],\n },\n status=\"open\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = new AliCloud.CloudFirewall.FirewallVpcFirewall(\"default\", new()\n {\n VpcFirewallName = \"tf-example\",\n MemberUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n LocalVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcArgs\n {\n VpcId = \"vpc-bp1d065m6hzn1xbw8ibfd\",\n RegionNo = \"cn-hangzhou\",\n LocalVpcCidrTableLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs\n {\n LocalRouteTableId = \"vtb-bp1lj0ddg846856chpzrv\",\n LocalRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs\n {\n LocalNextHopInstanceId = \"ri-bp1uobww3aputjlwwkyrh\",\n LocalDestinationCidr = \"10.1.0.0/16\",\n },\n },\n },\n },\n },\n PeerVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcArgs\n {\n VpcId = \"vpc-bp1gcmm64o3caox84v0nz\",\n RegionNo = \"cn-hangzhou\",\n PeerVpcCidrTableLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs\n {\n PeerRouteTableId = \"vtb-bp1f516f2hh4sok1ig9b5\",\n PeerRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs\n {\n PeerDestinationCidr = \"10.0.0.0/16\",\n PeerNextHopInstanceId = \"ri-bp1thhtgf6ydr2or52l3n\",\n },\n },\n },\n },\n },\n Status = \"open\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewFirewallVpcFirewall(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallArgs{\n\t\t\tVpcFirewallName: pulumi.String(\"tf-example\"),\n\t\t\tMemberUid: pulumi.String(current.Id),\n\t\t\tLocalVpc: \u0026cloudfirewall.FirewallVpcFirewallLocalVpcArgs{\n\t\t\t\tVpcId: pulumi.String(\"vpc-bp1d065m6hzn1xbw8ibfd\"),\n\t\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\tLocalVpcCidrTableLists: cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArray{\n\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs{\n\t\t\t\t\t\tLocalRouteTableId: pulumi.String(\"vtb-bp1lj0ddg846856chpzrv\"),\n\t\t\t\t\t\tLocalRouteEntryLists: cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArray{\n\t\t\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs{\n\t\t\t\t\t\t\t\tLocalNextHopInstanceId: pulumi.String(\"ri-bp1uobww3aputjlwwkyrh\"),\n\t\t\t\t\t\t\t\tLocalDestinationCidr: pulumi.String(\"10.1.0.0/16\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPeerVpc: \u0026cloudfirewall.FirewallVpcFirewallPeerVpcArgs{\n\t\t\t\tVpcId: pulumi.String(\"vpc-bp1gcmm64o3caox84v0nz\"),\n\t\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\tPeerVpcCidrTableLists: cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArray{\n\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs{\n\t\t\t\t\t\tPeerRouteTableId: pulumi.String(\"vtb-bp1f516f2hh4sok1ig9b5\"),\n\t\t\t\t\t\tPeerRouteEntryLists: cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArray{\n\t\t\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs{\n\t\t\t\t\t\t\t\tPeerDestinationCidr: pulumi.String(\"10.0.0.0/16\"),\n\t\t\t\t\t\t\t\tPeerNextHopInstanceId: pulumi.String(\"ri-bp1thhtgf6ydr2or52l3n\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"open\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewall;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallLocalVpcArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallPeerVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var default_ = new FirewallVpcFirewall(\"default\", FirewallVpcFirewallArgs.builder()\n .vpcFirewallName(\"tf-example\")\n .memberUid(current.id())\n .localVpc(FirewallVpcFirewallLocalVpcArgs.builder()\n .vpcId(\"vpc-bp1d065m6hzn1xbw8ibfd\")\n .regionNo(\"cn-hangzhou\")\n .localVpcCidrTableLists(FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs.builder()\n .localRouteTableId(\"vtb-bp1lj0ddg846856chpzrv\")\n .localRouteEntryLists(FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs.builder()\n .localNextHopInstanceId(\"ri-bp1uobww3aputjlwwkyrh\")\n .localDestinationCidr(\"10.1.0.0/16\")\n .build())\n .build())\n .build())\n .peerVpc(FirewallVpcFirewallPeerVpcArgs.builder()\n .vpcId(\"vpc-bp1gcmm64o3caox84v0nz\")\n .regionNo(\"cn-hangzhou\")\n .peerVpcCidrTableLists(FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs.builder()\n .peerRouteTableId(\"vtb-bp1f516f2hh4sok1ig9b5\")\n .peerRouteEntryLists(FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs.builder()\n .peerDestinationCidr(\"10.0.0.0/16\")\n .peerNextHopInstanceId(\"ri-bp1thhtgf6ydr2or52l3n\")\n .build())\n .build())\n .build())\n .status(\"open\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cloudfirewall:FirewallVpcFirewall\n properties:\n vpcFirewallName: tf-example\n memberUid: ${current.id}\n localVpc:\n vpcId: vpc-bp1d065m6hzn1xbw8ibfd\n regionNo: cn-hangzhou\n localVpcCidrTableLists:\n - localRouteTableId: vtb-bp1lj0ddg846856chpzrv\n localRouteEntryLists:\n - localNextHopInstanceId: ri-bp1uobww3aputjlwwkyrh\n localDestinationCidr: 10.1.0.0/16\n peerVpc:\n vpcId: vpc-bp1gcmm64o3caox84v0nz\n regionNo: cn-hangzhou\n peerVpcCidrTableLists:\n - peerRouteTableId: vtb-bp1f516f2hh4sok1ig9b5\n peerRouteEntryLists:\n - peerDestinationCidr: 10.0.0.0/16\n peerNextHopInstanceId: ri-bp1thhtgf6ydr2or52l3n\n status: open\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Vpc Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewall:FirewallVpcFirewall example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Vpc Firewall resource.\n\nFor information about Cloud Firewall Vpc Firewall and how to use it, see [What is Vpc Firewall](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createvpcfirewallconfigure).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst current = alicloud.getAccount({});\nconst _default = new alicloud.cloudfirewall.FirewallVpcFirewall(\"default\", {\n vpcFirewallName: \"tf-example\",\n memberUid: current.then(current =\u003e current.id),\n localVpc: {\n vpcId: \"vpc-bp1d065m6hzn1xbw8ibfd\",\n regionNo: \"cn-hangzhou\",\n localVpcCidrTableLists: [{\n localRouteTableId: \"vtb-bp1lj0ddg846856chpzrv\",\n localRouteEntryLists: [{\n localNextHopInstanceId: \"ri-bp1uobww3aputjlwwkyrh\",\n localDestinationCidr: \"10.1.0.0/16\",\n }],\n }],\n },\n peerVpc: {\n vpcId: \"vpc-bp1gcmm64o3caox84v0nz\",\n regionNo: \"cn-hangzhou\",\n peerVpcCidrTableLists: [{\n peerRouteTableId: \"vtb-bp1f516f2hh4sok1ig9b5\",\n peerRouteEntryLists: [{\n peerDestinationCidr: \"10.0.0.0/16\",\n peerNextHopInstanceId: \"ri-bp1thhtgf6ydr2or52l3n\",\n }],\n }],\n },\n status: \"open\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ncurrent = alicloud.get_account()\ndefault = alicloud.cloudfirewall.FirewallVpcFirewall(\"default\",\n vpc_firewall_name=\"tf-example\",\n member_uid=current.id,\n local_vpc={\n \"vpc_id\": \"vpc-bp1d065m6hzn1xbw8ibfd\",\n \"region_no\": \"cn-hangzhou\",\n \"local_vpc_cidr_table_lists\": [{\n \"local_route_table_id\": \"vtb-bp1lj0ddg846856chpzrv\",\n \"local_route_entry_lists\": [{\n \"local_next_hop_instance_id\": \"ri-bp1uobww3aputjlwwkyrh\",\n \"local_destination_cidr\": \"10.1.0.0/16\",\n }],\n }],\n },\n peer_vpc={\n \"vpc_id\": \"vpc-bp1gcmm64o3caox84v0nz\",\n \"region_no\": \"cn-hangzhou\",\n \"peer_vpc_cidr_table_lists\": [{\n \"peer_route_table_id\": \"vtb-bp1f516f2hh4sok1ig9b5\",\n \"peer_route_entry_lists\": [{\n \"peer_destination_cidr\": \"10.0.0.0/16\",\n \"peer_next_hop_instance_id\": \"ri-bp1thhtgf6ydr2or52l3n\",\n }],\n }],\n },\n status=\"open\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = new AliCloud.CloudFirewall.FirewallVpcFirewall(\"default\", new()\n {\n VpcFirewallName = \"tf-example\",\n MemberUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n LocalVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcArgs\n {\n VpcId = \"vpc-bp1d065m6hzn1xbw8ibfd\",\n RegionNo = \"cn-hangzhou\",\n LocalVpcCidrTableLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs\n {\n LocalRouteTableId = \"vtb-bp1lj0ddg846856chpzrv\",\n LocalRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs\n {\n LocalNextHopInstanceId = \"ri-bp1uobww3aputjlwwkyrh\",\n LocalDestinationCidr = \"10.1.0.0/16\",\n },\n },\n },\n },\n },\n PeerVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcArgs\n {\n VpcId = \"vpc-bp1gcmm64o3caox84v0nz\",\n RegionNo = \"cn-hangzhou\",\n PeerVpcCidrTableLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs\n {\n PeerRouteTableId = \"vtb-bp1f516f2hh4sok1ig9b5\",\n PeerRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs\n {\n PeerDestinationCidr = \"10.0.0.0/16\",\n PeerNextHopInstanceId = \"ri-bp1thhtgf6ydr2or52l3n\",\n },\n },\n },\n },\n },\n Status = \"open\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewFirewallVpcFirewall(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallArgs{\n\t\t\tVpcFirewallName: pulumi.String(\"tf-example\"),\n\t\t\tMemberUid: pulumi.String(current.Id),\n\t\t\tLocalVpc: \u0026cloudfirewall.FirewallVpcFirewallLocalVpcArgs{\n\t\t\t\tVpcId: pulumi.String(\"vpc-bp1d065m6hzn1xbw8ibfd\"),\n\t\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\tLocalVpcCidrTableLists: cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArray{\n\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs{\n\t\t\t\t\t\tLocalRouteTableId: pulumi.String(\"vtb-bp1lj0ddg846856chpzrv\"),\n\t\t\t\t\t\tLocalRouteEntryLists: cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArray{\n\t\t\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs{\n\t\t\t\t\t\t\t\tLocalNextHopInstanceId: pulumi.String(\"ri-bp1uobww3aputjlwwkyrh\"),\n\t\t\t\t\t\t\t\tLocalDestinationCidr: pulumi.String(\"10.1.0.0/16\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPeerVpc: \u0026cloudfirewall.FirewallVpcFirewallPeerVpcArgs{\n\t\t\t\tVpcId: pulumi.String(\"vpc-bp1gcmm64o3caox84v0nz\"),\n\t\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\tPeerVpcCidrTableLists: cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArray{\n\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs{\n\t\t\t\t\t\tPeerRouteTableId: pulumi.String(\"vtb-bp1f516f2hh4sok1ig9b5\"),\n\t\t\t\t\t\tPeerRouteEntryLists: cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArray{\n\t\t\t\t\t\t\t\u0026cloudfirewall.FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs{\n\t\t\t\t\t\t\t\tPeerDestinationCidr: pulumi.String(\"10.0.0.0/16\"),\n\t\t\t\t\t\t\t\tPeerNextHopInstanceId: pulumi.String(\"ri-bp1thhtgf6ydr2or52l3n\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"open\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewall;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallLocalVpcArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallPeerVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var default_ = new FirewallVpcFirewall(\"default\", FirewallVpcFirewallArgs.builder()\n .vpcFirewallName(\"tf-example\")\n .memberUid(current.id())\n .localVpc(FirewallVpcFirewallLocalVpcArgs.builder()\n .vpcId(\"vpc-bp1d065m6hzn1xbw8ibfd\")\n .regionNo(\"cn-hangzhou\")\n .localVpcCidrTableLists(FirewallVpcFirewallLocalVpcLocalVpcCidrTableListArgs.builder()\n .localRouteTableId(\"vtb-bp1lj0ddg846856chpzrv\")\n .localRouteEntryLists(FirewallVpcFirewallLocalVpcLocalVpcCidrTableListLocalRouteEntryListArgs.builder()\n .localNextHopInstanceId(\"ri-bp1uobww3aputjlwwkyrh\")\n .localDestinationCidr(\"10.1.0.0/16\")\n .build())\n .build())\n .build())\n .peerVpc(FirewallVpcFirewallPeerVpcArgs.builder()\n .vpcId(\"vpc-bp1gcmm64o3caox84v0nz\")\n .regionNo(\"cn-hangzhou\")\n .peerVpcCidrTableLists(FirewallVpcFirewallPeerVpcPeerVpcCidrTableListArgs.builder()\n .peerRouteTableId(\"vtb-bp1f516f2hh4sok1ig9b5\")\n .peerRouteEntryLists(FirewallVpcFirewallPeerVpcPeerVpcCidrTableListPeerRouteEntryListArgs.builder()\n .peerDestinationCidr(\"10.0.0.0/16\")\n .peerNextHopInstanceId(\"ri-bp1thhtgf6ydr2or52l3n\")\n .build())\n .build())\n .build())\n .status(\"open\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:cloudfirewall:FirewallVpcFirewall\n properties:\n vpcFirewallName: tf-example\n memberUid: ${current.id}\n localVpc:\n vpcId: vpc-bp1d065m6hzn1xbw8ibfd\n regionNo: cn-hangzhou\n localVpcCidrTableLists:\n - localRouteTableId: vtb-bp1lj0ddg846856chpzrv\n localRouteEntryLists:\n - localNextHopInstanceId: ri-bp1uobww3aputjlwwkyrh\n localDestinationCidr: 10.1.0.0/16\n peerVpc:\n vpcId: vpc-bp1gcmm64o3caox84v0nz\n regionNo: cn-hangzhou\n peerVpcCidrTableLists:\n - peerRouteTableId: vtb-bp1f516f2hh4sok1ig9b5\n peerRouteEntryLists:\n - peerDestinationCidr: 10.0.0.0/16\n peerNextHopInstanceId: ri-bp1thhtgf6ydr2or52l3n\n status: open\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Vpc Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewall:FirewallVpcFirewall example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "integer",
@@ -121251,7 +123116,7 @@
}
},
"alicloud:cloudfirewall/firewallVpcFirewallCen:FirewallVpcFirewallCen": {
- "description": "Provides a Cloud Firewall Vpc Firewall Cen resource.\n\nFor information about Cloud Firewall Vpc Firewall Cen and how to use it, see [What is Vpc Firewall Cen](https://www.alibabacloud.com/help/en/cloud-firewall/latest/createvpcfirewallcenconfigure).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// These resource primary keys should be replaced with your actual values.\nconst _default = new alicloud.cloudfirewall.FirewallVpcFirewallCen(\"default\", {\n cenId: \"cen-xxx\",\n localVpc: {\n networkInstanceId: \"vpc-xxx\",\n },\n status: \"open\",\n memberUid: \"14151*****827022\",\n vpcRegion: \"cn-hangzhou\",\n vpcFirewallName: \"tf-vpc-firewall-name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# These resource primary keys should be replaced with your actual values.\ndefault = alicloud.cloudfirewall.FirewallVpcFirewallCen(\"default\",\n cen_id=\"cen-xxx\",\n local_vpc={\n \"network_instance_id\": \"vpc-xxx\",\n },\n status=\"open\",\n member_uid=\"14151*****827022\",\n vpc_region=\"cn-hangzhou\",\n vpc_firewall_name=\"tf-vpc-firewall-name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // These resource primary keys should be replaced with your actual values.\n var @default = new AliCloud.CloudFirewall.FirewallVpcFirewallCen(\"default\", new()\n {\n CenId = \"cen-xxx\",\n LocalVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallCenLocalVpcArgs\n {\n NetworkInstanceId = \"vpc-xxx\",\n },\n Status = \"open\",\n MemberUid = \"14151*****827022\",\n VpcRegion = \"cn-hangzhou\",\n VpcFirewallName = \"tf-vpc-firewall-name\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// These resource primary keys should be replaced with your actual values.\n\t\t_, err := cloudfirewall.NewFirewallVpcFirewallCen(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallCenArgs{\n\t\t\tCenId: pulumi.String(\"cen-xxx\"),\n\t\t\tLocalVpc: \u0026cloudfirewall.FirewallVpcFirewallCenLocalVpcArgs{\n\t\t\t\tNetworkInstanceId: pulumi.String(\"vpc-xxx\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"open\"),\n\t\t\tMemberUid: pulumi.String(\"14151*****827022\"),\n\t\t\tVpcRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tVpcFirewallName: pulumi.String(\"tf-vpc-firewall-name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallCen;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallCenArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallCenLocalVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // These resource primary keys should be replaced with your actual values.\n var default_ = new FirewallVpcFirewallCen(\"default\", FirewallVpcFirewallCenArgs.builder()\n .cenId(\"cen-xxx\")\n .localVpc(FirewallVpcFirewallCenLocalVpcArgs.builder()\n .networkInstanceId(\"vpc-xxx\")\n .build())\n .status(\"open\")\n .memberUid(\"14151*****827022\")\n .vpcRegion(\"cn-hangzhou\")\n .vpcFirewallName(\"tf-vpc-firewall-name\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # These resource primary keys should be replaced with your actual values.\n default:\n type: alicloud:cloudfirewall:FirewallVpcFirewallCen\n properties:\n cenId: cen-xxx\n localVpc:\n networkInstanceId: vpc-xxx\n status: open\n memberUid: 14151*****827022\n vpcRegion: cn-hangzhou\n vpcFirewallName: tf-vpc-firewall-name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Vpc Firewall Cen can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewallCen:FirewallVpcFirewallCen example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Vpc Firewall Cen resource.\n\nFor information about Cloud Firewall Vpc Firewall Cen and how to use it, see [What is Vpc Firewall Cen](https://www.alibabacloud.com/help/en/cloud-firewall/latest/createvpcfirewallcenconfigure).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// These resource primary keys should be replaced with your actual values.\nconst _default = new alicloud.cloudfirewall.FirewallVpcFirewallCen(\"default\", {\n cenId: \"cen-xxx\",\n localVpc: {\n networkInstanceId: \"vpc-xxx\",\n },\n status: \"open\",\n memberUid: \"14151*****827022\",\n vpcRegion: \"cn-hangzhou\",\n vpcFirewallName: \"tf-vpc-firewall-name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# These resource primary keys should be replaced with your actual values.\ndefault = alicloud.cloudfirewall.FirewallVpcFirewallCen(\"default\",\n cen_id=\"cen-xxx\",\n local_vpc={\n \"network_instance_id\": \"vpc-xxx\",\n },\n status=\"open\",\n member_uid=\"14151*****827022\",\n vpc_region=\"cn-hangzhou\",\n vpc_firewall_name=\"tf-vpc-firewall-name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // These resource primary keys should be replaced with your actual values.\n var @default = new AliCloud.CloudFirewall.FirewallVpcFirewallCen(\"default\", new()\n {\n CenId = \"cen-xxx\",\n LocalVpc = new AliCloud.CloudFirewall.Inputs.FirewallVpcFirewallCenLocalVpcArgs\n {\n NetworkInstanceId = \"vpc-xxx\",\n },\n Status = \"open\",\n MemberUid = \"14151*****827022\",\n VpcRegion = \"cn-hangzhou\",\n VpcFirewallName = \"tf-vpc-firewall-name\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// These resource primary keys should be replaced with your actual values.\n\t\t_, err := cloudfirewall.NewFirewallVpcFirewallCen(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallCenArgs{\n\t\t\tCenId: pulumi.String(\"cen-xxx\"),\n\t\t\tLocalVpc: \u0026cloudfirewall.FirewallVpcFirewallCenLocalVpcArgs{\n\t\t\t\tNetworkInstanceId: pulumi.String(\"vpc-xxx\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"open\"),\n\t\t\tMemberUid: pulumi.String(\"14151*****827022\"),\n\t\t\tVpcRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tVpcFirewallName: pulumi.String(\"tf-vpc-firewall-name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallCen;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallCenArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.FirewallVpcFirewallCenLocalVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // These resource primary keys should be replaced with your actual values.\n var default_ = new FirewallVpcFirewallCen(\"default\", FirewallVpcFirewallCenArgs.builder()\n .cenId(\"cen-xxx\")\n .localVpc(FirewallVpcFirewallCenLocalVpcArgs.builder()\n .networkInstanceId(\"vpc-xxx\")\n .build())\n .status(\"open\")\n .memberUid(\"14151*****827022\")\n .vpcRegion(\"cn-hangzhou\")\n .vpcFirewallName(\"tf-vpc-firewall-name\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # These resource primary keys should be replaced with your actual values.\n default:\n type: alicloud:cloudfirewall:FirewallVpcFirewallCen\n properties:\n cenId: cen-xxx\n localVpc:\n networkInstanceId: vpc-xxx\n status: open\n memberUid: 14151*****827022\n vpcRegion: cn-hangzhou\n vpcFirewallName: tf-vpc-firewall-name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Vpc Firewall Cen can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewallCen:FirewallVpcFirewallCen example \u003cid\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -121390,7 +123255,7 @@
}
},
"alicloud:cloudfirewall/firewallVpcFirewallControlPolicy:FirewallVpcFirewallControlPolicy": {
- "description": "Provides a Cloud Firewall Vpc Firewall Control Policy resource.\n\nFor information about Cloud Firewall Vpc Firewall Control Policy and how to use it, see [What is Vpc Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/latest/createvpcfirewallcontrolpolicy).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: \"example_value\",\n tags: {\n Created: \"TF\",\n For: \"acceptance test\",\n },\n});\nconst defaultFirewallVpcFirewallControlPolicy = new alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy(\"default\", {\n order: 1,\n destination: \"127.0.0.2/32\",\n applicationName: \"ANY\",\n description: \"example_value\",\n sourceType: \"net\",\n destPort: \"80/88\",\n aclAction: \"accept\",\n lang: \"zh\",\n destinationType: \"net\",\n source: \"127.0.0.1/32\",\n destPortType: \"port\",\n proto: \"TCP\",\n release: true,\n memberUid: _default.then(_default =\u003e _default.id),\n vpcFirewallId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=\"example_value\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"acceptance test\",\n })\ndefault_firewall_vpc_firewall_control_policy = alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy(\"default\",\n order=1,\n destination=\"127.0.0.2/32\",\n application_name=\"ANY\",\n description=\"example_value\",\n source_type=\"net\",\n dest_port=\"80/88\",\n acl_action=\"accept\",\n lang=\"zh\",\n destination_type=\"net\",\n source=\"127.0.0.1/32\",\n dest_port_type=\"port\",\n proto=\"TCP\",\n release=True,\n member_uid=default.id,\n vpc_firewall_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = \"example_value\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"acceptance test\" },\n },\n });\n\n var defaultFirewallVpcFirewallControlPolicy = new AliCloud.CloudFirewall.FirewallVpcFirewallControlPolicy(\"default\", new()\n {\n Order = 1,\n Destination = \"127.0.0.2/32\",\n ApplicationName = \"ANY\",\n Description = \"example_value\",\n SourceType = \"net\",\n DestPort = \"80/88\",\n AclAction = \"accept\",\n Lang = \"zh\",\n DestinationType = \"net\",\n Source = \"127.0.0.1/32\",\n DestPortType = \"port\",\n Proto = \"TCP\",\n Release = true,\n MemberUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n VpcFirewallId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"acceptance test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewFirewallVpcFirewallControlPolicy(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallControlPolicyArgs{\n\t\t\tOrder: pulumi.Int(1),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestPort: pulumi.String(\"80/88\"),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tLang: pulumi.String(\"zh\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tDestPortType: pulumi.String(\"port\"),\n\t\t\tProto: pulumi.String(\"TCP\"),\n\t\t\tRelease: pulumi.Bool(true),\n\t\t\tMemberUid: pulumi.String(_default.Id),\n\t\t\tVpcFirewallId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(\"example_value\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"acceptance test\")\n ))\n .build());\n\n var defaultFirewallVpcFirewallControlPolicy = new FirewallVpcFirewallControlPolicy(\"defaultFirewallVpcFirewallControlPolicy\", FirewallVpcFirewallControlPolicyArgs.builder()\n .order(1)\n .destination(\"127.0.0.2/32\")\n .applicationName(\"ANY\")\n .description(\"example_value\")\n .sourceType(\"net\")\n .destPort(\"80/88\")\n .aclAction(\"accept\")\n .lang(\"zh\")\n .destinationType(\"net\")\n .source(\"127.0.0.1/32\")\n .destPortType(\"port\")\n .proto(\"TCP\")\n .release(true)\n .memberUid(default_.id())\n .vpcFirewallId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n description: example_value\n tags:\n Created: TF\n For: acceptance test\n defaultFirewallVpcFirewallControlPolicy:\n type: alicloud:cloudfirewall:FirewallVpcFirewallControlPolicy\n name: default\n properties:\n order: '1'\n destination: 127.0.0.2/32\n applicationName: ANY\n description: example_value\n sourceType: net\n destPort: 80/88\n aclAction: accept\n lang: zh\n destinationType: net\n source: 127.0.0.1/32\n destPortType: port\n proto: TCP\n release: true\n memberUid: ${default.id}\n vpcFirewallId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Vpc Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewallControlPolicy:FirewallVpcFirewallControlPolicy example \u003cvpc_firewall_id\u003e:\u003cacl_uuid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Vpc Firewall Control Policy resource.\n\nVPC Control Policy.\n\nFor information about Cloud Firewall Vpc Firewall Control Policy and how to use it, see [What is Vpc Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/latest/createvpcfirewallcontrolpolicy).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultInstance = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n description: \"example_value\",\n tags: {\n Created: \"TF\",\n For: \"acceptance test\",\n },\n});\nconst defaultFirewallVpcFirewallControlPolicy = new alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy(\"default\", {\n order: 1,\n destination: \"127.0.0.2/32\",\n applicationName: \"ANY\",\n description: \"example_value\",\n sourceType: \"net\",\n destPort: \"80/88\",\n aclAction: \"accept\",\n lang: \"zh\",\n destinationType: \"net\",\n source: \"127.0.0.1/32\",\n destPortType: \"port\",\n proto: \"TCP\",\n release: \"true\",\n memberUid: _default.then(_default =\u003e _default.id),\n vpcFirewallId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_instance = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n description=\"example_value\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"acceptance test\",\n })\ndefault_firewall_vpc_firewall_control_policy = alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy(\"default\",\n order=1,\n destination=\"127.0.0.2/32\",\n application_name=\"ANY\",\n description=\"example_value\",\n source_type=\"net\",\n dest_port=\"80/88\",\n acl_action=\"accept\",\n lang=\"zh\",\n destination_type=\"net\",\n source=\"127.0.0.1/32\",\n dest_port_type=\"port\",\n proto=\"TCP\",\n release=\"true\",\n member_uid=default.id,\n vpc_firewall_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultInstance = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n Description = \"example_value\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"acceptance test\" },\n },\n });\n\n var defaultFirewallVpcFirewallControlPolicy = new AliCloud.CloudFirewall.FirewallVpcFirewallControlPolicy(\"default\", new()\n {\n Order = 1,\n Destination = \"127.0.0.2/32\",\n ApplicationName = \"ANY\",\n Description = \"example_value\",\n SourceType = \"net\",\n DestPort = \"80/88\",\n AclAction = \"accept\",\n Lang = \"zh\",\n DestinationType = \"net\",\n Source = \"127.0.0.1/32\",\n DestPortType = \"port\",\n Proto = \"TCP\",\n Release = \"true\",\n MemberUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n VpcFirewallId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"acceptance test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewFirewallVpcFirewallControlPolicy(ctx, \"default\", \u0026cloudfirewall.FirewallVpcFirewallControlPolicyArgs{\n\t\t\tOrder: pulumi.Int(1),\n\t\t\tDestination: pulumi.String(\"127.0.0.2/32\"),\n\t\t\tApplicationName: pulumi.String(\"ANY\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tDestPort: pulumi.String(\"80/88\"),\n\t\t\tAclAction: pulumi.String(\"accept\"),\n\t\t\tLang: pulumi.String(\"zh\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tSource: pulumi.String(\"127.0.0.1/32\"),\n\t\t\tDestPortType: pulumi.String(\"port\"),\n\t\t\tProto: pulumi.String(\"TCP\"),\n\t\t\tRelease: pulumi.String(\"true\"),\n\t\t\tMemberUid: pulumi.String(_default.Id),\n\t\t\tVpcFirewallId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.FirewallVpcFirewallControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .cenInstanceName(name)\n .description(\"example_value\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"acceptance test\")\n ))\n .build());\n\n var defaultFirewallVpcFirewallControlPolicy = new FirewallVpcFirewallControlPolicy(\"defaultFirewallVpcFirewallControlPolicy\", FirewallVpcFirewallControlPolicyArgs.builder()\n .order(1)\n .destination(\"127.0.0.2/32\")\n .applicationName(\"ANY\")\n .description(\"example_value\")\n .sourceType(\"net\")\n .destPort(\"80/88\")\n .aclAction(\"accept\")\n .lang(\"zh\")\n .destinationType(\"net\")\n .source(\"127.0.0.1/32\")\n .destPortType(\"port\")\n .proto(\"TCP\")\n .release(\"true\")\n .memberUid(default_.id())\n .vpcFirewallId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInstance:\n type: alicloud:cen:Instance\n name: default\n properties:\n cenInstanceName: ${name}\n description: example_value\n tags:\n Created: TF\n For: acceptance test\n defaultFirewallVpcFirewallControlPolicy:\n type: alicloud:cloudfirewall:FirewallVpcFirewallControlPolicy\n name: default\n properties:\n order: '1'\n destination: 127.0.0.2/32\n applicationName: ANY\n description: example_value\n sourceType: net\n destPort: 80/88\n aclAction: accept\n lang: zh\n destinationType: net\n source: 127.0.0.1/32\n destPortType: port\n proto: TCP\n release: true\n memberUid: ${default.id}\n vpcFirewallId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Vpc Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/firewallVpcFirewallControlPolicy:FirewallVpcFirewallControlPolicy example \u003cvpc_firewall_id\u003e:\u003cacl_uuid\u003e\n```\n\n",
"properties": {
"aclAction": {
"type": "string",
@@ -121408,6 +123273,17 @@
"type": "string",
"description": "The type of the applications that the access control policy supports. Valid values: `FTP`, `HTTP`, `HTTPS`, `MySQL`, `SMTP`, `SMTPS`, `RDP`, `VNC`, `SSH`, `Redis`, `MQTT`, `MongoDB`, `Memcache`, `SSL`, `ANY`.\n"
},
+ "applicationNameLists": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of application types that the access control policy supports. \n\u003e **NOTE:** If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `TCP`, you can set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to any valid value. If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `UDP`, `ICMP`, or `ANY`, you can only set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to `[\"ANY\"]`. From version 1.267.0, You must specify at least one of the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e. If you specify both \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e, only the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e takes effect.\n"
+ },
+ "createTime": {
+ "type": "integer",
+ "description": "(Available since v1.267.0) The time when the policy was created.\n"
+ },
"description": {
"type": "string",
"description": "Access control over VPC firewalls description of the strategy information.\n"
@@ -121450,6 +123326,14 @@
"type": "string",
"description": "The type of the destination address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`domain`\" pulumi-lang-dotnet=\"`Domain`\" pulumi-lang-go=\"`domain`\" pulumi-lang-python=\"`domain`\" pulumi-lang-yaml=\"`domain`\" pulumi-lang-java=\"`domain`\"\u003e`domain`\u003c/span\u003e.\n"
},
+ "domainResolveType": {
+ "type": "string",
+ "description": "The domain name resolution method for the access control policy. Valid values: `FQDN`, `DNS`, `FQDN_AND_DNS`.\n"
+ },
+ "endTime": {
+ "type": "integer",
+ "description": "The end time of the policy validity period.\n"
+ },
"hitTimes": {
"type": "integer",
"description": "Control strategy of hits per second.\n"
@@ -121471,9 +123355,28 @@
"description": "The type of the protocol in the access control policy. Valid values: `ANY`, `TCP`, `UDP`, `ICMP`.\n"
},
"release": {
- "type": "boolean",
+ "type": "string",
"description": "The enabled status of the access control policy. The policy is enabled by default after it is created.. Valid values:\n"
},
+ "repeatDays": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "description": "The days of the week or month on which the policy is recurrently active. Valid values:\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Weekly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`6`\" pulumi-lang-dotnet=\"`6`\" pulumi-lang-go=\"`6`\" pulumi-lang-python=\"`6`\" pulumi-lang-yaml=\"`6`\" pulumi-lang-java=\"`6`\"\u003e`6`\u003c/span\u003e.\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Monthly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`31`\" pulumi-lang-dotnet=\"`31`\" pulumi-lang-go=\"`31`\" pulumi-lang-python=\"`31`\" pulumi-lang-yaml=\"`31`\" pulumi-lang-java=\"`31`\"\u003e`31`\u003c/span\u003e.\n"
+ },
+ "repeatEndTime": {
+ "type": "string",
+ "description": "The recurring end time of the policy validity period.\n"
+ },
+ "repeatStartTime": {
+ "type": "string",
+ "description": "The recurring start time of the policy validity period.\n"
+ },
+ "repeatType": {
+ "type": "string",
+ "description": "The recurrence type for the policy validity period. Default value: `Permanent`. Valid values: `Permanent`, `None`, `Daily`, `Weekly`, `Monthly`.\n"
+ },
"source": {
"type": "string",
"description": "Access control over VPC firewalls strategy in the source address.\n"
@@ -121493,6 +123396,10 @@
"type": "string",
"description": "The type of the source address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e.\n"
},
+ "startTime": {
+ "type": "integer",
+ "description": "The start time of the policy validity period.\n"
+ },
"vpcFirewallId": {
"type": "string",
"description": "The ID of the VPC firewall instance. Valid values:\n- When the VPC firewall protects traffic between two VPCs connected through the cloud enterprise network, the policy group ID uses the cloud enterprise network instance ID.\n- When the VPC firewall protects traffic between two VPCs connected through the express connection, the policy group ID uses the ID of the VPC firewall instance.\n"
@@ -121502,7 +123409,7 @@
"aclAction",
"aclUuid",
"applicationId",
- "applicationName",
+ "createTime",
"description",
"destPort",
"destPortGroupPorts",
@@ -121511,11 +123418,13 @@
"destinationGroupCidrs",
"destinationGroupType",
"destinationType",
+ "domainResolveType",
"hitTimes",
"memberUid",
"order",
"proto",
"release",
+ "repeatType",
"source",
"sourceGroupCidrs",
"sourceGroupType",
@@ -121531,6 +123440,13 @@
"type": "string",
"description": "The type of the applications that the access control policy supports. Valid values: `FTP`, `HTTP`, `HTTPS`, `MySQL`, `SMTP`, `SMTPS`, `RDP`, `VNC`, `SSH`, `Redis`, `MQTT`, `MongoDB`, `Memcache`, `SSL`, `ANY`.\n"
},
+ "applicationNameLists": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of application types that the access control policy supports. \n\u003e **NOTE:** If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `TCP`, you can set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to any valid value. If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `UDP`, `ICMP`, or `ANY`, you can only set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to `[\"ANY\"]`. From version 1.267.0, You must specify at least one of the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e. If you specify both \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e, only the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e takes effect.\n"
+ },
"description": {
"type": "string",
"description": "Access control over VPC firewalls description of the strategy information.\n"
@@ -121555,6 +123471,14 @@
"type": "string",
"description": "The type of the destination address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`domain`\" pulumi-lang-dotnet=\"`Domain`\" pulumi-lang-go=\"`domain`\" pulumi-lang-python=\"`domain`\" pulumi-lang-yaml=\"`domain`\" pulumi-lang-java=\"`domain`\"\u003e`domain`\u003c/span\u003e.\n"
},
+ "domainResolveType": {
+ "type": "string",
+ "description": "The domain name resolution method for the access control policy. Valid values: `FQDN`, `DNS`, `FQDN_AND_DNS`.\n"
+ },
+ "endTime": {
+ "type": "integer",
+ "description": "The end time of the policy validity period.\n"
+ },
"lang": {
"type": "string",
"description": "The language of the content within the request and response. Valid values: \u003cspan pulumi-lang-nodejs=\"`zh`\" pulumi-lang-dotnet=\"`Zh`\" pulumi-lang-go=\"`zh`\" pulumi-lang-python=\"`zh`\" pulumi-lang-yaml=\"`zh`\" pulumi-lang-java=\"`zh`\"\u003e`zh`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`en`\" pulumi-lang-dotnet=\"`En`\" pulumi-lang-go=\"`en`\" pulumi-lang-python=\"`en`\" pulumi-lang-yaml=\"`en`\" pulumi-lang-java=\"`en`\"\u003e`en`\u003c/span\u003e.\n"
@@ -121574,9 +123498,28 @@
"description": "The type of the protocol in the access control policy. Valid values: `ANY`, `TCP`, `UDP`, `ICMP`.\n"
},
"release": {
- "type": "boolean",
+ "type": "string",
"description": "The enabled status of the access control policy. The policy is enabled by default after it is created.. Valid values:\n"
},
+ "repeatDays": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "description": "The days of the week or month on which the policy is recurrently active. Valid values:\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Weekly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`6`\" pulumi-lang-dotnet=\"`6`\" pulumi-lang-go=\"`6`\" pulumi-lang-python=\"`6`\" pulumi-lang-yaml=\"`6`\" pulumi-lang-java=\"`6`\"\u003e`6`\u003c/span\u003e.\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Monthly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`31`\" pulumi-lang-dotnet=\"`31`\" pulumi-lang-go=\"`31`\" pulumi-lang-python=\"`31`\" pulumi-lang-yaml=\"`31`\" pulumi-lang-java=\"`31`\"\u003e`31`\u003c/span\u003e.\n"
+ },
+ "repeatEndTime": {
+ "type": "string",
+ "description": "The recurring end time of the policy validity period.\n"
+ },
+ "repeatStartTime": {
+ "type": "string",
+ "description": "The recurring start time of the policy validity period.\n"
+ },
+ "repeatType": {
+ "type": "string",
+ "description": "The recurrence type for the policy validity period. Default value: `Permanent`. Valid values: `Permanent`, `None`, `Daily`, `Weekly`, `Monthly`.\n"
+ },
"source": {
"type": "string",
"description": "Access control over VPC firewalls strategy in the source address.\n"
@@ -121585,6 +123528,10 @@
"type": "string",
"description": "The type of the source address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e.\n"
},
+ "startTime": {
+ "type": "integer",
+ "description": "The start time of the policy validity period.\n"
+ },
"vpcFirewallId": {
"type": "string",
"description": "The ID of the VPC firewall instance. Valid values:\n- When the VPC firewall protects traffic between two VPCs connected through the cloud enterprise network, the policy group ID uses the cloud enterprise network instance ID.\n- When the VPC firewall protects traffic between two VPCs connected through the express connection, the policy group ID uses the ID of the VPC firewall instance.\n",
@@ -121593,7 +123540,6 @@
},
"requiredInputs": [
"aclAction",
- "applicationName",
"description",
"destination",
"destinationType",
@@ -121622,6 +123568,17 @@
"type": "string",
"description": "The type of the applications that the access control policy supports. Valid values: `FTP`, `HTTP`, `HTTPS`, `MySQL`, `SMTP`, `SMTPS`, `RDP`, `VNC`, `SSH`, `Redis`, `MQTT`, `MongoDB`, `Memcache`, `SSL`, `ANY`.\n"
},
+ "applicationNameLists": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "The list of application types that the access control policy supports. \n\u003e **NOTE:** If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `TCP`, you can set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to any valid value. If \u003cspan pulumi-lang-nodejs=\"`proto`\" pulumi-lang-dotnet=\"`Proto`\" pulumi-lang-go=\"`proto`\" pulumi-lang-python=\"`proto`\" pulumi-lang-yaml=\"`proto`\" pulumi-lang-java=\"`proto`\"\u003e`proto`\u003c/span\u003e is set to `UDP`, `ICMP`, or `ANY`, you can only set \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e to `[\"ANY\"]`. From version 1.267.0, You must specify at least one of the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e. If you specify both \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`applicationName`\" pulumi-lang-dotnet=\"`ApplicationName`\" pulumi-lang-go=\"`applicationName`\" pulumi-lang-python=\"`application_name`\" pulumi-lang-yaml=\"`applicationName`\" pulumi-lang-java=\"`applicationName`\"\u003e`application_name`\u003c/span\u003e, only the \u003cspan pulumi-lang-nodejs=\"`applicationNameList`\" pulumi-lang-dotnet=\"`ApplicationNameList`\" pulumi-lang-go=\"`applicationNameList`\" pulumi-lang-python=\"`application_name_list`\" pulumi-lang-yaml=\"`applicationNameList`\" pulumi-lang-java=\"`applicationNameList`\"\u003e`application_name_list`\u003c/span\u003e takes effect.\n"
+ },
+ "createTime": {
+ "type": "integer",
+ "description": "(Available since v1.267.0) The time when the policy was created.\n"
+ },
"description": {
"type": "string",
"description": "Access control over VPC firewalls description of the strategy information.\n"
@@ -121664,6 +123621,14 @@
"type": "string",
"description": "The type of the destination address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`domain`\" pulumi-lang-dotnet=\"`Domain`\" pulumi-lang-go=\"`domain`\" pulumi-lang-python=\"`domain`\" pulumi-lang-yaml=\"`domain`\" pulumi-lang-java=\"`domain`\"\u003e`domain`\u003c/span\u003e.\n"
},
+ "domainResolveType": {
+ "type": "string",
+ "description": "The domain name resolution method for the access control policy. Valid values: `FQDN`, `DNS`, `FQDN_AND_DNS`.\n"
+ },
+ "endTime": {
+ "type": "integer",
+ "description": "The end time of the policy validity period.\n"
+ },
"hitTimes": {
"type": "integer",
"description": "Control strategy of hits per second.\n"
@@ -121687,9 +123652,28 @@
"description": "The type of the protocol in the access control policy. Valid values: `ANY`, `TCP`, `UDP`, `ICMP`.\n"
},
"release": {
- "type": "boolean",
+ "type": "string",
"description": "The enabled status of the access control policy. The policy is enabled by default after it is created.. Valid values:\n"
},
+ "repeatDays": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "description": "The days of the week or month on which the policy is recurrently active. Valid values:\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Weekly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`6`\" pulumi-lang-dotnet=\"`6`\" pulumi-lang-go=\"`6`\" pulumi-lang-python=\"`6`\" pulumi-lang-yaml=\"`6`\" pulumi-lang-java=\"`6`\"\u003e`6`\u003c/span\u003e.\n- If \u003cspan pulumi-lang-nodejs=\"`repeatType`\" pulumi-lang-dotnet=\"`RepeatType`\" pulumi-lang-go=\"`repeatType`\" pulumi-lang-python=\"`repeat_type`\" pulumi-lang-yaml=\"`repeatType`\" pulumi-lang-java=\"`repeatType`\"\u003e`repeat_type`\u003c/span\u003e is set to `Monthly`. Valid values: \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`31`\" pulumi-lang-dotnet=\"`31`\" pulumi-lang-go=\"`31`\" pulumi-lang-python=\"`31`\" pulumi-lang-yaml=\"`31`\" pulumi-lang-java=\"`31`\"\u003e`31`\u003c/span\u003e.\n"
+ },
+ "repeatEndTime": {
+ "type": "string",
+ "description": "The recurring end time of the policy validity period.\n"
+ },
+ "repeatStartTime": {
+ "type": "string",
+ "description": "The recurring start time of the policy validity period.\n"
+ },
+ "repeatType": {
+ "type": "string",
+ "description": "The recurrence type for the policy validity period. Default value: `Permanent`. Valid values: `Permanent`, `None`, `Daily`, `Weekly`, `Monthly`.\n"
+ },
"source": {
"type": "string",
"description": "Access control over VPC firewalls strategy in the source address.\n"
@@ -121709,6 +123693,10 @@
"type": "string",
"description": "The type of the source address in the access control policy. Valid values: \u003cspan pulumi-lang-nodejs=\"`net`\" pulumi-lang-dotnet=\"`Net`\" pulumi-lang-go=\"`net`\" pulumi-lang-python=\"`net`\" pulumi-lang-yaml=\"`net`\" pulumi-lang-java=\"`net`\"\u003e`net`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e.\n"
},
+ "startTime": {
+ "type": "integer",
+ "description": "The start time of the policy validity period.\n"
+ },
"vpcFirewallId": {
"type": "string",
"description": "The ID of the VPC firewall instance. Valid values:\n- When the VPC firewall protects traffic between two VPCs connected through the cloud enterprise network, the policy group ID uses the cloud enterprise network instance ID.\n- When the VPC firewall protects traffic between two VPCs connected through the express connection, the policy group ID uses the ID of the VPC firewall instance.\n",
@@ -121719,7 +123707,7 @@
}
},
"alicloud:cloudfirewall/instance:Instance": {
- "description": "Provides a Cloud Firewall Instance resource.\n\nFor information about Cloud Firewall Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/product/90174.htm).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n\n## Example Usage\n\nBasic Usage\n\ncreate a pay-as-you-go instance\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst payAsYouGo = new alicloud.cloudfirewall.Instance(\"PayAsYouGo\", {paymentType: \"PayAsYouGo\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\npay_as_you_go = alicloud.cloudfirewall.Instance(\"PayAsYouGo\", payment_type=\"PayAsYouGo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var payAsYouGo = new AliCloud.CloudFirewall.Instance(\"PayAsYouGo\", new()\n {\n PaymentType = \"PayAsYouGo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewInstance(ctx, \"PayAsYouGo\", \u0026cloudfirewall.InstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.Instance;\nimport com.pulumi.alicloud.cloudfirewall.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var payAsYouGo = new Instance(\"payAsYouGo\", InstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n payAsYouGo:\n type: alicloud:cloudfirewall:Instance\n name: PayAsYouGo\n properties:\n paymentType: PayAsYouGo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\ncreate a subscription instance\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst subscription = new alicloud.cloudfirewall.Instance(\"Subscription\", {\n paymentType: \"Subscription\",\n spec: \"premium_version\",\n ipNumber: 20,\n bandWidth: 10,\n cfwLog: false,\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsubscription = alicloud.cloudfirewall.Instance(\"Subscription\",\n payment_type=\"Subscription\",\n spec=\"premium_version\",\n ip_number=20,\n band_width=10,\n cfw_log=False,\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var subscription = new AliCloud.CloudFirewall.Instance(\"Subscription\", new()\n {\n PaymentType = \"Subscription\",\n Spec = \"premium_version\",\n IpNumber = 20,\n BandWidth = 10,\n CfwLog = false,\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewInstance(ctx, \"Subscription\", \u0026cloudfirewall.InstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tSpec: pulumi.String(\"premium_version\"),\n\t\t\tIpNumber: pulumi.Int(20),\n\t\t\tBandWidth: pulumi.Int(10),\n\t\t\tCfwLog: pulumi.Bool(false),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.Instance;\nimport com.pulumi.alicloud.cloudfirewall.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var subscription = new Instance(\"subscription\", InstanceArgs.builder()\n .paymentType(\"Subscription\")\n .spec(\"premium_version\")\n .ipNumber(20)\n .bandWidth(10)\n .cfwLog(false)\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n subscription:\n type: alicloud:cloudfirewall:Instance\n name: Subscription\n properties:\n paymentType: Subscription\n spec: premium_version\n ipNumber: 20\n bandWidth: 10\n cfwLog: false\n period: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Instance resource.\n\nFor information about Cloud Firewall Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/product/90174.htm).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n\n## Example Usage\n\nBasic Usage\n\ncreate a pay-as-you-go instance\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst payAsYouGo = new alicloud.cloudfirewall.Instance(\"PayAsYouGo\", {paymentType: \"PayAsYouGo\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\npay_as_you_go = alicloud.cloudfirewall.Instance(\"PayAsYouGo\", payment_type=\"PayAsYouGo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var payAsYouGo = new AliCloud.CloudFirewall.Instance(\"PayAsYouGo\", new()\n {\n PaymentType = \"PayAsYouGo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewInstance(ctx, \"PayAsYouGo\", \u0026cloudfirewall.InstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.Instance;\nimport com.pulumi.alicloud.cloudfirewall.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var payAsYouGo = new Instance(\"payAsYouGo\", InstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n payAsYouGo:\n type: alicloud:cloudfirewall:Instance\n name: PayAsYouGo\n properties:\n paymentType: PayAsYouGo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\ncreate a subscription instance\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst subscription = new alicloud.cloudfirewall.Instance(\"Subscription\", {\n paymentType: \"Subscription\",\n spec: \"premium_version\",\n ipNumber: 20,\n bandWidth: 10,\n cfwLog: false,\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsubscription = alicloud.cloudfirewall.Instance(\"Subscription\",\n payment_type=\"Subscription\",\n spec=\"premium_version\",\n ip_number=20,\n band_width=10,\n cfw_log=False,\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var subscription = new AliCloud.CloudFirewall.Instance(\"Subscription\", new()\n {\n PaymentType = \"Subscription\",\n Spec = \"premium_version\",\n IpNumber = 20,\n BandWidth = 10,\n CfwLog = false,\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfirewall.NewInstance(ctx, \"Subscription\", \u0026cloudfirewall.InstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tSpec: pulumi.String(\"premium_version\"),\n\t\t\tIpNumber: pulumi.Int(20),\n\t\t\tBandWidth: pulumi.Int(10),\n\t\t\tCfwLog: pulumi.Bool(false),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudfirewall.Instance;\nimport com.pulumi.alicloud.cloudfirewall.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var subscription = new Instance(\"subscription\", InstanceArgs.builder()\n .paymentType(\"Subscription\")\n .spec(\"premium_version\")\n .ipNumber(20)\n .bandWidth(10)\n .cfwLog(false)\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n subscription:\n type: alicloud:cloudfirewall:Instance\n name: Subscription\n properties:\n paymentType: Subscription\n spec: premium_version\n ipNumber: 20\n bandWidth: 10\n cfwLog: false\n period: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"accountNumber": {
"type": "integer",
@@ -121998,7 +123986,7 @@
}
},
"alicloud:cloudfirewall/instanceMember:InstanceMember": {
- "description": "Provides a Cloud Firewall Instance Member resource.\n\nFor information about Cloud Firewall Instance Member and how to use it, see [What is Instance Member](https://www.alibabacloud.com/help/en/cloud-firewall/cloudfirewall/developer-reference/api-cloudfw-2017-12-07-addinstancemembers).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"AliyunTerraform\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAccount = new alicloud.resourcemanager.Account(\"default\", {displayName: `${name}-${_default.result}`});\nconst defaultInstanceMember = new alicloud.cloudfirewall.InstanceMember(\"default\", {\n memberDesc: `${name}-${_default.result}`,\n memberUid: defaultAccount.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"AliyunTerraform\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_account = alicloud.resourcemanager.Account(\"default\", display_name=f\"{name}-{default['result']}\")\ndefault_instance_member = alicloud.cloudfirewall.InstanceMember(\"default\",\n member_desc=f\"{name}-{default['result']}\",\n member_uid=default_account.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"AliyunTerraform\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAccount = new AliCloud.ResourceManager.Account(\"default\", new()\n {\n DisplayName = $\"{name}-{@default.Result}\",\n });\n\n var defaultInstanceMember = new AliCloud.CloudFirewall.InstanceMember(\"default\", new()\n {\n MemberDesc = $\"{name}-{@default.Result}\",\n MemberUid = defaultAccount.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"AliyunTerraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := resourcemanager.NewAccount(ctx, \"default\", \u0026resourcemanager.AccountArgs{\n\t\t\tDisplayName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewInstanceMember(ctx, \"default\", \u0026cloudfirewall.InstanceMemberArgs{\n\t\t\tMemberDesc: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tMemberUid: defaultAccount.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.Account;\nimport com.pulumi.alicloud.resourcemanager.AccountArgs;\nimport com.pulumi.alicloud.cloudfirewall.InstanceMember;\nimport com.pulumi.alicloud.cloudfirewall.InstanceMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"AliyunTerraform\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .displayName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultInstanceMember = new InstanceMember(\"defaultInstanceMember\", InstanceMemberArgs.builder()\n .memberDesc(String.format(\"%s-%s\", name,default_.result()))\n .memberUid(defaultAccount.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: AliyunTerraform\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultAccount:\n type: alicloud:resourcemanager:Account\n name: default\n properties:\n displayName: ${name}-${default.result}\n defaultInstanceMember:\n type: alicloud:cloudfirewall:InstanceMember\n name: default\n properties:\n memberDesc: ${name}-${default.result}\n memberUid: ${defaultAccount.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Instance Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/instanceMember:InstanceMember example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Instance Member resource.\n\nFor information about Cloud Firewall Instance Member and how to use it, see [What is Instance Member](https://www.alibabacloud.com/help/en/cloud-firewall/cloudfirewall/developer-reference/api-cloudfw-2017-12-07-addinstancemembers).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"AliyunTerraform\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAccount = new alicloud.resourcemanager.Account(\"default\", {displayName: `${name}-${_default.result}`});\nconst defaultInstanceMember = new alicloud.cloudfirewall.InstanceMember(\"default\", {\n memberDesc: `${name}-${_default.result}`,\n memberUid: defaultAccount.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"AliyunTerraform\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_account = alicloud.resourcemanager.Account(\"default\", display_name=f\"{name}-{default['result']}\")\ndefault_instance_member = alicloud.cloudfirewall.InstanceMember(\"default\",\n member_desc=f\"{name}-{default['result']}\",\n member_uid=default_account.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"AliyunTerraform\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAccount = new AliCloud.ResourceManager.Account(\"default\", new()\n {\n DisplayName = $\"{name}-{@default.Result}\",\n });\n\n var defaultInstanceMember = new AliCloud.CloudFirewall.InstanceMember(\"default\", new()\n {\n MemberDesc = $\"{name}-{@default.Result}\",\n MemberUid = defaultAccount.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"AliyunTerraform\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := resourcemanager.NewAccount(ctx, \"default\", \u0026resourcemanager.AccountArgs{\n\t\t\tDisplayName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewInstanceMember(ctx, \"default\", \u0026cloudfirewall.InstanceMemberArgs{\n\t\t\tMemberDesc: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tMemberUid: defaultAccount.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.Account;\nimport com.pulumi.alicloud.resourcemanager.AccountArgs;\nimport com.pulumi.alicloud.cloudfirewall.InstanceMember;\nimport com.pulumi.alicloud.cloudfirewall.InstanceMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"AliyunTerraform\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .displayName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultInstanceMember = new InstanceMember(\"defaultInstanceMember\", InstanceMemberArgs.builder()\n .memberDesc(String.format(\"%s-%s\", name,default_.result()))\n .memberUid(defaultAccount.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: AliyunTerraform\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultAccount:\n type: alicloud:resourcemanager:Account\n name: default\n properties:\n displayName: ${name}-${default.result}\n defaultInstanceMember:\n type: alicloud:cloudfirewall:InstanceMember\n name: default\n properties:\n memberDesc: ${name}-${default.result}\n memberUid: ${defaultAccount.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Instance Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/instanceMember:InstanceMember example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "integer",
@@ -122176,7 +124164,7 @@
}
},
"alicloud:cloudfirewall/natFirewall:NatFirewall": {
- "description": "Provides a Cloud Firewall Nat Firewall resource. \n\nFor information about Cloud Firewall Nat Firewall and how to use it, see [What is Nat Firewall](https://www.alibabacloud.com/help/zh/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createsecurityproxy).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultikZ0gD = new alicloud.vpc.Network(\"defaultikZ0gD\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultp4O7qi = new alicloud.vpc.Switch(\"defaultp4O7qi\", {\n vpcId: defaultikZ0gD.id,\n cidrBlock: \"172.16.6.0/24\",\n vswitchName: name,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst default2iRZpC = new alicloud.vpc.NatGateway(\"default2iRZpC\", {\n eipBindMode: \"MULTI_BINDED\",\n vpcId: defaultikZ0gD.id,\n natGatewayName: name,\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultp4O7qi.id,\n natType: \"Enhanced\",\n networkType: \"internet\",\n});\nconst defaultyiRwgs = new alicloud.ecs.EipAddress(\"defaultyiRwgs\", {addressName: name});\nconst defaults2MTuO = new alicloud.ecs.EipAssociation(\"defaults2MTuO\", {\n instanceId: default2iRZpC.id,\n allocationId: defaultyiRwgs.id,\n mode: \"NAT\",\n instanceType: \"Nat\",\n});\nconst defaultAKE43g = new alicloud.vpc.SnatEntry(\"defaultAKE43g\", {\n snatIp: defaultyiRwgs.ipAddress,\n snatTableId: default2iRZpC.snatTableIds,\n sourceVswitchId: defaultp4O7qi.id,\n});\nconst defaultNatFirewall = new alicloud.cloudfirewall.NatFirewall(\"default\", {\n natGatewayId: default2iRZpC.id,\n natRouteEntryLists: [{\n nexthopType: \"NatGateway\",\n routeTableId: defaultikZ0gD.routeTableId,\n nexthopId: default2iRZpC.id,\n destinationCidr: \"0.0.0.0/0\",\n }],\n firewallSwitch: \"close\",\n vswitchAuto: \"true\",\n status: \"closed\",\n regionNo: \"cn-shenzhen\",\n lang: \"zh\",\n proxyName: \"CFW-example\",\n vswitchId: defaultAKE43g.sourceVswitchId,\n strictMode: 0,\n vpcId: defaultikZ0gD.id,\n vswitchCidr: \"172.16.5.0/24\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefaultik_z0g_d = alicloud.vpc.Network(\"defaultikZ0gD\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefaultp4_o7qi = alicloud.vpc.Switch(\"defaultp4O7qi\",\n vpc_id=defaultik_z0g_d.id,\n cidr_block=\"172.16.6.0/24\",\n vswitch_name=name,\n zone_id=default.zones[0].id)\ndefault2i_r_zp_c = alicloud.vpc.NatGateway(\"default2iRZpC\",\n eip_bind_mode=\"MULTI_BINDED\",\n vpc_id=defaultik_z0g_d.id,\n nat_gateway_name=name,\n payment_type=\"PayAsYouGo\",\n vswitch_id=defaultp4_o7qi.id,\n nat_type=\"Enhanced\",\n network_type=\"internet\")\ndefaultyi_rwgs = alicloud.ecs.EipAddress(\"defaultyiRwgs\", address_name=name)\ndefaults2_m_tu_o = alicloud.ecs.EipAssociation(\"defaults2MTuO\",\n instance_id=default2i_r_zp_c.id,\n allocation_id=defaultyi_rwgs.id,\n mode=\"NAT\",\n instance_type=\"Nat\")\ndefault_ake43g = alicloud.vpc.SnatEntry(\"defaultAKE43g\",\n snat_ip=defaultyi_rwgs.ip_address,\n snat_table_id=default2i_r_zp_c.snat_table_ids,\n source_vswitch_id=defaultp4_o7qi.id)\ndefault_nat_firewall = alicloud.cloudfirewall.NatFirewall(\"default\",\n nat_gateway_id=default2i_r_zp_c.id,\n nat_route_entry_lists=[{\n \"nexthop_type\": \"NatGateway\",\n \"route_table_id\": defaultik_z0g_d.route_table_id,\n \"nexthop_id\": default2i_r_zp_c.id,\n \"destination_cidr\": \"0.0.0.0/0\",\n }],\n firewall_switch=\"close\",\n vswitch_auto=\"true\",\n status=\"closed\",\n region_no=\"cn-shenzhen\",\n lang=\"zh\",\n proxy_name=\"CFW-example\",\n vswitch_id=default_ake43g.source_vswitch_id,\n strict_mode=0,\n vpc_id=defaultik_z0g_d.id,\n vswitch_cidr=\"172.16.5.0/24\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultikZ0gD = new AliCloud.Vpc.Network(\"defaultikZ0gD\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultp4O7qi = new AliCloud.Vpc.Switch(\"defaultp4O7qi\", new()\n {\n VpcId = defaultikZ0gD.Id,\n CidrBlock = \"172.16.6.0/24\",\n VswitchName = name,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var default2iRZpC = new AliCloud.Vpc.NatGateway(\"default2iRZpC\", new()\n {\n EipBindMode = \"MULTI_BINDED\",\n VpcId = defaultikZ0gD.Id,\n NatGatewayName = name,\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultp4O7qi.Id,\n NatType = \"Enhanced\",\n NetworkType = \"internet\",\n });\n\n var defaultyiRwgs = new AliCloud.Ecs.EipAddress(\"defaultyiRwgs\", new()\n {\n AddressName = name,\n });\n\n var defaults2MTuO = new AliCloud.Ecs.EipAssociation(\"defaults2MTuO\", new()\n {\n InstanceId = default2iRZpC.Id,\n AllocationId = defaultyiRwgs.Id,\n Mode = \"NAT\",\n InstanceType = \"Nat\",\n });\n\n var defaultAKE43g = new AliCloud.Vpc.SnatEntry(\"defaultAKE43g\", new()\n {\n SnatIp = defaultyiRwgs.IpAddress,\n SnatTableId = default2iRZpC.SnatTableIds,\n SourceVswitchId = defaultp4O7qi.Id,\n });\n\n var defaultNatFirewall = new AliCloud.CloudFirewall.NatFirewall(\"default\", new()\n {\n NatGatewayId = default2iRZpC.Id,\n NatRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.NatFirewallNatRouteEntryListArgs\n {\n NexthopType = \"NatGateway\",\n RouteTableId = defaultikZ0gD.RouteTableId,\n NexthopId = default2iRZpC.Id,\n DestinationCidr = \"0.0.0.0/0\",\n },\n },\n FirewallSwitch = \"close\",\n VswitchAuto = \"true\",\n Status = \"closed\",\n RegionNo = \"cn-shenzhen\",\n Lang = \"zh\",\n ProxyName = \"CFW-example\",\n VswitchId = defaultAKE43g.SourceVswitchId,\n StrictMode = 0,\n VpcId = defaultikZ0gD.Id,\n VswitchCidr = \"172.16.5.0/24\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultikZ0gD, err := vpc.NewNetwork(ctx, \"defaultikZ0gD\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultp4O7qi, err := vpc.NewSwitch(ctx, \"defaultp4O7qi\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.6.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault2iRZpC, err := vpc.NewNatGateway(ctx, \"default2iRZpC\", \u0026vpc.NatGatewayArgs{\n\t\t\tEipBindMode: pulumi.String(\"MULTI_BINDED\"),\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tNatGatewayName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultp4O7qi.ID(),\n\t\t\tNatType: pulumi.String(\"Enhanced\"),\n\t\t\tNetworkType: pulumi.String(\"internet\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultyiRwgs, err := ecs.NewEipAddress(ctx, \"defaultyiRwgs\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEipAssociation(ctx, \"defaults2MTuO\", \u0026ecs.EipAssociationArgs{\n\t\t\tInstanceId: default2iRZpC.ID(),\n\t\t\tAllocationId: defaultyiRwgs.ID(),\n\t\t\tMode: pulumi.String(\"NAT\"),\n\t\t\tInstanceType: pulumi.String(\"Nat\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAKE43g, err := vpc.NewSnatEntry(ctx, \"defaultAKE43g\", \u0026vpc.SnatEntryArgs{\n\t\t\tSnatIp: defaultyiRwgs.IpAddress,\n\t\t\tSnatTableId: default2iRZpC.SnatTableIds,\n\t\t\tSourceVswitchId: defaultp4O7qi.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewNatFirewall(ctx, \"default\", \u0026cloudfirewall.NatFirewallArgs{\n\t\t\tNatGatewayId: default2iRZpC.ID(),\n\t\t\tNatRouteEntryLists: cloudfirewall.NatFirewallNatRouteEntryListArray{\n\t\t\t\t\u0026cloudfirewall.NatFirewallNatRouteEntryListArgs{\n\t\t\t\t\tNexthopType: pulumi.String(\"NatGateway\"),\n\t\t\t\t\tRouteTableId: defaultikZ0gD.RouteTableId,\n\t\t\t\t\tNexthopId: default2iRZpC.ID(),\n\t\t\t\t\tDestinationCidr: pulumi.String(\"0.0.0.0/0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFirewallSwitch: pulumi.String(\"close\"),\n\t\t\tVswitchAuto: pulumi.String(\"true\"),\n\t\t\tStatus: pulumi.String(\"closed\"),\n\t\t\tRegionNo: pulumi.String(\"cn-shenzhen\"),\n\t\t\tLang: pulumi.String(\"zh\"),\n\t\t\tProxyName: pulumi.String(\"CFW-example\"),\n\t\t\tVswitchId: defaultAKE43g.SourceVswitchId,\n\t\t\tStrictMode: pulumi.Int(0),\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tVswitchCidr: pulumi.String(\"172.16.5.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.NatGateway;\nimport com.pulumi.alicloud.vpc.NatGatewayArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ecs.EipAssociation;\nimport com.pulumi.alicloud.ecs.EipAssociationArgs;\nimport com.pulumi.alicloud.vpc.SnatEntry;\nimport com.pulumi.alicloud.vpc.SnatEntryArgs;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewall;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.NatFirewallNatRouteEntryListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultikZ0gD = new Network(\"defaultikZ0gD\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultp4O7qi = new Switch(\"defaultp4O7qi\", SwitchArgs.builder()\n .vpcId(defaultikZ0gD.id())\n .cidrBlock(\"172.16.6.0/24\")\n .vswitchName(name)\n .zoneId(default_.zones()[0].id())\n .build());\n\n var default2iRZpC = new NatGateway(\"default2iRZpC\", NatGatewayArgs.builder()\n .eipBindMode(\"MULTI_BINDED\")\n .vpcId(defaultikZ0gD.id())\n .natGatewayName(name)\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultp4O7qi.id())\n .natType(\"Enhanced\")\n .networkType(\"internet\")\n .build());\n\n var defaultyiRwgs = new EipAddress(\"defaultyiRwgs\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var defaults2MTuO = new EipAssociation(\"defaults2MTuO\", EipAssociationArgs.builder()\n .instanceId(default2iRZpC.id())\n .allocationId(defaultyiRwgs.id())\n .mode(\"NAT\")\n .instanceType(\"Nat\")\n .build());\n\n var defaultAKE43g = new SnatEntry(\"defaultAKE43g\", SnatEntryArgs.builder()\n .snatIp(defaultyiRwgs.ipAddress())\n .snatTableId(default2iRZpC.snatTableIds())\n .sourceVswitchId(defaultp4O7qi.id())\n .build());\n\n var defaultNatFirewall = new NatFirewall(\"defaultNatFirewall\", NatFirewallArgs.builder()\n .natGatewayId(default2iRZpC.id())\n .natRouteEntryLists(NatFirewallNatRouteEntryListArgs.builder()\n .nexthopType(\"NatGateway\")\n .routeTableId(defaultikZ0gD.routeTableId())\n .nexthopId(default2iRZpC.id())\n .destinationCidr(\"0.0.0.0/0\")\n .build())\n .firewallSwitch(\"close\")\n .vswitchAuto(\"true\")\n .status(\"closed\")\n .regionNo(\"cn-shenzhen\")\n .lang(\"zh\")\n .proxyName(\"CFW-example\")\n .vswitchId(defaultAKE43g.sourceVswitchId())\n .strictMode(0)\n .vpcId(defaultikZ0gD.id())\n .vswitchCidr(\"172.16.5.0/24\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultikZ0gD:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultp4O7qi:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultikZ0gD.id}\n cidrBlock: 172.16.6.0/24\n vswitchName: ${name}\n zoneId: ${default.zones[0].id}\n default2iRZpC:\n type: alicloud:vpc:NatGateway\n properties:\n eipBindMode: MULTI_BINDED\n vpcId: ${defaultikZ0gD.id}\n natGatewayName: ${name}\n paymentType: PayAsYouGo\n vswitchId: ${defaultp4O7qi.id}\n natType: Enhanced\n networkType: internet\n defaultyiRwgs:\n type: alicloud:ecs:EipAddress\n properties:\n addressName: ${name}\n defaults2MTuO:\n type: alicloud:ecs:EipAssociation\n properties:\n instanceId: ${default2iRZpC.id}\n allocationId: ${defaultyiRwgs.id}\n mode: NAT\n instanceType: Nat\n defaultAKE43g:\n type: alicloud:vpc:SnatEntry\n properties:\n snatIp: ${defaultyiRwgs.ipAddress}\n snatTableId: ${default2iRZpC.snatTableIds}\n sourceVswitchId: ${defaultp4O7qi.id}\n defaultNatFirewall:\n type: alicloud:cloudfirewall:NatFirewall\n name: default\n properties:\n natGatewayId: ${default2iRZpC.id}\n natRouteEntryLists:\n - nexthopType: NatGateway\n routeTableId: ${defaultikZ0gD.routeTableId}\n nexthopId: ${default2iRZpC.id}\n destinationCidr: 0.0.0.0/0\n firewallSwitch: close\n vswitchAuto: 'true'\n status: closed\n regionNo: cn-shenzhen\n lang: zh\n proxyName: CFW-example\n vswitchId: ${defaultAKE43g.sourceVswitchId}\n strictMode: '0'\n vpcId: ${defaultikZ0gD.id}\n vswitchCidr: 172.16.5.0/24\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Nat Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/natFirewall:NatFirewall example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Nat Firewall resource. \n\nFor information about Cloud Firewall Nat Firewall and how to use it, see [What is Nat Firewall](https://www.alibabacloud.com/help/zh/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createsecurityproxy).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultikZ0gD = new alicloud.vpc.Network(\"defaultikZ0gD\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultp4O7qi = new alicloud.vpc.Switch(\"defaultp4O7qi\", {\n vpcId: defaultikZ0gD.id,\n cidrBlock: \"172.16.6.0/24\",\n vswitchName: name,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst default2iRZpC = new alicloud.vpc.NatGateway(\"default2iRZpC\", {\n eipBindMode: \"MULTI_BINDED\",\n vpcId: defaultikZ0gD.id,\n natGatewayName: name,\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultp4O7qi.id,\n natType: \"Enhanced\",\n networkType: \"internet\",\n});\nconst defaultyiRwgs = new alicloud.ecs.EipAddress(\"defaultyiRwgs\", {addressName: name});\nconst defaults2MTuO = new alicloud.ecs.EipAssociation(\"defaults2MTuO\", {\n instanceId: default2iRZpC.id,\n allocationId: defaultyiRwgs.id,\n mode: \"NAT\",\n instanceType: \"Nat\",\n});\nconst defaultAKE43g = new alicloud.vpc.SnatEntry(\"defaultAKE43g\", {\n snatIp: defaultyiRwgs.ipAddress,\n snatTableId: default2iRZpC.snatTableIds,\n sourceVswitchId: defaultp4O7qi.id,\n});\nconst defaultNatFirewall = new alicloud.cloudfirewall.NatFirewall(\"default\", {\n natGatewayId: default2iRZpC.id,\n natRouteEntryLists: [{\n nexthopType: \"NatGateway\",\n routeTableId: defaultikZ0gD.routeTableId,\n nexthopId: default2iRZpC.id,\n destinationCidr: \"0.0.0.0/0\",\n }],\n firewallSwitch: \"close\",\n vswitchAuto: \"true\",\n status: \"closed\",\n regionNo: \"cn-shenzhen\",\n lang: \"zh\",\n proxyName: \"CFW-example\",\n vswitchId: defaultAKE43g.sourceVswitchId,\n strictMode: 0,\n vpcId: defaultikZ0gD.id,\n vswitchCidr: \"172.16.5.0/24\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefaultik_z0g_d = alicloud.vpc.Network(\"defaultikZ0gD\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefaultp4_o7qi = alicloud.vpc.Switch(\"defaultp4O7qi\",\n vpc_id=defaultik_z0g_d.id,\n cidr_block=\"172.16.6.0/24\",\n vswitch_name=name,\n zone_id=default.zones[0].id)\ndefault2i_r_zp_c = alicloud.vpc.NatGateway(\"default2iRZpC\",\n eip_bind_mode=\"MULTI_BINDED\",\n vpc_id=defaultik_z0g_d.id,\n nat_gateway_name=name,\n payment_type=\"PayAsYouGo\",\n vswitch_id=defaultp4_o7qi.id,\n nat_type=\"Enhanced\",\n network_type=\"internet\")\ndefaultyi_rwgs = alicloud.ecs.EipAddress(\"defaultyiRwgs\", address_name=name)\ndefaults2_m_tu_o = alicloud.ecs.EipAssociation(\"defaults2MTuO\",\n instance_id=default2i_r_zp_c.id,\n allocation_id=defaultyi_rwgs.id,\n mode=\"NAT\",\n instance_type=\"Nat\")\ndefault_ake43g = alicloud.vpc.SnatEntry(\"defaultAKE43g\",\n snat_ip=defaultyi_rwgs.ip_address,\n snat_table_id=default2i_r_zp_c.snat_table_ids,\n source_vswitch_id=defaultp4_o7qi.id)\ndefault_nat_firewall = alicloud.cloudfirewall.NatFirewall(\"default\",\n nat_gateway_id=default2i_r_zp_c.id,\n nat_route_entry_lists=[{\n \"nexthop_type\": \"NatGateway\",\n \"route_table_id\": defaultik_z0g_d.route_table_id,\n \"nexthop_id\": default2i_r_zp_c.id,\n \"destination_cidr\": \"0.0.0.0/0\",\n }],\n firewall_switch=\"close\",\n vswitch_auto=\"true\",\n status=\"closed\",\n region_no=\"cn-shenzhen\",\n lang=\"zh\",\n proxy_name=\"CFW-example\",\n vswitch_id=default_ake43g.source_vswitch_id,\n strict_mode=0,\n vpc_id=defaultik_z0g_d.id,\n vswitch_cidr=\"172.16.5.0/24\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultikZ0gD = new AliCloud.Vpc.Network(\"defaultikZ0gD\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultp4O7qi = new AliCloud.Vpc.Switch(\"defaultp4O7qi\", new()\n {\n VpcId = defaultikZ0gD.Id,\n CidrBlock = \"172.16.6.0/24\",\n VswitchName = name,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var default2iRZpC = new AliCloud.Vpc.NatGateway(\"default2iRZpC\", new()\n {\n EipBindMode = \"MULTI_BINDED\",\n VpcId = defaultikZ0gD.Id,\n NatGatewayName = name,\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultp4O7qi.Id,\n NatType = \"Enhanced\",\n NetworkType = \"internet\",\n });\n\n var defaultyiRwgs = new AliCloud.Ecs.EipAddress(\"defaultyiRwgs\", new()\n {\n AddressName = name,\n });\n\n var defaults2MTuO = new AliCloud.Ecs.EipAssociation(\"defaults2MTuO\", new()\n {\n InstanceId = default2iRZpC.Id,\n AllocationId = defaultyiRwgs.Id,\n Mode = \"NAT\",\n InstanceType = \"Nat\",\n });\n\n var defaultAKE43g = new AliCloud.Vpc.SnatEntry(\"defaultAKE43g\", new()\n {\n SnatIp = defaultyiRwgs.IpAddress,\n SnatTableId = default2iRZpC.SnatTableIds,\n SourceVswitchId = defaultp4O7qi.Id,\n });\n\n var defaultNatFirewall = new AliCloud.CloudFirewall.NatFirewall(\"default\", new()\n {\n NatGatewayId = default2iRZpC.Id,\n NatRouteEntryLists = new[]\n {\n new AliCloud.CloudFirewall.Inputs.NatFirewallNatRouteEntryListArgs\n {\n NexthopType = \"NatGateway\",\n RouteTableId = defaultikZ0gD.RouteTableId,\n NexthopId = default2iRZpC.Id,\n DestinationCidr = \"0.0.0.0/0\",\n },\n },\n FirewallSwitch = \"close\",\n VswitchAuto = \"true\",\n Status = \"closed\",\n RegionNo = \"cn-shenzhen\",\n Lang = \"zh\",\n ProxyName = \"CFW-example\",\n VswitchId = defaultAKE43g.SourceVswitchId,\n StrictMode = 0,\n VpcId = defaultikZ0gD.Id,\n VswitchCidr = \"172.16.5.0/24\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultikZ0gD, err := vpc.NewNetwork(ctx, \"defaultikZ0gD\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultp4O7qi, err := vpc.NewSwitch(ctx, \"defaultp4O7qi\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.6.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault2iRZpC, err := vpc.NewNatGateway(ctx, \"default2iRZpC\", \u0026vpc.NatGatewayArgs{\n\t\t\tEipBindMode: pulumi.String(\"MULTI_BINDED\"),\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tNatGatewayName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultp4O7qi.ID(),\n\t\t\tNatType: pulumi.String(\"Enhanced\"),\n\t\t\tNetworkType: pulumi.String(\"internet\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultyiRwgs, err := ecs.NewEipAddress(ctx, \"defaultyiRwgs\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEipAssociation(ctx, \"defaults2MTuO\", \u0026ecs.EipAssociationArgs{\n\t\t\tInstanceId: default2iRZpC.ID(),\n\t\t\tAllocationId: defaultyiRwgs.ID(),\n\t\t\tMode: pulumi.String(\"NAT\"),\n\t\t\tInstanceType: pulumi.String(\"Nat\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAKE43g, err := vpc.NewSnatEntry(ctx, \"defaultAKE43g\", \u0026vpc.SnatEntryArgs{\n\t\t\tSnatIp: defaultyiRwgs.IpAddress,\n\t\t\tSnatTableId: default2iRZpC.SnatTableIds,\n\t\t\tSourceVswitchId: defaultp4O7qi.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewNatFirewall(ctx, \"default\", \u0026cloudfirewall.NatFirewallArgs{\n\t\t\tNatGatewayId: default2iRZpC.ID(),\n\t\t\tNatRouteEntryLists: cloudfirewall.NatFirewallNatRouteEntryListArray{\n\t\t\t\t\u0026cloudfirewall.NatFirewallNatRouteEntryListArgs{\n\t\t\t\t\tNexthopType: pulumi.String(\"NatGateway\"),\n\t\t\t\t\tRouteTableId: defaultikZ0gD.RouteTableId,\n\t\t\t\t\tNexthopId: default2iRZpC.ID(),\n\t\t\t\t\tDestinationCidr: pulumi.String(\"0.0.0.0/0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFirewallSwitch: pulumi.String(\"close\"),\n\t\t\tVswitchAuto: pulumi.String(\"true\"),\n\t\t\tStatus: pulumi.String(\"closed\"),\n\t\t\tRegionNo: pulumi.String(\"cn-shenzhen\"),\n\t\t\tLang: pulumi.String(\"zh\"),\n\t\t\tProxyName: pulumi.String(\"CFW-example\"),\n\t\t\tVswitchId: defaultAKE43g.SourceVswitchId,\n\t\t\tStrictMode: pulumi.Int(0),\n\t\t\tVpcId: defaultikZ0gD.ID(),\n\t\t\tVswitchCidr: pulumi.String(\"172.16.5.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.NatGateway;\nimport com.pulumi.alicloud.vpc.NatGatewayArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ecs.EipAssociation;\nimport com.pulumi.alicloud.ecs.EipAssociationArgs;\nimport com.pulumi.alicloud.vpc.SnatEntry;\nimport com.pulumi.alicloud.vpc.SnatEntryArgs;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewall;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallArgs;\nimport com.pulumi.alicloud.cloudfirewall.inputs.NatFirewallNatRouteEntryListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultikZ0gD = new Network(\"defaultikZ0gD\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultp4O7qi = new Switch(\"defaultp4O7qi\", SwitchArgs.builder()\n .vpcId(defaultikZ0gD.id())\n .cidrBlock(\"172.16.6.0/24\")\n .vswitchName(name)\n .zoneId(default_.zones()[0].id())\n .build());\n\n var default2iRZpC = new NatGateway(\"default2iRZpC\", NatGatewayArgs.builder()\n .eipBindMode(\"MULTI_BINDED\")\n .vpcId(defaultikZ0gD.id())\n .natGatewayName(name)\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultp4O7qi.id())\n .natType(\"Enhanced\")\n .networkType(\"internet\")\n .build());\n\n var defaultyiRwgs = new EipAddress(\"defaultyiRwgs\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var defaults2MTuO = new EipAssociation(\"defaults2MTuO\", EipAssociationArgs.builder()\n .instanceId(default2iRZpC.id())\n .allocationId(defaultyiRwgs.id())\n .mode(\"NAT\")\n .instanceType(\"Nat\")\n .build());\n\n var defaultAKE43g = new SnatEntry(\"defaultAKE43g\", SnatEntryArgs.builder()\n .snatIp(defaultyiRwgs.ipAddress())\n .snatTableId(default2iRZpC.snatTableIds())\n .sourceVswitchId(defaultp4O7qi.id())\n .build());\n\n var defaultNatFirewall = new NatFirewall(\"defaultNatFirewall\", NatFirewallArgs.builder()\n .natGatewayId(default2iRZpC.id())\n .natRouteEntryLists(NatFirewallNatRouteEntryListArgs.builder()\n .nexthopType(\"NatGateway\")\n .routeTableId(defaultikZ0gD.routeTableId())\n .nexthopId(default2iRZpC.id())\n .destinationCidr(\"0.0.0.0/0\")\n .build())\n .firewallSwitch(\"close\")\n .vswitchAuto(\"true\")\n .status(\"closed\")\n .regionNo(\"cn-shenzhen\")\n .lang(\"zh\")\n .proxyName(\"CFW-example\")\n .vswitchId(defaultAKE43g.sourceVswitchId())\n .strictMode(0)\n .vpcId(defaultikZ0gD.id())\n .vswitchCidr(\"172.16.5.0/24\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultikZ0gD:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultp4O7qi:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultikZ0gD.id}\n cidrBlock: 172.16.6.0/24\n vswitchName: ${name}\n zoneId: ${default.zones[0].id}\n default2iRZpC:\n type: alicloud:vpc:NatGateway\n properties:\n eipBindMode: MULTI_BINDED\n vpcId: ${defaultikZ0gD.id}\n natGatewayName: ${name}\n paymentType: PayAsYouGo\n vswitchId: ${defaultp4O7qi.id}\n natType: Enhanced\n networkType: internet\n defaultyiRwgs:\n type: alicloud:ecs:EipAddress\n properties:\n addressName: ${name}\n defaults2MTuO:\n type: alicloud:ecs:EipAssociation\n properties:\n instanceId: ${default2iRZpC.id}\n allocationId: ${defaultyiRwgs.id}\n mode: NAT\n instanceType: Nat\n defaultAKE43g:\n type: alicloud:vpc:SnatEntry\n properties:\n snatIp: ${defaultyiRwgs.ipAddress}\n snatTableId: ${default2iRZpC.snatTableIds}\n sourceVswitchId: ${defaultp4O7qi.id}\n defaultNatFirewall:\n type: alicloud:cloudfirewall:NatFirewall\n name: default\n properties:\n natGatewayId: ${default2iRZpC.id}\n natRouteEntryLists:\n - nexthopType: NatGateway\n routeTableId: ${defaultikZ0gD.routeTableId}\n nexthopId: ${default2iRZpC.id}\n destinationCidr: 0.0.0.0/0\n firewallSwitch: close\n vswitchAuto: 'true'\n status: closed\n regionNo: cn-shenzhen\n lang: zh\n proxyName: CFW-example\n vswitchId: ${defaultAKE43g.sourceVswitchId}\n strictMode: '0'\n vpcId: ${defaultikZ0gD.id}\n vswitchCidr: 172.16.5.0/24\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Nat Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/natFirewall:NatFirewall example \u003cid\u003e\n```\n\n",
"properties": {
"firewallSwitch": {
"type": "string",
@@ -122369,7 +124357,7 @@
}
},
"alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy": {
- "description": "Provides a Cloud Firewall Nat Firewall Control Policy resource. Nat firewall access control policy.\n\nFor information about Cloud Firewall Nat Firewall Control Policy and how to use it, see [What is Nat Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createnatfirewallcontrolpolicy).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst direction = config.get(\"direction\") || \"out\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultDEiWfM = new alicloud.vpc.Network(\"defaultDEiWfM\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultFHDM3F = new alicloud.vpc.Switch(\"defaultFHDM3F\", {\n vpcId: defaultDEiWfM.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"172.16.2.0/24\",\n});\nconst defaultMbS2Ts = new alicloud.vpc.NatGateway(\"defaultMbS2Ts\", {\n vpcId: defaultDEiWfM.id,\n natGatewayName: name,\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultFHDM3F.id,\n natType: \"Enhanced\",\n});\nconst port = new alicloud.cloudfirewall.AddressBook(\"port\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"port\",\n addressLists: [\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ],\n});\nconst port_update = new alicloud.cloudfirewall.AddressBook(\"port-update\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port-update\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port-update\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"port\",\n addressLists: [\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ],\n});\nconst domain = new alicloud.cloudfirewall.AddressBook(\"domain\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"domain\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"domain\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"domain\",\n addressLists: [\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n ],\n});\nconst ip = new alicloud.cloudfirewall.AddressBook(\"ip\", {\n description: name,\n groupName: name,\n groupType: \"ip\",\n addressLists: [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n});\nconst defaultNatFirewallControlPolicy = new alicloud.cloudfirewall.NatFirewallControlPolicy(\"default\", {\n applicationNameLists: [\"ANY\"],\n description: name,\n release: \"false\",\n ipVersion: \"4\",\n repeatDays: [\n 1,\n 2,\n 3,\n ],\n repeatStartTime: \"21:00\",\n aclAction: \"log\",\n destPortGroup: port.groupName,\n repeatType: \"Weekly\",\n natGatewayId: defaultMbS2Ts.id,\n source: \"1.1.1.1/32\",\n direction: \"out\",\n repeatEndTime: \"21:30\",\n startTime: 1699156800,\n destination: \"1.1.1.1/32\",\n endTime: 1888545600,\n sourceType: \"net\",\n proto: \"TCP\",\n newOrder: \"1\",\n destinationType: \"net\",\n destPortType: \"group\",\n domainResolveType: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndirection = config.get(\"direction\")\nif direction is None:\n direction = \"out\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_d_ei_wf_m = alicloud.vpc.Network(\"defaultDEiWfM\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefault_fhdm3_f = alicloud.vpc.Switch(\"defaultFHDM3F\",\n vpc_id=default_d_ei_wf_m.id,\n zone_id=default.zones[0].id,\n cidr_block=\"172.16.2.0/24\")\ndefault_mb_s2_ts = alicloud.vpc.NatGateway(\"defaultMbS2Ts\",\n vpc_id=default_d_ei_wf_m.id,\n nat_gateway_name=name,\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_fhdm3_f.id,\n nat_type=\"Enhanced\")\nport = alicloud.cloudfirewall.AddressBook(\"port\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"port\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"port\",\n ]).result,\n group_type=\"port\",\n address_lists=[\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ])\nport_update = alicloud.cloudfirewall.AddressBook(\"port-update\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"port-update\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"port-update\",\n ]).result,\n group_type=\"port\",\n address_lists=[\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ])\ndomain = alicloud.cloudfirewall.AddressBook(\"domain\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"domain\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"domain\",\n ]).result,\n group_type=\"domain\",\n address_lists=[\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n ])\nip = alicloud.cloudfirewall.AddressBook(\"ip\",\n description=name,\n group_name=name,\n group_type=\"ip\",\n address_lists=[\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ])\ndefault_nat_firewall_control_policy = alicloud.cloudfirewall.NatFirewallControlPolicy(\"default\",\n application_name_lists=[\"ANY\"],\n description=name,\n release=\"false\",\n ip_version=\"4\",\n repeat_days=[\n 1,\n 2,\n 3,\n ],\n repeat_start_time=\"21:00\",\n acl_action=\"log\",\n dest_port_group=port.group_name,\n repeat_type=\"Weekly\",\n nat_gateway_id=default_mb_s2_ts.id,\n source=\"1.1.1.1/32\",\n direction=\"out\",\n repeat_end_time=\"21:30\",\n start_time=1699156800,\n destination=\"1.1.1.1/32\",\n end_time=1888545600,\n source_type=\"net\",\n proto=\"TCP\",\n new_order=\"1\",\n destination_type=\"net\",\n dest_port_type=\"group\",\n domain_resolve_type=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var direction = config.Get(\"direction\") ?? \"out\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultDEiWfM = new AliCloud.Vpc.Network(\"defaultDEiWfM\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultFHDM3F = new AliCloud.Vpc.Switch(\"defaultFHDM3F\", new()\n {\n VpcId = defaultDEiWfM.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"172.16.2.0/24\",\n });\n\n var defaultMbS2Ts = new AliCloud.Vpc.NatGateway(\"defaultMbS2Ts\", new()\n {\n VpcId = defaultDEiWfM.Id,\n NatGatewayName = name,\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultFHDM3F.Id,\n NatType = \"Enhanced\",\n });\n\n var port = new AliCloud.CloudFirewall.AddressBook(\"port\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"port\",\n AddressLists = new[]\n {\n \"22/22\",\n \"23/23\",\n \"24/24\",\n },\n });\n\n var port_update = new AliCloud.CloudFirewall.AddressBook(\"port-update\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port-update\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port-update\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"port\",\n AddressLists = new[]\n {\n \"22/22\",\n \"23/23\",\n \"24/24\",\n },\n });\n\n var domain = new AliCloud.CloudFirewall.AddressBook(\"domain\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"domain\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"domain\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"domain\",\n AddressLists = new[]\n {\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n },\n });\n\n var ip = new AliCloud.CloudFirewall.AddressBook(\"ip\", new()\n {\n Description = name,\n GroupName = name,\n GroupType = \"ip\",\n AddressLists = new[]\n {\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n },\n });\n\n var defaultNatFirewallControlPolicy = new AliCloud.CloudFirewall.NatFirewallControlPolicy(\"default\", new()\n {\n ApplicationNameLists = new[]\n {\n \"ANY\",\n },\n Description = name,\n Release = \"false\",\n IpVersion = \"4\",\n RepeatDays = new[]\n {\n 1,\n 2,\n 3,\n },\n RepeatStartTime = \"21:00\",\n AclAction = \"log\",\n DestPortGroup = port.GroupName,\n RepeatType = \"Weekly\",\n NatGatewayId = defaultMbS2Ts.Id,\n Source = \"1.1.1.1/32\",\n Direction = \"out\",\n RepeatEndTime = \"21:30\",\n StartTime = 1699156800,\n Destination = \"1.1.1.1/32\",\n EndTime = 1888545600,\n SourceType = \"net\",\n Proto = \"TCP\",\n NewOrder = \"1\",\n DestinationType = \"net\",\n DestPortType = \"group\",\n DomainResolveType = 0,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdirection := \"out\"\n\t\tif param := cfg.Get(\"direction\"); param != \"\" {\n\t\t\tdirection = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDEiWfM, err := vpc.NewNetwork(ctx, \"defaultDEiWfM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFHDM3F, err := vpc.NewSwitch(ctx, \"defaultFHDM3F\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultDEiWfM.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"172.16.2.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMbS2Ts, err := vpc.NewNatGateway(ctx, \"defaultMbS2Ts\", \u0026vpc.NatGatewayArgs{\n\t\t\tVpcId: defaultDEiWfM.ID(),\n\t\t\tNatGatewayName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultFHDM3F.ID(),\n\t\t\tNatType: pulumi.String(\"Enhanced\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tport, err := cloudfirewall.NewAddressBook(ctx, \"port\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat1.Result),\n\t\t\tGroupType: pulumi.String(\"port\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"22/22\"),\n\t\t\t\tpulumi.String(\"23/23\"),\n\t\t\t\tpulumi.String(\"24/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port-update\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port-update\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"port-update\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat2.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat3.Result),\n\t\t\tGroupType: pulumi.String(\"port\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"22/22\"),\n\t\t\t\tpulumi.String(\"23/23\"),\n\t\t\t\tpulumi.String(\"24/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat4, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"domain\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat5, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"domain\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"domain\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat4.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat5.Result),\n\t\t\tGroupType: pulumi.String(\"domain\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"alibaba.com\"),\n\t\t\t\tpulumi.String(\"aliyun.com\"),\n\t\t\t\tpulumi.String(\"alicloud.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"ip\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGroupName: pulumi.String(name),\n\t\t\tGroupType: pulumi.String(\"ip\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1.1.1.1/32\"),\n\t\t\t\tpulumi.String(\"2.2.2.2/32\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewNatFirewallControlPolicy(ctx, \"default\", \u0026cloudfirewall.NatFirewallControlPolicyArgs{\n\t\t\tApplicationNameLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ANY\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRelease: pulumi.String(\"false\"),\n\t\t\tIpVersion: pulumi.String(\"4\"),\n\t\t\tRepeatDays: pulumi.IntArray{\n\t\t\t\tpulumi.Int(1),\n\t\t\t\tpulumi.Int(2),\n\t\t\t\tpulumi.Int(3),\n\t\t\t},\n\t\t\tRepeatStartTime: pulumi.String(\"21:00\"),\n\t\t\tAclAction: pulumi.String(\"log\"),\n\t\t\tDestPortGroup: port.GroupName,\n\t\t\tRepeatType: pulumi.String(\"Weekly\"),\n\t\t\tNatGatewayId: defaultMbS2Ts.ID(),\n\t\t\tSource: pulumi.String(\"1.1.1.1/32\"),\n\t\t\tDirection: pulumi.String(\"out\"),\n\t\t\tRepeatEndTime: pulumi.String(\"21:30\"),\n\t\t\tStartTime: pulumi.Int(1699156800),\n\t\t\tDestination: pulumi.String(\"1.1.1.1/32\"),\n\t\t\tEndTime: pulumi.Int(1888545600),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"TCP\"),\n\t\t\tNewOrder: pulumi.String(\"1\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tDestPortType: pulumi.String(\"group\"),\n\t\t\tDomainResolveType: pulumi.Int(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.NatGateway;\nimport com.pulumi.alicloud.vpc.NatGatewayArgs;\nimport com.pulumi.alicloud.cloudfirewall.AddressBook;\nimport com.pulumi.alicloud.cloudfirewall.AddressBookArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var direction = config.get(\"direction\").orElse(\"out\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultDEiWfM = new Network(\"defaultDEiWfM\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultFHDM3F = new Switch(\"defaultFHDM3F\", SwitchArgs.builder()\n .vpcId(defaultDEiWfM.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"172.16.2.0/24\")\n .build());\n\n var defaultMbS2Ts = new NatGateway(\"defaultMbS2Ts\", NatGatewayArgs.builder()\n .vpcId(defaultDEiWfM.id())\n .natGatewayName(name)\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultFHDM3F.id())\n .natType(\"Enhanced\")\n .build());\n\n var port = new AddressBook(\"port\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port\")\n .build()).result())\n .groupType(\"port\")\n .addressLists( \n \"22/22\",\n \"23/23\",\n \"24/24\")\n .build());\n\n var port_update = new AddressBook(\"port-update\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port-update\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port-update\")\n .build()).result())\n .groupType(\"port\")\n .addressLists( \n \"22/22\",\n \"23/23\",\n \"24/24\")\n .build());\n\n var domain = new AddressBook(\"domain\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"domain\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"domain\")\n .build()).result())\n .groupType(\"domain\")\n .addressLists( \n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\")\n .build());\n\n var ip = new AddressBook(\"ip\", AddressBookArgs.builder()\n .description(name)\n .groupName(name)\n .groupType(\"ip\")\n .addressLists( \n \"1.1.1.1/32\",\n \"2.2.2.2/32\")\n .build());\n\n var defaultNatFirewallControlPolicy = new NatFirewallControlPolicy(\"defaultNatFirewallControlPolicy\", NatFirewallControlPolicyArgs.builder()\n .applicationNameLists(\"ANY\")\n .description(name)\n .release(\"false\")\n .ipVersion(\"4\")\n .repeatDays( \n 1,\n 2,\n 3)\n .repeatStartTime(\"21:00\")\n .aclAction(\"log\")\n .destPortGroup(port.groupName())\n .repeatType(\"Weekly\")\n .natGatewayId(defaultMbS2Ts.id())\n .source(\"1.1.1.1/32\")\n .direction(\"out\")\n .repeatEndTime(\"21:30\")\n .startTime(1699156800)\n .destination(\"1.1.1.1/32\")\n .endTime(1888545600)\n .sourceType(\"net\")\n .proto(\"TCP\")\n .newOrder(\"1\")\n .destinationType(\"net\")\n .destPortType(\"group\")\n .domainResolveType(0)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n direction:\n type: string\n default: out\nresources:\n defaultDEiWfM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultFHDM3F:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultDEiWfM.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 172.16.2.0/24\n defaultMbS2Ts:\n type: alicloud:vpc:NatGateway\n properties:\n vpcId: ${defaultDEiWfM.id}\n natGatewayName: ${name}\n paymentType: PayAsYouGo\n vswitchId: ${defaultFHDM3F.id}\n natType: Enhanced\n port:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port\n return: result\n groupType: port\n addressLists:\n - 22/22\n - 23/23\n - 24/24\n port-update:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port-update\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port-update\n return: result\n groupType: port\n addressLists:\n - 22/22\n - 23/23\n - 24/24\n domain:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - domain\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - domain\n return: result\n groupType: domain\n addressLists:\n - alibaba.com\n - aliyun.com\n - alicloud.com\n ip:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description: ${name}\n groupName: ${name}\n groupType: ip\n addressLists:\n - 1.1.1.1/32\n - 2.2.2.2/32\n defaultNatFirewallControlPolicy:\n type: alicloud:cloudfirewall:NatFirewallControlPolicy\n name: default\n properties:\n applicationNameLists:\n - ANY\n description: ${name}\n release: 'false'\n ipVersion: '4'\n repeatDays:\n - '1'\n - '2'\n - '3'\n repeatStartTime: 21:00\n aclAction: log\n destPortGroup: ${port.groupName}\n repeatType: Weekly\n natGatewayId: ${defaultMbS2Ts.id}\n source: 1.1.1.1/32\n direction: out\n repeatEndTime: 21:30\n startTime: '1699156800'\n destination: 1.1.1.1/32\n endTime: '1888545600'\n sourceType: net\n proto: TCP\n newOrder: '1'\n destinationType: net\n destPortType: group\n domainResolveType: '0'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Nat Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy example \u003cacl_uuid\u003e:\u003cnat_gateway_id\u003e:\u003cdirection\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Nat Firewall Control Policy resource. Nat firewall access control policy.\n\nFor information about Cloud Firewall Nat Firewall Control Policy and how to use it, see [What is Nat Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createnatfirewallcontrolpolicy).\n\n\u003e **NOTE:** Available since v1.224.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst direction = config.get(\"direction\") || \"out\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultDEiWfM = new alicloud.vpc.Network(\"defaultDEiWfM\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: name,\n});\nconst defaultFHDM3F = new alicloud.vpc.Switch(\"defaultFHDM3F\", {\n vpcId: defaultDEiWfM.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"172.16.2.0/24\",\n});\nconst defaultMbS2Ts = new alicloud.vpc.NatGateway(\"defaultMbS2Ts\", {\n vpcId: defaultDEiWfM.id,\n natGatewayName: name,\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultFHDM3F.id,\n natType: \"Enhanced\",\n});\nconst port = new alicloud.cloudfirewall.AddressBook(\"port\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"port\",\n addressLists: [\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ],\n});\nconst port_update = new alicloud.cloudfirewall.AddressBook(\"port-update\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port-update\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"port-update\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"port\",\n addressLists: [\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ],\n});\nconst domain = new alicloud.cloudfirewall.AddressBook(\"domain\", {\n description: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"domain\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupName: std.format({\n input: \"%s%s\",\n args: [\n name,\n \"domain\",\n ],\n }).then(invoke =\u003e invoke.result),\n groupType: \"domain\",\n addressLists: [\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n ],\n});\nconst ip = new alicloud.cloudfirewall.AddressBook(\"ip\", {\n description: name,\n groupName: name,\n groupType: \"ip\",\n addressLists: [\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ],\n});\nconst defaultNatFirewallControlPolicy = new alicloud.cloudfirewall.NatFirewallControlPolicy(\"default\", {\n applicationNameLists: [\"ANY\"],\n description: name,\n release: \"false\",\n ipVersion: \"4\",\n repeatDays: [\n 1,\n 2,\n 3,\n ],\n repeatStartTime: \"21:00\",\n aclAction: \"log\",\n destPortGroup: port.groupName,\n repeatType: \"Weekly\",\n natGatewayId: defaultMbS2Ts.id,\n source: \"1.1.1.1/32\",\n direction: \"out\",\n repeatEndTime: \"21:30\",\n startTime: 1699156800,\n destination: \"1.1.1.1/32\",\n endTime: 1888545600,\n sourceType: \"net\",\n proto: \"TCP\",\n newOrder: \"1\",\n destinationType: \"net\",\n destPortType: \"group\",\n domainResolveType: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndirection = config.get(\"direction\")\nif direction is None:\n direction = \"out\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_d_ei_wf_m = alicloud.vpc.Network(\"defaultDEiWfM\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=name)\ndefault_fhdm3_f = alicloud.vpc.Switch(\"defaultFHDM3F\",\n vpc_id=default_d_ei_wf_m.id,\n zone_id=default.zones[0].id,\n cidr_block=\"172.16.2.0/24\")\ndefault_mb_s2_ts = alicloud.vpc.NatGateway(\"defaultMbS2Ts\",\n vpc_id=default_d_ei_wf_m.id,\n nat_gateway_name=name,\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_fhdm3_f.id,\n nat_type=\"Enhanced\")\nport = alicloud.cloudfirewall.AddressBook(\"port\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"port\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"port\",\n ]).result,\n group_type=\"port\",\n address_lists=[\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ])\nport_update = alicloud.cloudfirewall.AddressBook(\"port-update\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"port-update\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"port-update\",\n ]).result,\n group_type=\"port\",\n address_lists=[\n \"22/22\",\n \"23/23\",\n \"24/24\",\n ])\ndomain = alicloud.cloudfirewall.AddressBook(\"domain\",\n description=std.format(input=\"%s%s\",\n args=[\n name,\n \"domain\",\n ]).result,\n group_name=std.format(input=\"%s%s\",\n args=[\n name,\n \"domain\",\n ]).result,\n group_type=\"domain\",\n address_lists=[\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n ])\nip = alicloud.cloudfirewall.AddressBook(\"ip\",\n description=name,\n group_name=name,\n group_type=\"ip\",\n address_lists=[\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n ])\ndefault_nat_firewall_control_policy = alicloud.cloudfirewall.NatFirewallControlPolicy(\"default\",\n application_name_lists=[\"ANY\"],\n description=name,\n release=\"false\",\n ip_version=\"4\",\n repeat_days=[\n 1,\n 2,\n 3,\n ],\n repeat_start_time=\"21:00\",\n acl_action=\"log\",\n dest_port_group=port.group_name,\n repeat_type=\"Weekly\",\n nat_gateway_id=default_mb_s2_ts.id,\n source=\"1.1.1.1/32\",\n direction=\"out\",\n repeat_end_time=\"21:30\",\n start_time=1699156800,\n destination=\"1.1.1.1/32\",\n end_time=1888545600,\n source_type=\"net\",\n proto=\"TCP\",\n new_order=\"1\",\n destination_type=\"net\",\n dest_port_type=\"group\",\n domain_resolve_type=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var direction = config.Get(\"direction\") ?? \"out\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultDEiWfM = new AliCloud.Vpc.Network(\"defaultDEiWfM\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = name,\n });\n\n var defaultFHDM3F = new AliCloud.Vpc.Switch(\"defaultFHDM3F\", new()\n {\n VpcId = defaultDEiWfM.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"172.16.2.0/24\",\n });\n\n var defaultMbS2Ts = new AliCloud.Vpc.NatGateway(\"defaultMbS2Ts\", new()\n {\n VpcId = defaultDEiWfM.Id,\n NatGatewayName = name,\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultFHDM3F.Id,\n NatType = \"Enhanced\",\n });\n\n var port = new AliCloud.CloudFirewall.AddressBook(\"port\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"port\",\n AddressLists = new[]\n {\n \"22/22\",\n \"23/23\",\n \"24/24\",\n },\n });\n\n var port_update = new AliCloud.CloudFirewall.AddressBook(\"port-update\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port-update\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"port-update\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"port\",\n AddressLists = new[]\n {\n \"22/22\",\n \"23/23\",\n \"24/24\",\n },\n });\n\n var domain = new AliCloud.CloudFirewall.AddressBook(\"domain\", new()\n {\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"domain\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupName = Std.Format.Invoke(new()\n {\n Input = \"%s%s\",\n Args = new[]\n {\n name,\n \"domain\",\n },\n }).Apply(invoke =\u003e invoke.Result),\n GroupType = \"domain\",\n AddressLists = new[]\n {\n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\",\n },\n });\n\n var ip = new AliCloud.CloudFirewall.AddressBook(\"ip\", new()\n {\n Description = name,\n GroupName = name,\n GroupType = \"ip\",\n AddressLists = new[]\n {\n \"1.1.1.1/32\",\n \"2.2.2.2/32\",\n },\n });\n\n var defaultNatFirewallControlPolicy = new AliCloud.CloudFirewall.NatFirewallControlPolicy(\"default\", new()\n {\n ApplicationNameLists = new[]\n {\n \"ANY\",\n },\n Description = name,\n Release = \"false\",\n IpVersion = \"4\",\n RepeatDays = new[]\n {\n 1,\n 2,\n 3,\n },\n RepeatStartTime = \"21:00\",\n AclAction = \"log\",\n DestPortGroup = port.GroupName,\n RepeatType = \"Weekly\",\n NatGatewayId = defaultMbS2Ts.Id,\n Source = \"1.1.1.1/32\",\n Direction = \"out\",\n RepeatEndTime = \"21:30\",\n StartTime = 1699156800,\n Destination = \"1.1.1.1/32\",\n EndTime = 1888545600,\n SourceType = \"net\",\n Proto = \"TCP\",\n NewOrder = \"1\",\n DestinationType = \"net\",\n DestPortType = \"group\",\n DomainResolveType = 0,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdirection := \"out\"\n\t\tif param := cfg.Get(\"direction\"); param != \"\" {\n\t\t\tdirection = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDEiWfM, err := vpc.NewNetwork(ctx, \"defaultDEiWfM\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFHDM3F, err := vpc.NewSwitch(ctx, \"defaultFHDM3F\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultDEiWfM.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"172.16.2.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMbS2Ts, err := vpc.NewNatGateway(ctx, \"defaultMbS2Ts\", \u0026vpc.NatGatewayArgs{\n\t\t\tVpcId: defaultDEiWfM.ID(),\n\t\t\tNatGatewayName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultFHDM3F.ID(),\n\t\t\tNatType: pulumi.String(\"Enhanced\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tport, err := cloudfirewall.NewAddressBook(ctx, \"port\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat1.Result),\n\t\t\tGroupType: pulumi.String(\"port\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"22/22\"),\n\t\t\t\tpulumi.String(\"23/23\"),\n\t\t\t\tpulumi.String(\"24/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port-update\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"port-update\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"port-update\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat2.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat3.Result),\n\t\t\tGroupType: pulumi.String(\"port\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"22/22\"),\n\t\t\t\tpulumi.String(\"23/23\"),\n\t\t\t\tpulumi.String(\"24/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat4, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"domain\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat5, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s%s\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t\t\"domain\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"domain\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(invokeFormat4.Result),\n\t\t\tGroupName: pulumi.String(invokeFormat5.Result),\n\t\t\tGroupType: pulumi.String(\"domain\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"alibaba.com\"),\n\t\t\t\tpulumi.String(\"aliyun.com\"),\n\t\t\t\tpulumi.String(\"alicloud.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewAddressBook(ctx, \"ip\", \u0026cloudfirewall.AddressBookArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGroupName: pulumi.String(name),\n\t\t\tGroupType: pulumi.String(\"ip\"),\n\t\t\tAddressLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1.1.1.1/32\"),\n\t\t\t\tpulumi.String(\"2.2.2.2/32\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewNatFirewallControlPolicy(ctx, \"default\", \u0026cloudfirewall.NatFirewallControlPolicyArgs{\n\t\t\tApplicationNameLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ANY\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRelease: pulumi.String(\"false\"),\n\t\t\tIpVersion: pulumi.String(\"4\"),\n\t\t\tRepeatDays: pulumi.IntArray{\n\t\t\t\tpulumi.Int(1),\n\t\t\t\tpulumi.Int(2),\n\t\t\t\tpulumi.Int(3),\n\t\t\t},\n\t\t\tRepeatStartTime: pulumi.String(\"21:00\"),\n\t\t\tAclAction: pulumi.String(\"log\"),\n\t\t\tDestPortGroup: port.GroupName,\n\t\t\tRepeatType: pulumi.String(\"Weekly\"),\n\t\t\tNatGatewayId: defaultMbS2Ts.ID(),\n\t\t\tSource: pulumi.String(\"1.1.1.1/32\"),\n\t\t\tDirection: pulumi.String(\"out\"),\n\t\t\tRepeatEndTime: pulumi.String(\"21:30\"),\n\t\t\tStartTime: pulumi.Int(1699156800),\n\t\t\tDestination: pulumi.String(\"1.1.1.1/32\"),\n\t\t\tEndTime: pulumi.Int(1888545600),\n\t\t\tSourceType: pulumi.String(\"net\"),\n\t\t\tProto: pulumi.String(\"TCP\"),\n\t\t\tNewOrder: pulumi.String(\"1\"),\n\t\t\tDestinationType: pulumi.String(\"net\"),\n\t\t\tDestPortType: pulumi.String(\"group\"),\n\t\t\tDomainResolveType: pulumi.Int(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.NatGateway;\nimport com.pulumi.alicloud.vpc.NatGatewayArgs;\nimport com.pulumi.alicloud.cloudfirewall.AddressBook;\nimport com.pulumi.alicloud.cloudfirewall.AddressBookArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallControlPolicy;\nimport com.pulumi.alicloud.cloudfirewall.NatFirewallControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var direction = config.get(\"direction\").orElse(\"out\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultDEiWfM = new Network(\"defaultDEiWfM\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(name)\n .build());\n\n var defaultFHDM3F = new Switch(\"defaultFHDM3F\", SwitchArgs.builder()\n .vpcId(defaultDEiWfM.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"172.16.2.0/24\")\n .build());\n\n var defaultMbS2Ts = new NatGateway(\"defaultMbS2Ts\", NatGatewayArgs.builder()\n .vpcId(defaultDEiWfM.id())\n .natGatewayName(name)\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultFHDM3F.id())\n .natType(\"Enhanced\")\n .build());\n\n var port = new AddressBook(\"port\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port\")\n .build()).result())\n .groupType(\"port\")\n .addressLists( \n \"22/22\",\n \"23/23\",\n \"24/24\")\n .build());\n\n var port_update = new AddressBook(\"port-update\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port-update\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"port-update\")\n .build()).result())\n .groupType(\"port\")\n .addressLists( \n \"22/22\",\n \"23/23\",\n \"24/24\")\n .build());\n\n var domain = new AddressBook(\"domain\", AddressBookArgs.builder()\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"domain\")\n .build()).result())\n .groupName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s%s\")\n .args( \n name,\n \"domain\")\n .build()).result())\n .groupType(\"domain\")\n .addressLists( \n \"alibaba.com\",\n \"aliyun.com\",\n \"alicloud.com\")\n .build());\n\n var ip = new AddressBook(\"ip\", AddressBookArgs.builder()\n .description(name)\n .groupName(name)\n .groupType(\"ip\")\n .addressLists( \n \"1.1.1.1/32\",\n \"2.2.2.2/32\")\n .build());\n\n var defaultNatFirewallControlPolicy = new NatFirewallControlPolicy(\"defaultNatFirewallControlPolicy\", NatFirewallControlPolicyArgs.builder()\n .applicationNameLists(\"ANY\")\n .description(name)\n .release(\"false\")\n .ipVersion(\"4\")\n .repeatDays( \n 1,\n 2,\n 3)\n .repeatStartTime(\"21:00\")\n .aclAction(\"log\")\n .destPortGroup(port.groupName())\n .repeatType(\"Weekly\")\n .natGatewayId(defaultMbS2Ts.id())\n .source(\"1.1.1.1/32\")\n .direction(\"out\")\n .repeatEndTime(\"21:30\")\n .startTime(1699156800)\n .destination(\"1.1.1.1/32\")\n .endTime(1888545600)\n .sourceType(\"net\")\n .proto(\"TCP\")\n .newOrder(\"1\")\n .destinationType(\"net\")\n .destPortType(\"group\")\n .domainResolveType(0)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n direction:\n type: string\n default: out\nresources:\n defaultDEiWfM:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: ${name}\n defaultFHDM3F:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${defaultDEiWfM.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 172.16.2.0/24\n defaultMbS2Ts:\n type: alicloud:vpc:NatGateway\n properties:\n vpcId: ${defaultDEiWfM.id}\n natGatewayName: ${name}\n paymentType: PayAsYouGo\n vswitchId: ${defaultFHDM3F.id}\n natType: Enhanced\n port:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port\n return: result\n groupType: port\n addressLists:\n - 22/22\n - 23/23\n - 24/24\n port-update:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port-update\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - port-update\n return: result\n groupType: port\n addressLists:\n - 22/22\n - 23/23\n - 24/24\n domain:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - domain\n return: result\n groupName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s%s'\n args:\n - ${name}\n - domain\n return: result\n groupType: domain\n addressLists:\n - alibaba.com\n - aliyun.com\n - alicloud.com\n ip:\n type: alicloud:cloudfirewall:AddressBook\n properties:\n description: ${name}\n groupName: ${name}\n groupType: ip\n addressLists:\n - 1.1.1.1/32\n - 2.2.2.2/32\n defaultNatFirewallControlPolicy:\n type: alicloud:cloudfirewall:NatFirewallControlPolicy\n name: default\n properties:\n applicationNameLists:\n - ANY\n description: ${name}\n release: 'false'\n ipVersion: '4'\n repeatDays:\n - '1'\n - '2'\n - '3'\n repeatStartTime: 21:00\n aclAction: log\n destPortGroup: ${port.groupName}\n repeatType: Weekly\n natGatewayId: ${defaultMbS2Ts.id}\n source: 1.1.1.1/32\n direction: out\n repeatEndTime: 21:30\n startTime: '1699156800'\n destination: 1.1.1.1/32\n endTime: '1888545600'\n sourceType: net\n proto: TCP\n newOrder: '1'\n destinationType: net\n destPortType: group\n domainResolveType: '0'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Nat Firewall Control Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy example \u003cacl_uuid\u003e:\u003cnat_gateway_id\u003e:\u003cdirection\u003e\n```\n\n",
"properties": {
"aclAction": {
"type": "string",
@@ -122759,7 +124747,7 @@
}
},
"alicloud:cloudfirewall/privateDns:PrivateDns": {
- "description": "Provides a Cloud Firewall Private Dns resource.\n\nPrivate DNS Endpoint.\n\nFor information about Cloud Firewall Private Dns and how to use it, see [What is Private Dns](https://next.api.alibabacloud.com/document/Cloudfw/2017-12-07/CreatePrivateDnsEndpoint).\n\n\u003e **NOTE:** Available since v1.264.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst current = alicloud.getAccount({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: \"yqc-example-vpc\",\n});\nconst vpcvsw1 = new alicloud.vpc.Switch(\"vpcvsw1\", {\n vpcId: vpc.id,\n zoneId: \"cn-hangzhou-i\",\n cidrBlock: \"172.16.3.0/24\",\n});\nconst vpcvsw2 = new alicloud.vpc.Switch(\"vpcvsw2\", {\n vpcId: vpc.id,\n zoneId: \"cn-hangzhou-j\",\n cidrBlock: \"172.16.4.0/24\",\n});\nconst _default = new alicloud.cloudfirewall.PrivateDns(\"default\", {\n regionNo: \"cn-hangzhou\",\n accessInstanceName: name,\n port: 53,\n primaryVswitchId: vpcvsw1.id,\n standbyDns: \"4.4.4.4\",\n primaryDns: \"8.8.8.8\",\n vpcId: vpc.id,\n privateDnsType: \"Custom\",\n firewallTypes: [\"internet\"],\n ipProtocol: \"UDP\",\n standbyVswitchId: vpcvsw2.id,\n domainNameLists: [\"www.aliyun.com\"],\n primaryVswitchIp: \"172.16.3.1\",\n standbyVswitchIp: \"172.16.4.1\",\n memberUid: current.then(current =\u003e current.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ncurrent = alicloud.get_account()\nvpc = alicloud.vpc.Network(\"vpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=\"yqc-example-vpc\")\nvpcvsw1 = alicloud.vpc.Switch(\"vpcvsw1\",\n vpc_id=vpc.id,\n zone_id=\"cn-hangzhou-i\",\n cidr_block=\"172.16.3.0/24\")\nvpcvsw2 = alicloud.vpc.Switch(\"vpcvsw2\",\n vpc_id=vpc.id,\n zone_id=\"cn-hangzhou-j\",\n cidr_block=\"172.16.4.0/24\")\ndefault = alicloud.cloudfirewall.PrivateDns(\"default\",\n region_no=\"cn-hangzhou\",\n access_instance_name=name,\n port=53,\n primary_vswitch_id=vpcvsw1.id,\n standby_dns=\"4.4.4.4\",\n primary_dns=\"8.8.8.8\",\n vpc_id=vpc.id,\n private_dns_type=\"Custom\",\n firewall_types=[\"internet\"],\n ip_protocol=\"UDP\",\n standby_vswitch_id=vpcvsw2.id,\n domain_name_lists=[\"www.aliyun.com\"],\n primary_vswitch_ip=\"172.16.3.1\",\n standby_vswitch_ip=\"172.16.4.1\",\n member_uid=current.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = \"yqc-example-vpc\",\n });\n\n var vpcvsw1 = new AliCloud.Vpc.Switch(\"vpcvsw1\", new()\n {\n VpcId = vpc.Id,\n ZoneId = \"cn-hangzhou-i\",\n CidrBlock = \"172.16.3.0/24\",\n });\n\n var vpcvsw2 = new AliCloud.Vpc.Switch(\"vpcvsw2\", new()\n {\n VpcId = vpc.Id,\n ZoneId = \"cn-hangzhou-j\",\n CidrBlock = \"172.16.4.0/24\",\n });\n\n var @default = new AliCloud.CloudFirewall.PrivateDns(\"default\", new()\n {\n RegionNo = \"cn-hangzhou\",\n AccessInstanceName = name,\n Port = 53,\n PrimaryVswitchId = vpcvsw1.Id,\n StandbyDns = \"4.4.4.4\",\n PrimaryDns = \"8.8.8.8\",\n VpcId = vpc.Id,\n PrivateDnsType = \"Custom\",\n FirewallTypes = new[]\n {\n \"internet\",\n },\n IpProtocol = \"UDP\",\n StandbyVswitchId = vpcvsw2.Id,\n DomainNameLists = new[]\n {\n \"www.aliyun.com\",\n },\n PrimaryVswitchIp = \"172.16.3.1\",\n StandbyVswitchIp = \"172.16.4.1\",\n MemberUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(\"yqc-example-vpc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcvsw1, err := vpc.NewSwitch(ctx, \"vpcvsw1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcvsw2, err := vpc.NewSwitch(ctx, \"vpcvsw2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-j\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.4.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewPrivateDns(ctx, \"default\", \u0026cloudfirewall.PrivateDnsArgs{\n\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\tAccessInstanceName: pulumi.String(name),\n\t\t\tPort: pulumi.Int(53),\n\t\t\tPrimaryVswitchId: vpcvsw1.ID(),\n\t\t\tStandbyDns: pulumi.String(\"4.4.4.4\"),\n\t\t\tPrimaryDns: pulumi.String(\"8.8.8.8\"),\n\t\t\tVpcId: vpc.ID(),\n\t\t\tPrivateDnsType: pulumi.String(\"Custom\"),\n\t\t\tFirewallTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"internet\"),\n\t\t\t},\n\t\t\tIpProtocol: pulumi.String(\"UDP\"),\n\t\t\tStandbyVswitchId: vpcvsw2.ID(),\n\t\t\tDomainNameLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"www.aliyun.com\"),\n\t\t\t},\n\t\t\tPrimaryVswitchIp: pulumi.String(\"172.16.3.1\"),\n\t\t\tStandbyVswitchIp: pulumi.String(\"172.16.4.1\"),\n\t\t\tMemberUid: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudfirewall.PrivateDns;\nimport com.pulumi.alicloud.cloudfirewall.PrivateDnsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(\"yqc-example-vpc\")\n .build());\n\n var vpcvsw1 = new Switch(\"vpcvsw1\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .zoneId(\"cn-hangzhou-i\")\n .cidrBlock(\"172.16.3.0/24\")\n .build());\n\n var vpcvsw2 = new Switch(\"vpcvsw2\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .zoneId(\"cn-hangzhou-j\")\n .cidrBlock(\"172.16.4.0/24\")\n .build());\n\n var default_ = new PrivateDns(\"default\", PrivateDnsArgs.builder()\n .regionNo(\"cn-hangzhou\")\n .accessInstanceName(name)\n .port(53)\n .primaryVswitchId(vpcvsw1.id())\n .standbyDns(\"4.4.4.4\")\n .primaryDns(\"8.8.8.8\")\n .vpcId(vpc.id())\n .privateDnsType(\"Custom\")\n .firewallTypes(\"internet\")\n .ipProtocol(\"UDP\")\n .standbyVswitchId(vpcvsw2.id())\n .domainNameLists(\"www.aliyun.com\")\n .primaryVswitchIp(\"172.16.3.1\")\n .standbyVswitchIp(\"172.16.4.1\")\n .memberUid(current.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: yqc-example-vpc\n vpcvsw1:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc.id}\n zoneId: cn-hangzhou-i\n cidrBlock: 172.16.3.0/24\n vpcvsw2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc.id}\n zoneId: cn-hangzhou-j\n cidrBlock: 172.16.4.0/24\n default:\n type: alicloud:cloudfirewall:PrivateDns\n properties:\n regionNo: cn-hangzhou\n accessInstanceName: ${name}\n port: '53'\n primaryVswitchId: ${vpcvsw1.id}\n standbyDns: 4.4.4.4\n primaryDns: 8.8.8.8\n vpcId: ${vpc.id}\n privateDnsType: Custom\n firewallTypes:\n - internet\n ipProtocol: UDP\n standbyVswitchId: ${vpcvsw2.id}\n domainNameLists:\n - www.aliyun.com\n primaryVswitchIp: 172.16.3.1\n standbyVswitchIp: 172.16.4.1\n memberUid: ${current.id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Private Dns can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/privateDns:PrivateDns example \u003caccess_instance_id\u003e:\u003cregion_no\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Private Dns resource.\n\nPrivate DNS Endpoint.\n\nFor information about Cloud Firewall Private Dns and how to use it, see [What is Private Dns](https://next.api.alibabacloud.com/document/Cloudfw/2017-12-07/CreatePrivateDnsEndpoint).\n\n\u003e **NOTE:** Available since v1.264.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst current = alicloud.getAccount({});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n cidrBlock: \"172.16.0.0/12\",\n vpcName: \"yqc-example-vpc\",\n});\nconst vpcvsw1 = new alicloud.vpc.Switch(\"vpcvsw1\", {\n vpcId: vpc.id,\n zoneId: \"cn-hangzhou-i\",\n cidrBlock: \"172.16.3.0/24\",\n});\nconst vpcvsw2 = new alicloud.vpc.Switch(\"vpcvsw2\", {\n vpcId: vpc.id,\n zoneId: \"cn-hangzhou-j\",\n cidrBlock: \"172.16.4.0/24\",\n});\nconst _default = new alicloud.cloudfirewall.PrivateDns(\"default\", {\n regionNo: \"cn-hangzhou\",\n accessInstanceName: name,\n port: 53,\n primaryVswitchId: vpcvsw1.id,\n standbyDns: \"4.4.4.4\",\n primaryDns: \"8.8.8.8\",\n vpcId: vpc.id,\n privateDnsType: \"Custom\",\n firewallTypes: [\"internet\"],\n ipProtocol: \"UDP\",\n standbyVswitchId: vpcvsw2.id,\n domainNameLists: [\"www.aliyun.com\"],\n primaryVswitchIp: \"172.16.3.1\",\n standbyVswitchIp: \"172.16.4.1\",\n memberUid: current.then(current =\u003e current.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ncurrent = alicloud.get_account()\nvpc = alicloud.vpc.Network(\"vpc\",\n cidr_block=\"172.16.0.0/12\",\n vpc_name=\"yqc-example-vpc\")\nvpcvsw1 = alicloud.vpc.Switch(\"vpcvsw1\",\n vpc_id=vpc.id,\n zone_id=\"cn-hangzhou-i\",\n cidr_block=\"172.16.3.0/24\")\nvpcvsw2 = alicloud.vpc.Switch(\"vpcvsw2\",\n vpc_id=vpc.id,\n zone_id=\"cn-hangzhou-j\",\n cidr_block=\"172.16.4.0/24\")\ndefault = alicloud.cloudfirewall.PrivateDns(\"default\",\n region_no=\"cn-hangzhou\",\n access_instance_name=name,\n port=53,\n primary_vswitch_id=vpcvsw1.id,\n standby_dns=\"4.4.4.4\",\n primary_dns=\"8.8.8.8\",\n vpc_id=vpc.id,\n private_dns_type=\"Custom\",\n firewall_types=[\"internet\"],\n ip_protocol=\"UDP\",\n standby_vswitch_id=vpcvsw2.id,\n domain_name_lists=[\"www.aliyun.com\"],\n primary_vswitch_ip=\"172.16.3.1\",\n standby_vswitch_ip=\"172.16.4.1\",\n member_uid=current.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n VpcName = \"yqc-example-vpc\",\n });\n\n var vpcvsw1 = new AliCloud.Vpc.Switch(\"vpcvsw1\", new()\n {\n VpcId = vpc.Id,\n ZoneId = \"cn-hangzhou-i\",\n CidrBlock = \"172.16.3.0/24\",\n });\n\n var vpcvsw2 = new AliCloud.Vpc.Switch(\"vpcvsw2\", new()\n {\n VpcId = vpc.Id,\n ZoneId = \"cn-hangzhou-j\",\n CidrBlock = \"172.16.4.0/24\",\n });\n\n var @default = new AliCloud.CloudFirewall.PrivateDns(\"default\", new()\n {\n RegionNo = \"cn-hangzhou\",\n AccessInstanceName = name,\n Port = 53,\n PrimaryVswitchId = vpcvsw1.Id,\n StandbyDns = \"4.4.4.4\",\n PrimaryDns = \"8.8.8.8\",\n VpcId = vpc.Id,\n PrivateDnsType = \"Custom\",\n FirewallTypes = new[]\n {\n \"internet\",\n },\n IpProtocol = \"UDP\",\n StandbyVswitchId = vpcvsw2.Id,\n DomainNameLists = new[]\n {\n \"www.aliyun.com\",\n },\n PrimaryVswitchIp = \"172.16.3.1\",\n StandbyVswitchIp = \"172.16.4.1\",\n MemberUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tVpcName: pulumi.String(\"yqc-example-vpc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcvsw1, err := vpc.NewSwitch(ctx, \"vpcvsw1\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcvsw2, err := vpc.NewSwitch(ctx, \"vpcvsw2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-j\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.4.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewPrivateDns(ctx, \"default\", \u0026cloudfirewall.PrivateDnsArgs{\n\t\t\tRegionNo: pulumi.String(\"cn-hangzhou\"),\n\t\t\tAccessInstanceName: pulumi.String(name),\n\t\t\tPort: pulumi.Int(53),\n\t\t\tPrimaryVswitchId: vpcvsw1.ID(),\n\t\t\tStandbyDns: pulumi.String(\"4.4.4.4\"),\n\t\t\tPrimaryDns: pulumi.String(\"8.8.8.8\"),\n\t\t\tVpcId: vpc.ID(),\n\t\t\tPrivateDnsType: pulumi.String(\"Custom\"),\n\t\t\tFirewallTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"internet\"),\n\t\t\t},\n\t\t\tIpProtocol: pulumi.String(\"UDP\"),\n\t\t\tStandbyVswitchId: vpcvsw2.ID(),\n\t\t\tDomainNameLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"www.aliyun.com\"),\n\t\t\t},\n\t\t\tPrimaryVswitchIp: pulumi.String(\"172.16.3.1\"),\n\t\t\tStandbyVswitchIp: pulumi.String(\"172.16.4.1\"),\n\t\t\tMemberUid: pulumi.String(current.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudfirewall.PrivateDns;\nimport com.pulumi.alicloud.cloudfirewall.PrivateDnsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .vpcName(\"yqc-example-vpc\")\n .build());\n\n var vpcvsw1 = new Switch(\"vpcvsw1\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .zoneId(\"cn-hangzhou-i\")\n .cidrBlock(\"172.16.3.0/24\")\n .build());\n\n var vpcvsw2 = new Switch(\"vpcvsw2\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .zoneId(\"cn-hangzhou-j\")\n .cidrBlock(\"172.16.4.0/24\")\n .build());\n\n var default_ = new PrivateDns(\"default\", PrivateDnsArgs.builder()\n .regionNo(\"cn-hangzhou\")\n .accessInstanceName(name)\n .port(53)\n .primaryVswitchId(vpcvsw1.id())\n .standbyDns(\"4.4.4.4\")\n .primaryDns(\"8.8.8.8\")\n .vpcId(vpc.id())\n .privateDnsType(\"Custom\")\n .firewallTypes(\"internet\")\n .ipProtocol(\"UDP\")\n .standbyVswitchId(vpcvsw2.id())\n .domainNameLists(\"www.aliyun.com\")\n .primaryVswitchIp(\"172.16.3.1\")\n .standbyVswitchIp(\"172.16.4.1\")\n .memberUid(current.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n vpc:\n type: alicloud:vpc:Network\n properties:\n cidrBlock: 172.16.0.0/12\n vpcName: yqc-example-vpc\n vpcvsw1:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc.id}\n zoneId: cn-hangzhou-i\n cidrBlock: 172.16.3.0/24\n vpcvsw2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc.id}\n zoneId: cn-hangzhou-j\n cidrBlock: 172.16.4.0/24\n default:\n type: alicloud:cloudfirewall:PrivateDns\n properties:\n regionNo: cn-hangzhou\n accessInstanceName: ${name}\n port: '53'\n primaryVswitchId: ${vpcvsw1.id}\n standbyDns: 4.4.4.4\n primaryDns: 8.8.8.8\n vpcId: ${vpc.id}\n privateDnsType: Custom\n firewallTypes:\n - internet\n ipProtocol: UDP\n standbyVswitchId: ${vpcvsw2.id}\n domainNameLists:\n - www.aliyun.com\n primaryVswitchIp: 172.16.3.1\n standbyVswitchIp: 172.16.4.1\n memberUid: ${current.id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Private Dns can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/privateDns:PrivateDns example \u003caccess_instance_id\u003e:\u003cregion_no\u003e\n```\n\n",
"properties": {
"accessInstanceId": {
"type": "string",
@@ -123076,7 +125064,7 @@
}
},
"alicloud:cloudfirewall/vpcCenTrFirewall:VpcCenTrFirewall": {
- "description": "Provides a Cloud Firewall Vpc Cen Tr Firewall resource.\n\nVPC firewall Cloud Enterprise Network Enterprise Edition.\n\nFor information about Cloud Firewall Vpc Cen Tr Firewall and how to use it, see [What is Vpc Cen Tr Firewall](https://www.alibabacloud.com/help/en/cloud-firewall/cloudfirewall/developer-reference/api-cloudfw-2017-12-07-createtrfirewallv2).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as time from \"@pulumi/time\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst description = config.get(\"description\") || \"Created by Terraform\";\nconst firewallName = config.get(\"firewallName\") || \"tf-example\";\nconst trAttachmentMasterCidr = config.get(\"trAttachmentMasterCidr\") || \"192.168.3.192/26\";\nconst firewallSubnetCidr = config.get(\"firewallSubnetCidr\") || \"192.168.3.0/25\";\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst trAttachmentSlaveCidr = config.get(\"trAttachmentSlaveCidr\") || \"192.168.3.128/26\";\nconst firewallVpcCidr = config.get(\"firewallVpcCidr\") || \"192.168.3.0/24\";\nconst zone1 = config.get(\"zone1\") || \"cn-hangzhou-h\";\nconst firewallNameUpdate = config.get(\"firewallNameUpdate\") || \"tf-example-1\";\nconst zone2 = config.get(\"zone2\") || \"cn-hangzhou-i\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst cen = new alicloud.cen.Instance(\"cen\", {\n description: \"terraform example\",\n cenInstanceName: name,\n});\nconst tr = new alicloud.cen.TransitRouter(\"tr\", {\n transitRouterName: name,\n transitRouterDescription: \"tr-created-by-terraform\",\n cenId: cen.id,\n});\nconst vpc1 = new alicloud.vpc.Network(\"vpc1\", {\n description: \"created by terraform\",\n cidrBlock: \"192.168.1.0/24\",\n vpcName: name,\n});\nconst vpc1vsw1 = new alicloud.vpc.Switch(\"vpc1vsw1\", {\n cidrBlock: \"192.168.1.0/25\",\n vswitchName: name,\n vpcId: vpc1.id,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]),\n});\nconst vpc1vsw2 = new alicloud.vpc.Switch(\"vpc1vsw2\", {\n vpcId: vpc1.id,\n cidrBlock: \"192.168.1.128/26\",\n vswitchName: name,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[2]),\n});\nconst foo = new alicloud.vpc.RouteTable(\"foo\", {\n vpcId: vpc1.id,\n routeTableName: name,\n description: name,\n});\nconst tr_vpc1 = new alicloud.cen.TransitRouterVpcAttachment(\"tr-vpc1\", {\n zoneMappings: [\n {\n vswitchId: vpc1vsw1.id,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]),\n },\n {\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[2]),\n vswitchId: vpc1vsw2.id,\n },\n ],\n vpcId: vpc1.id,\n cenId: cen.id,\n transitRouterId: tr.transitRouterId,\n}, {\n dependsOn: [foo],\n});\nconst wait10Minutes = new time.index.Sleep(\"wait_10_minutes\", {createDuration: \"10m\"}, {\n dependsOn: [tr_vpc1],\n});\nconst defaultVpcCenTrFirewall = new alicloud.cloudfirewall.VpcCenTrFirewall(\"default\", {\n cenId: tr_vpc1.cenId,\n firewallName: name,\n firewallSubnetCidr: firewallSubnetCidr,\n trAttachmentSlaveCidr: trAttachmentSlaveCidr,\n firewallDescription: \"VpcCenTrFirewall created by terraform\",\n regionNo: region,\n trAttachmentMasterCidr: trAttachmentMasterCidr,\n firewallVpcCidr: firewallVpcCidr,\n transitRouterId: tr.transitRouterId,\n routeMode: \"managed\",\n}, {\n dependsOn: [wait10Minutes],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_time as time\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndescription = config.get(\"description\")\nif description is None:\n description = \"Created by Terraform\"\nfirewall_name = config.get(\"firewallName\")\nif firewall_name is None:\n firewall_name = \"tf-example\"\ntr_attachment_master_cidr = config.get(\"trAttachmentMasterCidr\")\nif tr_attachment_master_cidr is None:\n tr_attachment_master_cidr = \"192.168.3.192/26\"\nfirewall_subnet_cidr = config.get(\"firewallSubnetCidr\")\nif firewall_subnet_cidr is None:\n firewall_subnet_cidr = \"192.168.3.0/25\"\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\ntr_attachment_slave_cidr = config.get(\"trAttachmentSlaveCidr\")\nif tr_attachment_slave_cidr is None:\n tr_attachment_slave_cidr = \"192.168.3.128/26\"\nfirewall_vpc_cidr = config.get(\"firewallVpcCidr\")\nif firewall_vpc_cidr is None:\n firewall_vpc_cidr = \"192.168.3.0/24\"\nzone1 = config.get(\"zone1\")\nif zone1 is None:\n zone1 = \"cn-hangzhou-h\"\nfirewall_name_update = config.get(\"firewallNameUpdate\")\nif firewall_name_update is None:\n firewall_name_update = \"tf-example-1\"\nzone2 = config.get(\"zone2\")\nif zone2 is None:\n zone2 = \"cn-hangzhou-i\"\ndefault = alicloud.cen.get_transit_router_available_resources()\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ncen = alicloud.cen.Instance(\"cen\",\n description=\"terraform example\",\n cen_instance_name=name)\ntr = alicloud.cen.TransitRouter(\"tr\",\n transit_router_name=name,\n transit_router_description=\"tr-created-by-terraform\",\n cen_id=cen.id)\nvpc1 = alicloud.vpc.Network(\"vpc1\",\n description=\"created by terraform\",\n cidr_block=\"192.168.1.0/24\",\n vpc_name=name)\nvpc1vsw1 = alicloud.vpc.Switch(\"vpc1vsw1\",\n cidr_block=\"192.168.1.0/25\",\n vswitch_name=name,\n vpc_id=vpc1.id,\n zone_id=default.resources[0].master_zones[1])\nvpc1vsw2 = alicloud.vpc.Switch(\"vpc1vsw2\",\n vpc_id=vpc1.id,\n cidr_block=\"192.168.1.128/26\",\n vswitch_name=name,\n zone_id=default.resources[0].master_zones[2])\nfoo = alicloud.vpc.RouteTable(\"foo\",\n vpc_id=vpc1.id,\n route_table_name=name,\n description=name)\ntr_vpc1 = alicloud.cen.TransitRouterVpcAttachment(\"tr-vpc1\",\n zone_mappings=[\n {\n \"vswitch_id\": vpc1vsw1.id,\n \"zone_id\": default.resources[0].master_zones[1],\n },\n {\n \"zone_id\": default.resources[0].master_zones[2],\n \"vswitch_id\": vpc1vsw2.id,\n },\n ],\n vpc_id=vpc1.id,\n cen_id=cen.id,\n transit_router_id=tr.transit_router_id,\n opts = pulumi.ResourceOptions(depends_on=[foo]))\nwait10_minutes = time.index.Sleep(\"wait_10_minutes\", create_duration=10m,\nopts = pulumi.ResourceOptions(depends_on=[tr_vpc1]))\ndefault_vpc_cen_tr_firewall = alicloud.cloudfirewall.VpcCenTrFirewall(\"default\",\n cen_id=tr_vpc1.cen_id,\n firewall_name=name,\n firewall_subnet_cidr=firewall_subnet_cidr,\n tr_attachment_slave_cidr=tr_attachment_slave_cidr,\n firewall_description=\"VpcCenTrFirewall created by terraform\",\n region_no=region,\n tr_attachment_master_cidr=tr_attachment_master_cidr,\n firewall_vpc_cidr=firewall_vpc_cidr,\n transit_router_id=tr.transit_router_id,\n route_mode=\"managed\",\n opts = pulumi.ResourceOptions(depends_on=[wait10_minutes]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Time = Pulumi.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var description = config.Get(\"description\") ?? \"Created by Terraform\";\n var firewallName = config.Get(\"firewallName\") ?? \"tf-example\";\n var trAttachmentMasterCidr = config.Get(\"trAttachmentMasterCidr\") ?? \"192.168.3.192/26\";\n var firewallSubnetCidr = config.Get(\"firewallSubnetCidr\") ?? \"192.168.3.0/25\";\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var trAttachmentSlaveCidr = config.Get(\"trAttachmentSlaveCidr\") ?? \"192.168.3.128/26\";\n var firewallVpcCidr = config.Get(\"firewallVpcCidr\") ?? \"192.168.3.0/24\";\n var zone1 = config.Get(\"zone1\") ?? \"cn-hangzhou-h\";\n var firewallNameUpdate = config.Get(\"firewallNameUpdate\") ?? \"tf-example-1\";\n var zone2 = config.Get(\"zone2\") ?? \"cn-hangzhou-i\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var cen = new AliCloud.Cen.Instance(\"cen\", new()\n {\n Description = \"terraform example\",\n CenInstanceName = name,\n });\n\n var tr = new AliCloud.Cen.TransitRouter(\"tr\", new()\n {\n TransitRouterName = name,\n TransitRouterDescription = \"tr-created-by-terraform\",\n CenId = cen.Id,\n });\n\n var vpc1 = new AliCloud.Vpc.Network(\"vpc1\", new()\n {\n Description = \"created by terraform\",\n CidrBlock = \"192.168.1.0/24\",\n VpcName = name,\n });\n\n var vpc1vsw1 = new AliCloud.Vpc.Switch(\"vpc1vsw1\", new()\n {\n CidrBlock = \"192.168.1.0/25\",\n VswitchName = name,\n VpcId = vpc1.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1])),\n });\n\n var vpc1vsw2 = new AliCloud.Vpc.Switch(\"vpc1vsw2\", new()\n {\n VpcId = vpc1.Id,\n CidrBlock = \"192.168.1.128/26\",\n VswitchName = name,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[2])),\n });\n\n var foo = new AliCloud.Vpc.RouteTable(\"foo\", new()\n {\n VpcId = vpc1.Id,\n RouteTableName = name,\n Description = name,\n });\n\n var tr_vpc1 = new AliCloud.Cen.TransitRouterVpcAttachment(\"tr-vpc1\", new()\n {\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n VswitchId = vpc1vsw1.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1])),\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[2])),\n VswitchId = vpc1vsw2.Id,\n },\n },\n VpcId = vpc1.Id,\n CenId = cen.Id,\n TransitRouterId = tr.TransitRouterId,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n foo,\n },\n });\n\n var wait10Minutes = new Time.Index.Sleep(\"wait_10_minutes\", new()\n {\n CreateDuration = \"10m\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n tr_vpc1,\n },\n });\n\n var defaultVpcCenTrFirewall = new AliCloud.CloudFirewall.VpcCenTrFirewall(\"default\", new()\n {\n CenId = tr_vpc1.CenId,\n FirewallName = name,\n FirewallSubnetCidr = firewallSubnetCidr,\n TrAttachmentSlaveCidr = trAttachmentSlaveCidr,\n FirewallDescription = \"VpcCenTrFirewall created by terraform\",\n RegionNo = region,\n TrAttachmentMasterCidr = trAttachmentMasterCidr,\n FirewallVpcCidr = firewallVpcCidr,\n TransitRouterId = tr.TransitRouterId,\n RouteMode = \"managed\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n wait10Minutes,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdescription := \"Created by Terraform\"\n\t\tif param := cfg.Get(\"description\"); param != \"\" {\n\t\t\tdescription = param\n\t\t}\n\t\tfirewallName := \"tf-example\"\n\t\tif param := cfg.Get(\"firewallName\"); param != \"\" {\n\t\t\tfirewallName = param\n\t\t}\n\t\ttrAttachmentMasterCidr := \"192.168.3.192/26\"\n\t\tif param := cfg.Get(\"trAttachmentMasterCidr\"); param != \"\" {\n\t\t\ttrAttachmentMasterCidr = param\n\t\t}\n\t\tfirewallSubnetCidr := \"192.168.3.0/25\"\n\t\tif param := cfg.Get(\"firewallSubnetCidr\"); param != \"\" {\n\t\t\tfirewallSubnetCidr = param\n\t\t}\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\ttrAttachmentSlaveCidr := \"192.168.3.128/26\"\n\t\tif param := cfg.Get(\"trAttachmentSlaveCidr\"); param != \"\" {\n\t\t\ttrAttachmentSlaveCidr = param\n\t\t}\n\t\tfirewallVpcCidr := \"192.168.3.0/24\"\n\t\tif param := cfg.Get(\"firewallVpcCidr\"); param != \"\" {\n\t\t\tfirewallVpcCidr = param\n\t\t}\n\t\tzone1 := \"cn-hangzhou-h\"\n\t\tif param := cfg.Get(\"zone1\"); param != \"\" {\n\t\t\tzone1 = param\n\t\t}\n\t\tfirewallNameUpdate := \"tf-example-1\"\n\t\tif param := cfg.Get(\"firewallNameUpdate\"); param != \"\" {\n\t\t\tfirewallNameUpdate = param\n\t\t}\n\t\tzone2 := \"cn-hangzhou-i\"\n\t\tif param := cfg.Get(\"zone2\"); param != \"\" {\n\t\t\tzone2 = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcen, err := cen.NewInstance(ctx, \"cen\", \u0026cen.InstanceArgs{\n\t\t\tDescription: pulumi.String(\"terraform example\"),\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttr, err := cen.NewTransitRouter(ctx, \"tr\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tTransitRouterDescription: pulumi.String(\"tr-created-by-terraform\"),\n\t\t\tCenId: cen.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1, err := vpc.NewNetwork(ctx, \"vpc1\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(\"created by terraform\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1vsw1, err := vpc.NewSwitch(ctx, \"vpc1vsw1\", \u0026vpc.SwitchArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/25\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[1]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1vsw2, err := vpc.NewSwitch(ctx, \"vpc1vsw2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.128/26\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[2]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfoo, err := vpc.NewRouteTable(ctx, \"foo\", \u0026vpc.RouteTableArgs{\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tRouteTableName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttr_vpc1, err := cen.NewTransitRouterVpcAttachment(ctx, \"tr-vpc1\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tVswitchId: vpc1vsw1.ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[1]),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[2]),\n\t\t\t\t\tVswitchId: vpc1vsw2.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tCenId: cen.ID(),\n\t\t\tTransitRouterId: tr.TransitRouterId,\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tfoo,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\twait10Minutes, err := time.NewSleep(ctx, \"wait_10_minutes\", \u0026time.SleepArgs{\n\t\t\tCreateDuration: \"10m\",\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ttr_vpc1,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewVpcCenTrFirewall(ctx, \"default\", \u0026cloudfirewall.VpcCenTrFirewallArgs{\n\t\t\tCenId: tr_vpc1.CenId,\n\t\t\tFirewallName: pulumi.String(name),\n\t\t\tFirewallSubnetCidr: pulumi.String(firewallSubnetCidr),\n\t\t\tTrAttachmentSlaveCidr: pulumi.String(trAttachmentSlaveCidr),\n\t\t\tFirewallDescription: pulumi.String(\"VpcCenTrFirewall created by terraform\"),\n\t\t\tRegionNo: pulumi.String(region),\n\t\t\tTrAttachmentMasterCidr: pulumi.String(trAttachmentMasterCidr),\n\t\t\tFirewallVpcCidr: pulumi.String(firewallVpcCidr),\n\t\t\tTransitRouterId: tr.TransitRouterId,\n\t\t\tRouteMode: pulumi.String(\"managed\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\twait10Minutes,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.RouteTable;\nimport com.pulumi.alicloud.vpc.RouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.time.Sleep;\nimport com.pulumi.time.SleepArgs;\nimport com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewall;\nimport com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewallArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var description = config.get(\"description\").orElse(\"Created by Terraform\");\n final var firewallName = config.get(\"firewallName\").orElse(\"tf-example\");\n final var trAttachmentMasterCidr = config.get(\"trAttachmentMasterCidr\").orElse(\"192.168.3.192/26\");\n final var firewallSubnetCidr = config.get(\"firewallSubnetCidr\").orElse(\"192.168.3.0/25\");\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var trAttachmentSlaveCidr = config.get(\"trAttachmentSlaveCidr\").orElse(\"192.168.3.128/26\");\n final var firewallVpcCidr = config.get(\"firewallVpcCidr\").orElse(\"192.168.3.0/24\");\n final var zone1 = config.get(\"zone1\").orElse(\"cn-hangzhou-h\");\n final var firewallNameUpdate = config.get(\"firewallNameUpdate\").orElse(\"tf-example-1\");\n final var zone2 = config.get(\"zone2\").orElse(\"cn-hangzhou-i\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var cen = new Instance(\"cen\", InstanceArgs.builder()\n .description(\"terraform example\")\n .cenInstanceName(name)\n .build());\n\n var tr = new TransitRouter(\"tr\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .transitRouterDescription(\"tr-created-by-terraform\")\n .cenId(cen.id())\n .build());\n\n var vpc1 = new Network(\"vpc1\", NetworkArgs.builder()\n .description(\"created by terraform\")\n .cidrBlock(\"192.168.1.0/24\")\n .vpcName(name)\n .build());\n\n var vpc1vsw1 = new Switch(\"vpc1vsw1\", SwitchArgs.builder()\n .cidrBlock(\"192.168.1.0/25\")\n .vswitchName(name)\n .vpcId(vpc1.id())\n .zoneId(default_.resources()[0].masterZones()[1])\n .build());\n\n var vpc1vsw2 = new Switch(\"vpc1vsw2\", SwitchArgs.builder()\n .vpcId(vpc1.id())\n .cidrBlock(\"192.168.1.128/26\")\n .vswitchName(name)\n .zoneId(default_.resources()[0].masterZones()[2])\n .build());\n\n var foo = new RouteTable(\"foo\", RouteTableArgs.builder()\n .vpcId(vpc1.id())\n .routeTableName(name)\n .description(name)\n .build());\n\n var tr_vpc1 = new TransitRouterVpcAttachment(\"tr-vpc1\", TransitRouterVpcAttachmentArgs.builder()\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .vswitchId(vpc1vsw1.id())\n .zoneId(default_.resources()[0].masterZones()[1])\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(default_.resources()[0].masterZones()[2])\n .vswitchId(vpc1vsw2.id())\n .build())\n .vpcId(vpc1.id())\n .cenId(cen.id())\n .transitRouterId(tr.transitRouterId())\n .build(), CustomResourceOptions.builder()\n .dependsOn(foo)\n .build());\n\n var wait10Minutes = new Sleep(\"wait10Minutes\", SleepArgs.builder()\n .createDuration(\"10m\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(List.of(tr_vpc1))\n .build());\n\n var defaultVpcCenTrFirewall = new VpcCenTrFirewall(\"defaultVpcCenTrFirewall\", VpcCenTrFirewallArgs.builder()\n .cenId(tr_vpc1.cenId())\n .firewallName(name)\n .firewallSubnetCidr(firewallSubnetCidr)\n .trAttachmentSlaveCidr(trAttachmentSlaveCidr)\n .firewallDescription(\"VpcCenTrFirewall created by terraform\")\n .regionNo(region)\n .trAttachmentMasterCidr(trAttachmentMasterCidr)\n .firewallVpcCidr(firewallVpcCidr)\n .transitRouterId(tr.transitRouterId())\n .routeMode(\"managed\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(wait10Minutes)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n description:\n type: string\n default: Created by Terraform\n firewallName:\n type: string\n default: tf-example\n trAttachmentMasterCidr:\n type: string\n default: 192.168.3.192/26\n firewallSubnetCidr:\n type: string\n default: 192.168.3.0/25\n region:\n type: string\n default: cn-hangzhou\n trAttachmentSlaveCidr:\n type: string\n default: 192.168.3.128/26\n firewallVpcCidr:\n type: string\n default: 192.168.3.0/24\n zone1:\n type: string\n default: cn-hangzhou-h\n firewallNameUpdate:\n type: string\n default: tf-example-1\n zone2:\n type: string\n default: cn-hangzhou-i\nresources:\n cen:\n type: alicloud:cen:Instance\n properties:\n description: terraform example\n cenInstanceName: ${name}\n tr:\n type: alicloud:cen:TransitRouter\n properties:\n transitRouterName: ${name}\n transitRouterDescription: tr-created-by-terraform\n cenId: ${cen.id}\n vpc1:\n type: alicloud:vpc:Network\n properties:\n description: created by terraform\n cidrBlock: 192.168.1.0/24\n vpcName: ${name}\n vpc1vsw1:\n type: alicloud:vpc:Switch\n properties:\n cidrBlock: 192.168.1.0/25\n vswitchName: ${name}\n vpcId: ${vpc1.id}\n zoneId: ${default.resources[0].masterZones[1]}\n vpc1vsw2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc1.id}\n cidrBlock: 192.168.1.128/26\n vswitchName: ${name}\n zoneId: ${default.resources[0].masterZones[2]}\n foo:\n type: alicloud:vpc:RouteTable\n properties:\n vpcId: ${vpc1.id}\n routeTableName: ${name}\n description: ${name}\n tr-vpc1:\n type: alicloud:cen:TransitRouterVpcAttachment\n properties:\n zoneMappings:\n - vswitchId: ${vpc1vsw1.id}\n zoneId: ${default.resources[0].masterZones[1]}\n - zoneId: ${default.resources[0].masterZones[2]}\n vswitchId: ${vpc1vsw2.id}\n vpcId: ${vpc1.id}\n cenId: ${cen.id}\n transitRouterId: ${tr.transitRouterId}\n options:\n dependsOn:\n - ${foo}\n wait10Minutes:\n type: time:Sleep\n name: wait_10_minutes\n properties:\n createDuration: 10m\n options:\n dependsOn:\n - ${[\"tr-vpc1\"]}\n defaultVpcCenTrFirewall:\n type: alicloud:cloudfirewall:VpcCenTrFirewall\n name: default\n properties:\n cenId: ${[\"tr-vpc1\"].cenId}\n firewallName: ${name}\n firewallSubnetCidr: ${firewallSubnetCidr}\n trAttachmentSlaveCidr: ${trAttachmentSlaveCidr}\n firewallDescription: VpcCenTrFirewall created by terraform\n regionNo: ${region}\n trAttachmentMasterCidr: ${trAttachmentMasterCidr}\n firewallVpcCidr: ${firewallVpcCidr}\n transitRouterId: ${tr.transitRouterId}\n routeMode: managed\n options:\n dependsOn:\n - ${wait10Minutes}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Firewall Vpc Cen Tr Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/vpcCenTrFirewall:VpcCenTrFirewall example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Firewall Vpc Cen Tr Firewall resource.\n\nVPC firewall Cloud Enterprise Network Enterprise Edition.\n\nFor information about Cloud Firewall Vpc Cen Tr Firewall and how to use it, see [What is Vpc Cen Tr Firewall](https://www.alibabacloud.com/help/en/cloud-firewall/cloudfirewall/developer-reference/api-cloudfw-2017-12-07-createtrfirewallv2).\n\n\u003e **NOTE:** Available since v1.228.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as time from \"@pulumi/time\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst description = config.get(\"description\") || \"Created by Terraform\";\nconst firewallName = config.get(\"firewallName\") || \"tf-example\";\nconst trAttachmentMasterCidr = config.get(\"trAttachmentMasterCidr\") || \"192.168.3.192/26\";\nconst firewallSubnetCidr = config.get(\"firewallSubnetCidr\") || \"192.168.3.0/25\";\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst trAttachmentSlaveCidr = config.get(\"trAttachmentSlaveCidr\") || \"192.168.3.128/26\";\nconst firewallVpcCidr = config.get(\"firewallVpcCidr\") || \"192.168.3.0/24\";\nconst zone1 = config.get(\"zone1\") || \"cn-hangzhou-h\";\nconst firewallNameUpdate = config.get(\"firewallNameUpdate\") || \"tf-example-1\";\nconst zone2 = config.get(\"zone2\") || \"cn-hangzhou-i\";\nconst _default = alicloud.cen.getTransitRouterAvailableResources({});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst cen = new alicloud.cen.Instance(\"cen\", {\n description: \"terraform example\",\n cenInstanceName: name,\n});\nconst tr = new alicloud.cen.TransitRouter(\"tr\", {\n transitRouterName: name,\n transitRouterDescription: \"tr-created-by-terraform\",\n cenId: cen.id,\n});\nconst vpc1 = new alicloud.vpc.Network(\"vpc1\", {\n description: \"created by terraform\",\n cidrBlock: \"192.168.1.0/24\",\n vpcName: name,\n});\nconst vpc1vsw1 = new alicloud.vpc.Switch(\"vpc1vsw1\", {\n cidrBlock: \"192.168.1.0/25\",\n vswitchName: name,\n vpcId: vpc1.id,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]),\n});\nconst vpc1vsw2 = new alicloud.vpc.Switch(\"vpc1vsw2\", {\n vpcId: vpc1.id,\n cidrBlock: \"192.168.1.128/26\",\n vswitchName: name,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[2]),\n});\nconst foo = new alicloud.vpc.RouteTable(\"foo\", {\n vpcId: vpc1.id,\n routeTableName: name,\n description: name,\n});\nconst tr_vpc1 = new alicloud.cen.TransitRouterVpcAttachment(\"tr-vpc1\", {\n zoneMappings: [\n {\n vswitchId: vpc1vsw1.id,\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[1]),\n },\n {\n zoneId: _default.then(_default =\u003e _default.resources?.[0]?.masterZones?.[2]),\n vswitchId: vpc1vsw2.id,\n },\n ],\n vpcId: vpc1.id,\n cenId: cen.id,\n transitRouterId: tr.transitRouterId,\n}, {\n dependsOn: [foo],\n});\nconst wait10Minutes = new time.index.Sleep(\"wait_10_minutes\", {createDuration: \"10m\"}, {\n dependsOn: [tr_vpc1],\n});\nconst defaultVpcCenTrFirewall = new alicloud.cloudfirewall.VpcCenTrFirewall(\"default\", {\n cenId: tr_vpc1.cenId,\n firewallName: name,\n firewallSubnetCidr: firewallSubnetCidr,\n trAttachmentSlaveCidr: trAttachmentSlaveCidr,\n firewallDescription: \"VpcCenTrFirewall created by terraform\",\n regionNo: region,\n trAttachmentMasterCidr: trAttachmentMasterCidr,\n firewallVpcCidr: firewallVpcCidr,\n transitRouterId: tr.transitRouterId,\n routeMode: \"managed\",\n}, {\n dependsOn: [wait10Minutes],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_time as time\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndescription = config.get(\"description\")\nif description is None:\n description = \"Created by Terraform\"\nfirewall_name = config.get(\"firewallName\")\nif firewall_name is None:\n firewall_name = \"tf-example\"\ntr_attachment_master_cidr = config.get(\"trAttachmentMasterCidr\")\nif tr_attachment_master_cidr is None:\n tr_attachment_master_cidr = \"192.168.3.192/26\"\nfirewall_subnet_cidr = config.get(\"firewallSubnetCidr\")\nif firewall_subnet_cidr is None:\n firewall_subnet_cidr = \"192.168.3.0/25\"\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\ntr_attachment_slave_cidr = config.get(\"trAttachmentSlaveCidr\")\nif tr_attachment_slave_cidr is None:\n tr_attachment_slave_cidr = \"192.168.3.128/26\"\nfirewall_vpc_cidr = config.get(\"firewallVpcCidr\")\nif firewall_vpc_cidr is None:\n firewall_vpc_cidr = \"192.168.3.0/24\"\nzone1 = config.get(\"zone1\")\nif zone1 is None:\n zone1 = \"cn-hangzhou-h\"\nfirewall_name_update = config.get(\"firewallNameUpdate\")\nif firewall_name_update is None:\n firewall_name_update = \"tf-example-1\"\nzone2 = config.get(\"zone2\")\nif zone2 is None:\n zone2 = \"cn-hangzhou-i\"\ndefault = alicloud.cen.get_transit_router_available_resources()\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ncen = alicloud.cen.Instance(\"cen\",\n description=\"terraform example\",\n cen_instance_name=name)\ntr = alicloud.cen.TransitRouter(\"tr\",\n transit_router_name=name,\n transit_router_description=\"tr-created-by-terraform\",\n cen_id=cen.id)\nvpc1 = alicloud.vpc.Network(\"vpc1\",\n description=\"created by terraform\",\n cidr_block=\"192.168.1.0/24\",\n vpc_name=name)\nvpc1vsw1 = alicloud.vpc.Switch(\"vpc1vsw1\",\n cidr_block=\"192.168.1.0/25\",\n vswitch_name=name,\n vpc_id=vpc1.id,\n zone_id=default.resources[0].master_zones[1])\nvpc1vsw2 = alicloud.vpc.Switch(\"vpc1vsw2\",\n vpc_id=vpc1.id,\n cidr_block=\"192.168.1.128/26\",\n vswitch_name=name,\n zone_id=default.resources[0].master_zones[2])\nfoo = alicloud.vpc.RouteTable(\"foo\",\n vpc_id=vpc1.id,\n route_table_name=name,\n description=name)\ntr_vpc1 = alicloud.cen.TransitRouterVpcAttachment(\"tr-vpc1\",\n zone_mappings=[\n {\n \"vswitch_id\": vpc1vsw1.id,\n \"zone_id\": default.resources[0].master_zones[1],\n },\n {\n \"zone_id\": default.resources[0].master_zones[2],\n \"vswitch_id\": vpc1vsw2.id,\n },\n ],\n vpc_id=vpc1.id,\n cen_id=cen.id,\n transit_router_id=tr.transit_router_id,\n opts = pulumi.ResourceOptions(depends_on=[foo]))\nwait10_minutes = time.index.Sleep(\"wait_10_minutes\", create_duration=10m,\nopts = pulumi.ResourceOptions(depends_on=[tr_vpc1]))\ndefault_vpc_cen_tr_firewall = alicloud.cloudfirewall.VpcCenTrFirewall(\"default\",\n cen_id=tr_vpc1.cen_id,\n firewall_name=name,\n firewall_subnet_cidr=firewall_subnet_cidr,\n tr_attachment_slave_cidr=tr_attachment_slave_cidr,\n firewall_description=\"VpcCenTrFirewall created by terraform\",\n region_no=region,\n tr_attachment_master_cidr=tr_attachment_master_cidr,\n firewall_vpc_cidr=firewall_vpc_cidr,\n transit_router_id=tr.transit_router_id,\n route_mode=\"managed\",\n opts = pulumi.ResourceOptions(depends_on=[wait10_minutes]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Time = Pulumi.Time;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var description = config.Get(\"description\") ?? \"Created by Terraform\";\n var firewallName = config.Get(\"firewallName\") ?? \"tf-example\";\n var trAttachmentMasterCidr = config.Get(\"trAttachmentMasterCidr\") ?? \"192.168.3.192/26\";\n var firewallSubnetCidr = config.Get(\"firewallSubnetCidr\") ?? \"192.168.3.0/25\";\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var trAttachmentSlaveCidr = config.Get(\"trAttachmentSlaveCidr\") ?? \"192.168.3.128/26\";\n var firewallVpcCidr = config.Get(\"firewallVpcCidr\") ?? \"192.168.3.0/24\";\n var zone1 = config.Get(\"zone1\") ?? \"cn-hangzhou-h\";\n var firewallNameUpdate = config.Get(\"firewallNameUpdate\") ?? \"tf-example-1\";\n var zone2 = config.Get(\"zone2\") ?? \"cn-hangzhou-i\";\n var @default = AliCloud.Cen.GetTransitRouterAvailableResources.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var cen = new AliCloud.Cen.Instance(\"cen\", new()\n {\n Description = \"terraform example\",\n CenInstanceName = name,\n });\n\n var tr = new AliCloud.Cen.TransitRouter(\"tr\", new()\n {\n TransitRouterName = name,\n TransitRouterDescription = \"tr-created-by-terraform\",\n CenId = cen.Id,\n });\n\n var vpc1 = new AliCloud.Vpc.Network(\"vpc1\", new()\n {\n Description = \"created by terraform\",\n CidrBlock = \"192.168.1.0/24\",\n VpcName = name,\n });\n\n var vpc1vsw1 = new AliCloud.Vpc.Switch(\"vpc1vsw1\", new()\n {\n CidrBlock = \"192.168.1.0/25\",\n VswitchName = name,\n VpcId = vpc1.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1])),\n });\n\n var vpc1vsw2 = new AliCloud.Vpc.Switch(\"vpc1vsw2\", new()\n {\n VpcId = vpc1.Id,\n CidrBlock = \"192.168.1.128/26\",\n VswitchName = name,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[2])),\n });\n\n var foo = new AliCloud.Vpc.RouteTable(\"foo\", new()\n {\n VpcId = vpc1.Id,\n RouteTableName = name,\n Description = name,\n });\n\n var tr_vpc1 = new AliCloud.Cen.TransitRouterVpcAttachment(\"tr-vpc1\", new()\n {\n ZoneMappings = new[]\n {\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n VswitchId = vpc1vsw1.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[1])),\n },\n new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getTransitRouterAvailableResourcesResult =\u003e getTransitRouterAvailableResourcesResult.Resources[0]?.MasterZones[2])),\n VswitchId = vpc1vsw2.Id,\n },\n },\n VpcId = vpc1.Id,\n CenId = cen.Id,\n TransitRouterId = tr.TransitRouterId,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n foo,\n },\n });\n\n var wait10Minutes = new Time.Index.Sleep(\"wait_10_minutes\", new()\n {\n CreateDuration = \"10m\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n tr_vpc1,\n },\n });\n\n var defaultVpcCenTrFirewall = new AliCloud.CloudFirewall.VpcCenTrFirewall(\"default\", new()\n {\n CenId = tr_vpc1.CenId,\n FirewallName = name,\n FirewallSubnetCidr = firewallSubnetCidr,\n TrAttachmentSlaveCidr = trAttachmentSlaveCidr,\n FirewallDescription = \"VpcCenTrFirewall created by terraform\",\n RegionNo = region,\n TrAttachmentMasterCidr = trAttachmentMasterCidr,\n FirewallVpcCidr = firewallVpcCidr,\n TransitRouterId = tr.TransitRouterId,\n RouteMode = \"managed\",\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n wait10Minutes,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-time/sdk/go/time\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdescription := \"Created by Terraform\"\n\t\tif param := cfg.Get(\"description\"); param != \"\" {\n\t\t\tdescription = param\n\t\t}\n\t\tfirewallName := \"tf-example\"\n\t\tif param := cfg.Get(\"firewallName\"); param != \"\" {\n\t\t\tfirewallName = param\n\t\t}\n\t\ttrAttachmentMasterCidr := \"192.168.3.192/26\"\n\t\tif param := cfg.Get(\"trAttachmentMasterCidr\"); param != \"\" {\n\t\t\ttrAttachmentMasterCidr = param\n\t\t}\n\t\tfirewallSubnetCidr := \"192.168.3.0/25\"\n\t\tif param := cfg.Get(\"firewallSubnetCidr\"); param != \"\" {\n\t\t\tfirewallSubnetCidr = param\n\t\t}\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\ttrAttachmentSlaveCidr := \"192.168.3.128/26\"\n\t\tif param := cfg.Get(\"trAttachmentSlaveCidr\"); param != \"\" {\n\t\t\ttrAttachmentSlaveCidr = param\n\t\t}\n\t\tfirewallVpcCidr := \"192.168.3.0/24\"\n\t\tif param := cfg.Get(\"firewallVpcCidr\"); param != \"\" {\n\t\t\tfirewallVpcCidr = param\n\t\t}\n\t\tzone1 := \"cn-hangzhou-h\"\n\t\tif param := cfg.Get(\"zone1\"); param != \"\" {\n\t\t\tzone1 = param\n\t\t}\n\t\tfirewallNameUpdate := \"tf-example-1\"\n\t\tif param := cfg.Get(\"firewallNameUpdate\"); param != \"\" {\n\t\t\tfirewallNameUpdate = param\n\t\t}\n\t\tzone2 := \"cn-hangzhou-i\"\n\t\tif param := cfg.Get(\"zone2\"); param != \"\" {\n\t\t\tzone2 = param\n\t\t}\n\t\t_default, err := cen.GetTransitRouterAvailableResources(ctx, \u0026cen.GetTransitRouterAvailableResourcesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcen, err := cen.NewInstance(ctx, \"cen\", \u0026cen.InstanceArgs{\n\t\t\tDescription: pulumi.String(\"terraform example\"),\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttr, err := cen.NewTransitRouter(ctx, \"tr\", \u0026cen.TransitRouterArgs{\n\t\t\tTransitRouterName: pulumi.String(name),\n\t\t\tTransitRouterDescription: pulumi.String(\"tr-created-by-terraform\"),\n\t\t\tCenId: cen.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1, err := vpc.NewNetwork(ctx, \"vpc1\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(\"created by terraform\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/24\"),\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1vsw1, err := vpc.NewSwitch(ctx, \"vpc1vsw1\", \u0026vpc.SwitchArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.0/25\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[1]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpc1vsw2, err := vpc.NewSwitch(ctx, \"vpc1vsw2\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.1.128/26\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[2]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfoo, err := vpc.NewRouteTable(ctx, \"foo\", \u0026vpc.RouteTableArgs{\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tRouteTableName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttr_vpc1, err := cen.NewTransitRouterVpcAttachment(ctx, \"tr-vpc1\", \u0026cen.TransitRouterVpcAttachmentArgs{\n\t\t\tZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tVswitchId: vpc1vsw1.ID(),\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[1]),\n\t\t\t\t},\n\t\t\t\t\u0026cen.TransitRouterVpcAttachmentZoneMappingArgs{\n\t\t\t\t\tZoneId: pulumi.String(_default.Resources[0].MasterZones[2]),\n\t\t\t\t\tVswitchId: vpc1vsw2.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVpcId: vpc1.ID(),\n\t\t\tCenId: cen.ID(),\n\t\t\tTransitRouterId: tr.TransitRouterId,\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tfoo,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\twait10Minutes, err := time.NewSleep(ctx, \"wait_10_minutes\", \u0026time.SleepArgs{\n\t\t\tCreateDuration: \"10m\",\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\ttr_vpc1,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudfirewall.NewVpcCenTrFirewall(ctx, \"default\", \u0026cloudfirewall.VpcCenTrFirewallArgs{\n\t\t\tCenId: tr_vpc1.CenId,\n\t\t\tFirewallName: pulumi.String(name),\n\t\t\tFirewallSubnetCidr: pulumi.String(firewallSubnetCidr),\n\t\t\tTrAttachmentSlaveCidr: pulumi.String(trAttachmentSlaveCidr),\n\t\t\tFirewallDescription: pulumi.String(\"VpcCenTrFirewall created by terraform\"),\n\t\t\tRegionNo: pulumi.String(region),\n\t\t\tTrAttachmentMasterCidr: pulumi.String(trAttachmentMasterCidr),\n\t\t\tFirewallVpcCidr: pulumi.String(firewallVpcCidr),\n\t\t\tTransitRouterId: tr.TransitRouterId,\n\t\t\tRouteMode: pulumi.String(\"managed\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\twait10Minutes,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.CenFunctions;\nimport com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.cen.TransitRouter;\nimport com.pulumi.alicloud.cen.TransitRouterArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.vpc.RouteTable;\nimport com.pulumi.alicloud.vpc.RouteTableArgs;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachment;\nimport com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;\nimport com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;\nimport com.pulumi.time.Sleep;\nimport com.pulumi.time.SleepArgs;\nimport com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewall;\nimport com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewallArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var description = config.get(\"description\").orElse(\"Created by Terraform\");\n final var firewallName = config.get(\"firewallName\").orElse(\"tf-example\");\n final var trAttachmentMasterCidr = config.get(\"trAttachmentMasterCidr\").orElse(\"192.168.3.192/26\");\n final var firewallSubnetCidr = config.get(\"firewallSubnetCidr\").orElse(\"192.168.3.0/25\");\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var trAttachmentSlaveCidr = config.get(\"trAttachmentSlaveCidr\").orElse(\"192.168.3.128/26\");\n final var firewallVpcCidr = config.get(\"firewallVpcCidr\").orElse(\"192.168.3.0/24\");\n final var zone1 = config.get(\"zone1\").orElse(\"cn-hangzhou-h\");\n final var firewallNameUpdate = config.get(\"firewallNameUpdate\").orElse(\"tf-example-1\");\n final var zone2 = config.get(\"zone2\").orElse(\"cn-hangzhou-i\");\n final var default = CenFunctions.getTransitRouterAvailableResources(GetTransitRouterAvailableResourcesArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var cen = new Instance(\"cen\", InstanceArgs.builder()\n .description(\"terraform example\")\n .cenInstanceName(name)\n .build());\n\n var tr = new TransitRouter(\"tr\", TransitRouterArgs.builder()\n .transitRouterName(name)\n .transitRouterDescription(\"tr-created-by-terraform\")\n .cenId(cen.id())\n .build());\n\n var vpc1 = new Network(\"vpc1\", NetworkArgs.builder()\n .description(\"created by terraform\")\n .cidrBlock(\"192.168.1.0/24\")\n .vpcName(name)\n .build());\n\n var vpc1vsw1 = new Switch(\"vpc1vsw1\", SwitchArgs.builder()\n .cidrBlock(\"192.168.1.0/25\")\n .vswitchName(name)\n .vpcId(vpc1.id())\n .zoneId(default_.resources()[0].masterZones()[1])\n .build());\n\n var vpc1vsw2 = new Switch(\"vpc1vsw2\", SwitchArgs.builder()\n .vpcId(vpc1.id())\n .cidrBlock(\"192.168.1.128/26\")\n .vswitchName(name)\n .zoneId(default_.resources()[0].masterZones()[2])\n .build());\n\n var foo = new RouteTable(\"foo\", RouteTableArgs.builder()\n .vpcId(vpc1.id())\n .routeTableName(name)\n .description(name)\n .build());\n\n var tr_vpc1 = new TransitRouterVpcAttachment(\"tr-vpc1\", TransitRouterVpcAttachmentArgs.builder()\n .zoneMappings( \n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .vswitchId(vpc1vsw1.id())\n .zoneId(default_.resources()[0].masterZones()[1])\n .build(),\n TransitRouterVpcAttachmentZoneMappingArgs.builder()\n .zoneId(default_.resources()[0].masterZones()[2])\n .vswitchId(vpc1vsw2.id())\n .build())\n .vpcId(vpc1.id())\n .cenId(cen.id())\n .transitRouterId(tr.transitRouterId())\n .build(), CustomResourceOptions.builder()\n .dependsOn(foo)\n .build());\n\n var wait10Minutes = new Sleep(\"wait10Minutes\", SleepArgs.builder()\n .createDuration(\"10m\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(List.of(tr_vpc1))\n .build());\n\n var defaultVpcCenTrFirewall = new VpcCenTrFirewall(\"defaultVpcCenTrFirewall\", VpcCenTrFirewallArgs.builder()\n .cenId(tr_vpc1.cenId())\n .firewallName(name)\n .firewallSubnetCidr(firewallSubnetCidr)\n .trAttachmentSlaveCidr(trAttachmentSlaveCidr)\n .firewallDescription(\"VpcCenTrFirewall created by terraform\")\n .regionNo(region)\n .trAttachmentMasterCidr(trAttachmentMasterCidr)\n .firewallVpcCidr(firewallVpcCidr)\n .transitRouterId(tr.transitRouterId())\n .routeMode(\"managed\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(wait10Minutes)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n description:\n type: string\n default: Created by Terraform\n firewallName:\n type: string\n default: tf-example\n trAttachmentMasterCidr:\n type: string\n default: 192.168.3.192/26\n firewallSubnetCidr:\n type: string\n default: 192.168.3.0/25\n region:\n type: string\n default: cn-hangzhou\n trAttachmentSlaveCidr:\n type: string\n default: 192.168.3.128/26\n firewallVpcCidr:\n type: string\n default: 192.168.3.0/24\n zone1:\n type: string\n default: cn-hangzhou-h\n firewallNameUpdate:\n type: string\n default: tf-example-1\n zone2:\n type: string\n default: cn-hangzhou-i\nresources:\n cen:\n type: alicloud:cen:Instance\n properties:\n description: terraform example\n cenInstanceName: ${name}\n tr:\n type: alicloud:cen:TransitRouter\n properties:\n transitRouterName: ${name}\n transitRouterDescription: tr-created-by-terraform\n cenId: ${cen.id}\n vpc1:\n type: alicloud:vpc:Network\n properties:\n description: created by terraform\n cidrBlock: 192.168.1.0/24\n vpcName: ${name}\n vpc1vsw1:\n type: alicloud:vpc:Switch\n properties:\n cidrBlock: 192.168.1.0/25\n vswitchName: ${name}\n vpcId: ${vpc1.id}\n zoneId: ${default.resources[0].masterZones[1]}\n vpc1vsw2:\n type: alicloud:vpc:Switch\n properties:\n vpcId: ${vpc1.id}\n cidrBlock: 192.168.1.128/26\n vswitchName: ${name}\n zoneId: ${default.resources[0].masterZones[2]}\n foo:\n type: alicloud:vpc:RouteTable\n properties:\n vpcId: ${vpc1.id}\n routeTableName: ${name}\n description: ${name}\n tr-vpc1:\n type: alicloud:cen:TransitRouterVpcAttachment\n properties:\n zoneMappings:\n - vswitchId: ${vpc1vsw1.id}\n zoneId: ${default.resources[0].masterZones[1]}\n - zoneId: ${default.resources[0].masterZones[2]}\n vswitchId: ${vpc1vsw2.id}\n vpcId: ${vpc1.id}\n cenId: ${cen.id}\n transitRouterId: ${tr.transitRouterId}\n options:\n dependsOn:\n - ${foo}\n wait10Minutes:\n type: time:Sleep\n name: wait_10_minutes\n properties:\n createDuration: 10m\n options:\n dependsOn:\n - ${[\"tr-vpc1\"]}\n defaultVpcCenTrFirewall:\n type: alicloud:cloudfirewall:VpcCenTrFirewall\n name: default\n properties:\n cenId: ${[\"tr-vpc1\"].cenId}\n firewallName: ${name}\n firewallSubnetCidr: ${firewallSubnetCidr}\n trAttachmentSlaveCidr: ${trAttachmentSlaveCidr}\n firewallDescription: VpcCenTrFirewall created by terraform\n regionNo: ${region}\n trAttachmentMasterCidr: ${trAttachmentMasterCidr}\n firewallVpcCidr: ${firewallVpcCidr}\n transitRouterId: ${tr.transitRouterId}\n routeMode: managed\n options:\n dependsOn:\n - ${wait10Minutes}\nvariables:\n default:\n fn::invoke:\n function: alicloud:cen:getTransitRouterAvailableResources\n arguments: {}\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Firewall Vpc Cen Tr Firewall can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudfirewall/vpcCenTrFirewall:VpcCenTrFirewall example \u003cid\u003e\n```\n\n",
"properties": {
"cenId": {
"type": "string",
@@ -123282,7 +125270,7 @@
}
},
"alicloud:cloudmonitor/serviceBasicPublic:ServiceBasicPublic": {
- "description": "Provides a Cloud Monitor Service Basic Public resource. \n\nFor information about Cloud Monitor Service Basic Public and how to use it, see [What is Basic Public](https://www.alibabacloud.com/help/en/cms/product-overview/what-is-cloudmonitor).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudmonitor.ServiceBasicPublic(\"default\", {});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudmonitor.ServiceBasicPublic(\"default\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudMonitor.ServiceBasicPublic(\"default\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudmonitor.NewServiceBasicPublic(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudmonitor.ServiceBasicPublic;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ServiceBasicPublic(\"default\");\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudmonitor:ServiceBasicPublic\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Basic Public can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceBasicPublic:ServiceBasicPublic example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Basic Public resource. \n\nFor information about Cloud Monitor Service Basic Public and how to use it, see [What is Basic Public](https://www.alibabacloud.com/help/en/cms/product-overview/what-is-cloudmonitor).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudmonitor.ServiceBasicPublic(\"default\", {});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudmonitor.ServiceBasicPublic(\"default\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudMonitor.ServiceBasicPublic(\"default\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudmonitor.NewServiceBasicPublic(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudmonitor.ServiceBasicPublic;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ServiceBasicPublic(\"default\");\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudmonitor:ServiceBasicPublic\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Basic Public can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceBasicPublic:ServiceBasicPublic example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -123304,7 +125292,7 @@
}
},
"alicloud:cloudmonitor/serviceEnterprisePublic:ServiceEnterprisePublic": {
- "description": "Provides a Cloud Monitor Service Enterprise Public resource. Hybrid Cloud Monitoring.\n\nFor information about Cloud Monitor Service Enterprise Public and how to use it, see [What is Enterprise Public](https://www.alibabacloud.com/help/en/cms/user-guide/overview-3).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudmonitor.ServiceEnterprisePublic(\"default\", {});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudmonitor.ServiceEnterprisePublic(\"default\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudMonitor.ServiceEnterprisePublic(\"default\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudmonitor.NewServiceEnterprisePublic(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudmonitor.ServiceEnterprisePublic;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ServiceEnterprisePublic(\"default\");\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudmonitor:ServiceEnterprisePublic\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Enterprise Public can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceEnterprisePublic:ServiceEnterprisePublic example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Enterprise Public resource. Hybrid Cloud Monitoring.\n\nFor information about Cloud Monitor Service Enterprise Public and how to use it, see [What is Enterprise Public](https://www.alibabacloud.com/help/en/cms/user-guide/overview-3).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudmonitor.ServiceEnterprisePublic(\"default\", {});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudmonitor.ServiceEnterprisePublic(\"default\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudMonitor.ServiceEnterprisePublic(\"default\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudmonitor.NewServiceEnterprisePublic(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudmonitor.ServiceEnterprisePublic;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ServiceEnterprisePublic(\"default\");\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudmonitor:ServiceEnterprisePublic\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Enterprise Public can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceEnterprisePublic:ServiceEnterprisePublic example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -123326,7 +125314,7 @@
}
},
"alicloud:cloudmonitor/serviceGroupMonitoringAgentProcess:ServiceGroupMonitoringAgentProcess": {
- "description": "Provides a Cloud Monitor Service Group Monitoring Agent Process resource.\n\nFor information about Cloud Monitor Service Group Monitoring Agent Process and how to use it, see [What is Group Monitoring Agent Process](https://www.alibabacloud.com/help/en/cms/developer-reference/api-cms-2019-01-01-creategroupmonitoringagentprocess).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {\n alarmContactGroupName: name,\n contacts: [\n \"user\",\n \"user1\",\n \"user2\",\n ],\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {\n monitorGroupName: name,\n contactGroups: [_default.id],\n});\nconst defaultServiceGroupMonitoringAgentProcess = new alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess(\"default\", {\n groupId: defaultMonitorGroup.id,\n processName: name,\n matchExpressFilterRelation: \"or\",\n matchExpresses: [{\n name: name,\n value: \"*\",\n \"function\": \"all\",\n }],\n alertConfigs: [{\n escalationsLevel: \"critical\",\n comparisonOperator: \"GreaterThanOrEqualToThreshold\",\n statistics: \"Average\",\n threshold: \"20\",\n times: \"100\",\n effectiveInterval: \"00:00-22:59\",\n silenceTime: 85800,\n webhook: \"https://www.aliyun.com\",\n targetLists: [{\n targetListId: \"1\",\n jsonParams: \"{}\",\n level: \"WARN\",\n arn: \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\",\n alarm_contact_group_name=name,\n contacts=[\n \"user\",\n \"user1\",\n \"user2\",\n ])\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\",\n monitor_group_name=name,\n contact_groups=[default.id])\ndefault_service_group_monitoring_agent_process = alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess(\"default\",\n group_id=default_monitor_group.id,\n process_name=name,\n match_express_filter_relation=\"or\",\n match_expresses=[{\n \"name\": name,\n \"value\": \"*\",\n \"function\": \"all\",\n }],\n alert_configs=[{\n \"escalations_level\": \"critical\",\n \"comparison_operator\": \"GreaterThanOrEqualToThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"20\",\n \"times\": \"100\",\n \"effective_interval\": \"00:00-22:59\",\n \"silence_time\": 85800,\n \"webhook\": \"https://www.aliyun.com\",\n \"target_lists\": [{\n \"target_list_id\": \"1\",\n \"json_params\": \"{}\",\n \"level\": \"WARN\",\n \"arn\": \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n Contacts = new[]\n {\n \"user\",\n \"user1\",\n \"user2\",\n },\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n ContactGroups = new[]\n {\n @default.Id,\n },\n });\n\n var defaultServiceGroupMonitoringAgentProcess = new AliCloud.CloudMonitor.ServiceGroupMonitoringAgentProcess(\"default\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n ProcessName = name,\n MatchExpressFilterRelation = \"or\",\n MatchExpresses = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessMatchExpressArgs\n {\n Name = name,\n Value = \"*\",\n Function = \"all\",\n },\n },\n AlertConfigs = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessAlertConfigArgs\n {\n EscalationsLevel = \"critical\",\n ComparisonOperator = \"GreaterThanOrEqualToThreshold\",\n Statistics = \"Average\",\n Threshold = \"20\",\n Times = \"100\",\n EffectiveInterval = \"00:00-22:59\",\n SilenceTime = 85800,\n Webhook = \"https://www.aliyun.com\",\n TargetLists = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs\n {\n TargetListId = \"1\",\n JsonParams = \"{}\",\n Level = \"WARN\",\n Arn = \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t\tContacts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"user\"),\n\t\t\t\tpulumi.String(\"user1\"),\n\t\t\t\tpulumi.String(\"user2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudmonitor.NewServiceGroupMonitoringAgentProcess(ctx, \"default\", \u0026cloudmonitor.ServiceGroupMonitoringAgentProcessArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tProcessName: pulumi.String(name),\n\t\t\tMatchExpressFilterRelation: pulumi.String(\"or\"),\n\t\t\tMatchExpresses: cloudmonitor.ServiceGroupMonitoringAgentProcessMatchExpressArray{\n\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessMatchExpressArgs{\n\t\t\t\t\tName: pulumi.String(name),\n\t\t\t\t\tValue: pulumi.String(\"*\"),\n\t\t\t\t\tFunction: pulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAlertConfigs: cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigArray{\n\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigArgs{\n\t\t\t\t\tEscalationsLevel: pulumi.String(\"critical\"),\n\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanOrEqualToThreshold\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"20\"),\n\t\t\t\t\tTimes: pulumi.String(\"100\"),\n\t\t\t\t\tEffectiveInterval: pulumi.String(\"00:00-22:59\"),\n\t\t\t\t\tSilenceTime: pulumi.Int(85800),\n\t\t\t\t\tWebhook: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tTargetLists: cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArray{\n\t\t\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs{\n\t\t\t\t\t\t\tTargetListId: pulumi.String(\"1\"),\n\t\t\t\t\t\t\tJsonParams: pulumi.String(\"{}\"),\n\t\t\t\t\t\t\tLevel: pulumi.String(\"WARN\"),\n\t\t\t\t\t\t\tArn: pulumi.String(\"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess;\nimport com.pulumi.alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcessArgs;\nimport com.pulumi.alicloud.cloudmonitor.inputs.ServiceGroupMonitoringAgentProcessMatchExpressArgs;\nimport com.pulumi.alicloud.cloudmonitor.inputs.ServiceGroupMonitoringAgentProcessAlertConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .contacts( \n \"user\",\n \"user1\",\n \"user2\")\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .contactGroups(default_.id())\n .build());\n\n var defaultServiceGroupMonitoringAgentProcess = new ServiceGroupMonitoringAgentProcess(\"defaultServiceGroupMonitoringAgentProcess\", ServiceGroupMonitoringAgentProcessArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .processName(name)\n .matchExpressFilterRelation(\"or\")\n .matchExpresses(ServiceGroupMonitoringAgentProcessMatchExpressArgs.builder()\n .name(name)\n .value(\"*\")\n .function(\"all\")\n .build())\n .alertConfigs(ServiceGroupMonitoringAgentProcessAlertConfigArgs.builder()\n .escalationsLevel(\"critical\")\n .comparisonOperator(\"GreaterThanOrEqualToThreshold\")\n .statistics(\"Average\")\n .threshold(\"20\")\n .times(\"100\")\n .effectiveInterval(\"00:00-22:59\")\n .silenceTime(85800)\n .webhook(\"https://www.aliyun.com\")\n .targetLists(ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs.builder()\n .targetListId(\"1\")\n .jsonParams(\"{}\")\n .level(\"WARN\")\n .arn(\"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n contacts:\n - user\n - user1\n - user2\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n contactGroups:\n - ${default.id}\n defaultServiceGroupMonitoringAgentProcess:\n type: alicloud:cloudmonitor:ServiceGroupMonitoringAgentProcess\n name: default\n properties:\n groupId: ${defaultMonitorGroup.id}\n processName: ${name}\n matchExpressFilterRelation: or\n matchExpresses:\n - name: ${name}\n value: '*'\n function: all\n alertConfigs:\n - escalationsLevel: critical\n comparisonOperator: GreaterThanOrEqualToThreshold\n statistics: Average\n threshold: '20'\n times: '100'\n effectiveInterval: 00:00-22:59\n silenceTime: '85800'\n webhook: https://www.aliyun.com\n targetLists:\n - targetListId: '1'\n jsonParams: '{}'\n level: WARN\n arn: acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Group Monitoring Agent Process can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceGroupMonitoringAgentProcess:ServiceGroupMonitoringAgentProcess example \u003cgroup_id\u003e:\u003cgroup_monitoring_agent_process_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Group Monitoring Agent Process resource.\n\nFor information about Cloud Monitor Service Group Monitoring Agent Process and how to use it, see [What is Group Monitoring Agent Process](https://www.alibabacloud.com/help/en/cms/developer-reference/api-cms-2019-01-01-creategroupmonitoringagentprocess).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {\n alarmContactGroupName: name,\n contacts: [\n \"user\",\n \"user1\",\n \"user2\",\n ],\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {\n monitorGroupName: name,\n contactGroups: [_default.id],\n});\nconst defaultServiceGroupMonitoringAgentProcess = new alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess(\"default\", {\n groupId: defaultMonitorGroup.id,\n processName: name,\n matchExpressFilterRelation: \"or\",\n matchExpresses: [{\n name: name,\n value: \"*\",\n \"function\": \"all\",\n }],\n alertConfigs: [{\n escalationsLevel: \"critical\",\n comparisonOperator: \"GreaterThanOrEqualToThreshold\",\n statistics: \"Average\",\n threshold: \"20\",\n times: \"100\",\n effectiveInterval: \"00:00-22:59\",\n silenceTime: 85800,\n webhook: \"https://www.aliyun.com\",\n targetLists: [{\n targetListId: \"1\",\n jsonParams: \"{}\",\n level: \"WARN\",\n arn: \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\",\n alarm_contact_group_name=name,\n contacts=[\n \"user\",\n \"user1\",\n \"user2\",\n ])\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\",\n monitor_group_name=name,\n contact_groups=[default.id])\ndefault_service_group_monitoring_agent_process = alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess(\"default\",\n group_id=default_monitor_group.id,\n process_name=name,\n match_express_filter_relation=\"or\",\n match_expresses=[{\n \"name\": name,\n \"value\": \"*\",\n \"function\": \"all\",\n }],\n alert_configs=[{\n \"escalations_level\": \"critical\",\n \"comparison_operator\": \"GreaterThanOrEqualToThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"20\",\n \"times\": \"100\",\n \"effective_interval\": \"00:00-22:59\",\n \"silence_time\": 85800,\n \"webhook\": \"https://www.aliyun.com\",\n \"target_lists\": [{\n \"target_list_id\": \"1\",\n \"json_params\": \"{}\",\n \"level\": \"WARN\",\n \"arn\": \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n Contacts = new[]\n {\n \"user\",\n \"user1\",\n \"user2\",\n },\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n ContactGroups = new[]\n {\n @default.Id,\n },\n });\n\n var defaultServiceGroupMonitoringAgentProcess = new AliCloud.CloudMonitor.ServiceGroupMonitoringAgentProcess(\"default\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n ProcessName = name,\n MatchExpressFilterRelation = \"or\",\n MatchExpresses = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessMatchExpressArgs\n {\n Name = name,\n Value = \"*\",\n Function = \"all\",\n },\n },\n AlertConfigs = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessAlertConfigArgs\n {\n EscalationsLevel = \"critical\",\n ComparisonOperator = \"GreaterThanOrEqualToThreshold\",\n Statistics = \"Average\",\n Threshold = \"20\",\n Times = \"100\",\n EffectiveInterval = \"00:00-22:59\",\n SilenceTime = 85800,\n Webhook = \"https://www.aliyun.com\",\n TargetLists = new[]\n {\n new AliCloud.CloudMonitor.Inputs.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs\n {\n TargetListId = \"1\",\n JsonParams = \"{}\",\n Level = \"WARN\",\n Arn = \"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t\tContacts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"user\"),\n\t\t\t\tpulumi.String(\"user1\"),\n\t\t\t\tpulumi.String(\"user2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudmonitor.NewServiceGroupMonitoringAgentProcess(ctx, \"default\", \u0026cloudmonitor.ServiceGroupMonitoringAgentProcessArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tProcessName: pulumi.String(name),\n\t\t\tMatchExpressFilterRelation: pulumi.String(\"or\"),\n\t\t\tMatchExpresses: cloudmonitor.ServiceGroupMonitoringAgentProcessMatchExpressArray{\n\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessMatchExpressArgs{\n\t\t\t\t\tName: pulumi.String(name),\n\t\t\t\t\tValue: pulumi.String(\"*\"),\n\t\t\t\t\tFunction: pulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAlertConfigs: cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigArray{\n\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigArgs{\n\t\t\t\t\tEscalationsLevel: pulumi.String(\"critical\"),\n\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanOrEqualToThreshold\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"20\"),\n\t\t\t\t\tTimes: pulumi.String(\"100\"),\n\t\t\t\t\tEffectiveInterval: pulumi.String(\"00:00-22:59\"),\n\t\t\t\t\tSilenceTime: pulumi.Int(85800),\n\t\t\t\t\tWebhook: pulumi.String(\"https://www.aliyun.com\"),\n\t\t\t\t\tTargetLists: cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArray{\n\t\t\t\t\t\t\u0026cloudmonitor.ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs{\n\t\t\t\t\t\t\tTargetListId: pulumi.String(\"1\"),\n\t\t\t\t\t\t\tJsonParams: pulumi.String(\"{}\"),\n\t\t\t\t\t\t\tLevel: pulumi.String(\"WARN\"),\n\t\t\t\t\t\t\tArn: pulumi.String(\"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcess;\nimport com.pulumi.alicloud.cloudmonitor.ServiceGroupMonitoringAgentProcessArgs;\nimport com.pulumi.alicloud.cloudmonitor.inputs.ServiceGroupMonitoringAgentProcessMatchExpressArgs;\nimport com.pulumi.alicloud.cloudmonitor.inputs.ServiceGroupMonitoringAgentProcessAlertConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .contacts( \n \"user\",\n \"user1\",\n \"user2\")\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .contactGroups(default_.id())\n .build());\n\n var defaultServiceGroupMonitoringAgentProcess = new ServiceGroupMonitoringAgentProcess(\"defaultServiceGroupMonitoringAgentProcess\", ServiceGroupMonitoringAgentProcessArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .processName(name)\n .matchExpressFilterRelation(\"or\")\n .matchExpresses(ServiceGroupMonitoringAgentProcessMatchExpressArgs.builder()\n .name(name)\n .value(\"*\")\n .function(\"all\")\n .build())\n .alertConfigs(ServiceGroupMonitoringAgentProcessAlertConfigArgs.builder()\n .escalationsLevel(\"critical\")\n .comparisonOperator(\"GreaterThanOrEqualToThreshold\")\n .statistics(\"Average\")\n .threshold(\"20\")\n .times(\"100\")\n .effectiveInterval(\"00:00-22:59\")\n .silenceTime(85800)\n .webhook(\"https://www.aliyun.com\")\n .targetLists(ServiceGroupMonitoringAgentProcessAlertConfigTargetListArgs.builder()\n .targetListId(\"1\")\n .jsonParams(\"{}\")\n .level(\"WARN\")\n .arn(\"acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n contacts:\n - user\n - user1\n - user2\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n contactGroups:\n - ${default.id}\n defaultServiceGroupMonitoringAgentProcess:\n type: alicloud:cloudmonitor:ServiceGroupMonitoringAgentProcess\n name: default\n properties:\n groupId: ${defaultMonitorGroup.id}\n processName: ${name}\n matchExpressFilterRelation: or\n matchExpresses:\n - name: ${name}\n value: '*'\n function: all\n alertConfigs:\n - escalationsLevel: critical\n comparisonOperator: GreaterThanOrEqualToThreshold\n statistics: Average\n threshold: '20'\n times: '100'\n effectiveInterval: 00:00-22:59\n silenceTime: '85800'\n webhook: https://www.aliyun.com\n targetLists:\n - targetListId: '1'\n jsonParams: '{}'\n level: WARN\n arn: acs:mns:cn-hangzhou:120886317861****:/queues/test123/message\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Group Monitoring Agent Process can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceGroupMonitoringAgentProcess:ServiceGroupMonitoringAgentProcess example \u003cgroup_id\u003e:\u003cgroup_monitoring_agent_process_id\u003e\n```\n\n",
"properties": {
"alertConfigs": {
"type": "array",
@@ -123446,7 +125434,7 @@
}
},
"alicloud:cloudmonitor/serviceHybridDoubleWrite:ServiceHybridDoubleWrite": {
- "description": "Provides a Cloud Monitor Service Hybrid Double Write resource. \n\nFor information about Cloud Monitor Service Hybrid Double Write and how to use it, see [What is Hybrid Double Write](https://next.api.alibabacloud.com/document/Cms/2018-03-08/CreateHybridDoubleWrite).\n\n\u003e **NOTE:** Available since v1.210.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getAccount({});\nconst source = new alicloud.cms.Namespace(\"source\", {namespace: name});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {namespace: `${name}-source`});\nconst defaultServiceHybridDoubleWrite = new alicloud.cloudmonitor.ServiceHybridDoubleWrite(\"default\", {\n sourceNamespace: source.id,\n sourceUserId: _default.then(_default =\u003e _default.id),\n namespace: defaultNamespace.id,\n userId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_account()\nsource = alicloud.cms.Namespace(\"source\", namespace=name)\ndefault_namespace = alicloud.cms.Namespace(\"default\", namespace=f\"{name}-source\")\ndefault_service_hybrid_double_write = alicloud.cloudmonitor.ServiceHybridDoubleWrite(\"default\",\n source_namespace=source.id,\n source_user_id=default.id,\n namespace=default_namespace.id,\n user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var source = new AliCloud.Cms.Namespace(\"source\", new()\n {\n NamespaceName = name,\n });\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n NamespaceName = $\"{name}-source\",\n });\n\n var defaultServiceHybridDoubleWrite = new AliCloud.CloudMonitor.ServiceHybridDoubleWrite(\"default\", new()\n {\n SourceNamespace = source.Id,\n SourceUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n Namespace = defaultNamespace.Id,\n UserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsource, err := cms.NewNamespace(ctx, \"source\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.Sprintf(\"%v-source\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudmonitor.NewServiceHybridDoubleWrite(ctx, \"default\", \u0026cloudmonitor.ServiceHybridDoubleWriteArgs{\n\t\t\tSourceNamespace: source.ID(),\n\t\t\tSourceUserId: pulumi.String(_default.Id),\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceHybridDoubleWrite;\nimport com.pulumi.alicloud.cloudmonitor.ServiceHybridDoubleWriteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var source = new Namespace(\"source\", NamespaceArgs.builder()\n .namespace(name)\n .build());\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .namespace(String.format(\"%s-source\", name))\n .build());\n\n var defaultServiceHybridDoubleWrite = new ServiceHybridDoubleWrite(\"defaultServiceHybridDoubleWrite\", ServiceHybridDoubleWriteArgs.builder()\n .sourceNamespace(source.id())\n .sourceUserId(default_.id())\n .namespace(defaultNamespace.id())\n .userId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n source:\n type: alicloud:cms:Namespace\n properties:\n namespace: ${name}\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n namespace: ${name}-source\n defaultServiceHybridDoubleWrite:\n type: alicloud:cloudmonitor:ServiceHybridDoubleWrite\n name: default\n properties:\n sourceNamespace: ${source.id}\n sourceUserId: ${default.id}\n namespace: ${defaultNamespace.id}\n userId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Hybrid Double Write can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceHybridDoubleWrite:ServiceHybridDoubleWrite example \u003csource_namespace\u003e:\u003csource_user_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Hybrid Double Write resource. \n\nFor information about Cloud Monitor Service Hybrid Double Write and how to use it, see [What is Hybrid Double Write](https://next.api.alibabacloud.com/document/Cms/2018-03-08/CreateHybridDoubleWrite).\n\n\u003e **NOTE:** Available since v1.210.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getAccount({});\nconst source = new alicloud.cms.Namespace(\"source\", {namespace: name});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {namespace: `${name}-source`});\nconst defaultServiceHybridDoubleWrite = new alicloud.cloudmonitor.ServiceHybridDoubleWrite(\"default\", {\n sourceNamespace: source.id,\n sourceUserId: _default.then(_default =\u003e _default.id),\n namespace: defaultNamespace.id,\n userId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_account()\nsource = alicloud.cms.Namespace(\"source\", namespace=name)\ndefault_namespace = alicloud.cms.Namespace(\"default\", namespace=f\"{name}-source\")\ndefault_service_hybrid_double_write = alicloud.cloudmonitor.ServiceHybridDoubleWrite(\"default\",\n source_namespace=source.id,\n source_user_id=default.id,\n namespace=default_namespace.id,\n user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var source = new AliCloud.Cms.Namespace(\"source\", new()\n {\n NamespaceName = name,\n });\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n NamespaceName = $\"{name}-source\",\n });\n\n var defaultServiceHybridDoubleWrite = new AliCloud.CloudMonitor.ServiceHybridDoubleWrite(\"default\", new()\n {\n SourceNamespace = source.Id,\n SourceUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n Namespace = defaultNamespace.Id,\n UserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsource, err := cms.NewNamespace(ctx, \"source\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.Sprintf(\"%v-source\", name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudmonitor.NewServiceHybridDoubleWrite(ctx, \"default\", \u0026cloudmonitor.ServiceHybridDoubleWriteArgs{\n\t\t\tSourceNamespace: source.ID(),\n\t\t\tSourceUserId: pulumi.String(_default.Id),\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceHybridDoubleWrite;\nimport com.pulumi.alicloud.cloudmonitor.ServiceHybridDoubleWriteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var source = new Namespace(\"source\", NamespaceArgs.builder()\n .namespace(name)\n .build());\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .namespace(String.format(\"%s-source\", name))\n .build());\n\n var defaultServiceHybridDoubleWrite = new ServiceHybridDoubleWrite(\"defaultServiceHybridDoubleWrite\", ServiceHybridDoubleWriteArgs.builder()\n .sourceNamespace(source.id())\n .sourceUserId(default_.id())\n .namespace(defaultNamespace.id())\n .userId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n source:\n type: alicloud:cms:Namespace\n properties:\n namespace: ${name}\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n namespace: ${name}-source\n defaultServiceHybridDoubleWrite:\n type: alicloud:cloudmonitor:ServiceHybridDoubleWrite\n name: default\n properties:\n sourceNamespace: ${source.id}\n sourceUserId: ${default.id}\n namespace: ${defaultNamespace.id}\n userId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Hybrid Double Write can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceHybridDoubleWrite:ServiceHybridDoubleWrite example \u003csource_namespace\u003e:\u003csource_user_id\u003e\n```\n\n",
"properties": {
"namespace": {
"type": "string",
@@ -123527,7 +125515,7 @@
}
},
"alicloud:cloudmonitor/serviceMonitoringAgentProcess:ServiceMonitoringAgentProcess": {
- "description": "Provides a Cloud Monitor Service Monitoring Agent Process resource. \n\nFor information about Cloud Monitor Service Monitoring Agent Process and how to use it, see [What is Monitoring Agent Process](https://www.alibabacloud.com/help/en/cms/developer-reference/api-cms-2019-01-01-createmonitoragentprocess).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultSwitch.vpcId,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst defaultServiceMonitoringAgentProcess = new alicloud.cloudmonitor.ServiceMonitoringAgentProcess(\"default\", {\n instanceId: defaultInstance.id,\n processName: name,\n processUser: \"root\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_switch.vpc_id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\ndefault_service_monitoring_agent_process = alicloud.cloudmonitor.ServiceMonitoringAgentProcess(\"default\",\n instance_id=default_instance.id,\n process_name=name,\n process_user=\"root\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultSwitch.VpcId,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultServiceMonitoringAgentProcess = new AliCloud.CloudMonitor.ServiceMonitoringAgentProcess(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ProcessName = name,\n ProcessUser = \"root\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"172.16.0.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultSwitch.VpcId,\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudmonitor.NewServiceMonitoringAgentProcess(ctx, \"default\", \u0026cloudmonitor.ServiceMonitoringAgentProcessArgs{\nInstanceId: defaultInstance.ID(),\nProcessName: pulumi.String(name),\nProcessUser: pulumi.String(\"root\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceMonitoringAgentProcess;\nimport com.pulumi.alicloud.cloudmonitor.ServiceMonitoringAgentProcessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultSwitch.vpcId())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(default_.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultServiceMonitoringAgentProcess = new ServiceMonitoringAgentProcess(\"defaultServiceMonitoringAgentProcess\", ServiceMonitoringAgentProcessArgs.builder()\n .instanceId(defaultInstance.id())\n .processName(name)\n .processUser(\"root\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Monitoring Agent Process can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceMonitoringAgentProcess:ServiceMonitoringAgentProcess example \u003cinstance_id\u003e:\u003cprocess_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Monitoring Agent Process resource. \n\nFor information about Cloud Monitor Service Monitoring Agent Process and how to use it, see [What is Monitoring Agent Process](https://www.alibabacloud.com/help/en/cms/developer-reference/api-cms-2019-01-01-createmonitoragentprocess).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultSwitch.vpcId,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst defaultServiceMonitoringAgentProcess = new alicloud.cloudmonitor.ServiceMonitoringAgentProcess(\"default\", {\n instanceId: defaultInstance.id,\n processName: name,\n processUser: \"root\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_switch.vpc_id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\ndefault_service_monitoring_agent_process = alicloud.cloudmonitor.ServiceMonitoringAgentProcess(\"default\",\n instance_id=default_instance.id,\n process_name=name,\n process_user=\"root\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultSwitch.VpcId,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultServiceMonitoringAgentProcess = new AliCloud.CloudMonitor.ServiceMonitoringAgentProcess(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ProcessName = name,\n ProcessUser = \"root\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudmonitor\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"172.16.0.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultSwitch.VpcId,\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudmonitor.NewServiceMonitoringAgentProcess(ctx, \"default\", \u0026cloudmonitor.ServiceMonitoringAgentProcessArgs{\nInstanceId: defaultInstance.ID(),\nProcessName: pulumi.String(name),\nProcessUser: pulumi.String(\"root\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cloudmonitor.ServiceMonitoringAgentProcess;\nimport com.pulumi.alicloud.cloudmonitor.ServiceMonitoringAgentProcessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultSwitch.vpcId())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(default_.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultServiceMonitoringAgentProcess = new ServiceMonitoringAgentProcess(\"defaultServiceMonitoringAgentProcess\", ServiceMonitoringAgentProcessArgs.builder()\n .instanceId(defaultInstance.id())\n .processName(name)\n .processUser(\"root\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Monitoring Agent Process can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudmonitor/serviceMonitoringAgentProcess:ServiceMonitoringAgentProcess example \u003cinstance_id\u003e:\u003cprocess_id\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -123599,7 +125587,7 @@
}
},
"alicloud:cloudphone/image:Image": {
- "description": "Provides a Cloud Phone Image resource.\n\nCloud phone image.\n\nFor information about Cloud Phone Image and how to use it, see [What is Image](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateCustomImage).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {});\nconst defaultYHMlTO = new alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\", {\n instanceGroupSpec: \"acp.basic.small\",\n policyGroupId: defaultjZ1gi0.id,\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n});\nconst default04hhXk = new alicloud.cloudphoneinstance.CloudPhoneInstance(\"default04hhXk\", {\n androidInstanceGroupId: defaultYHMlTO.id,\n androidInstanceName: \"CreateInstanceName\",\n});\nconst _default = new alicloud.cloudphone.Image(\"default\", {\n imageName: \"ImageName\",\n instanceId: default04hhXk.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\")\ndefault_yh_ml_to = alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\",\n instance_group_spec=\"acp.basic.small\",\n policy_group_id=defaultj_z1gi0.id,\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False)\ndefault04hh_xk = alicloud.cloudphoneinstance.CloudPhoneInstance(\"default04hhXk\",\n android_instance_group_id=default_yh_ml_to.id,\n android_instance_name=\"CreateInstanceName\")\ndefault = alicloud.cloudphone.Image(\"default\",\n image_name=\"ImageName\",\n instance_id=default04hh_xk.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new AliCloud.CloudPhoneInstance.Group(\"defaultYHMlTO\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n PolicyGroupId = defaultjZ1gi0.Id,\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n });\n\n var default04hhXk = new AliCloud.CloudPhoneInstance.CloudPhoneInstance(\"default04hhXk\", new()\n {\n AndroidInstanceGroupId = defaultYHMlTO.Id,\n AndroidInstanceName = \"CreateInstanceName\",\n });\n\n var @default = new AliCloud.CloudPhone.Image(\"default\", new()\n {\n ImageName = \"ImageName\",\n InstanceId = default04hhXk.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultYHMlTO, err := cloudphoneinstance.NewGroup(ctx, \"defaultYHMlTO\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault04hhXk, err := cloudphoneinstance.NewCloudPhoneInstance(ctx, \"default04hhXk\", \u0026cloudphoneinstance.CloudPhoneInstanceArgs{\n\t\t\tAndroidInstanceGroupId: defaultYHMlTO.ID(),\n\t\t\tAndroidInstanceName: pulumi.String(\"CreateInstanceName\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphone.NewImage(ctx, \"default\", \u0026cloudphone.ImageArgs{\n\t\t\tImageName: pulumi.String(\"ImageName\"),\n\t\t\tInstanceId: default04hhXk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstance;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstanceArgs;\nimport com.pulumi.alicloud.cloudphone.Image;\nimport com.pulumi.alicloud.cloudphone.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new Group(\"defaultYHMlTO\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .policyGroupId(defaultjZ1gi0.id())\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .build());\n\n var default04hhXk = new CloudPhoneInstance(\"default04hhXk\", CloudPhoneInstanceArgs.builder()\n .androidInstanceGroupId(defaultYHMlTO.id())\n .androidInstanceName(\"CreateInstanceName\")\n .build());\n\n var default_ = new Image(\"default\", ImageArgs.builder()\n .imageName(\"ImageName\")\n .instanceId(default04hhXk.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n defaultYHMlTO:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n policyGroupId: ${defaultjZ1gi0.id}\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n default04hhXk:\n type: alicloud:cloudphoneinstance:CloudPhoneInstance\n properties:\n androidInstanceGroupId: ${defaultYHMlTO.id}\n androidInstanceName: CreateInstanceName\n default:\n type: alicloud:cloudphone:Image\n properties:\n imageName: ImageName\n instanceId: ${default04hhXk.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Phone Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/image:Image example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Phone Image resource.\n\nCloud phone image.\n\nFor information about Cloud Phone Image and how to use it, see [What is Image](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateCustomImage).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {});\nconst defaultYHMlTO = new alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\", {\n instanceGroupSpec: \"acp.basic.small\",\n policyGroupId: defaultjZ1gi0.id,\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n});\nconst default04hhXk = new alicloud.cloudphoneinstance.CloudPhoneInstance(\"default04hhXk\", {\n androidInstanceGroupId: defaultYHMlTO.id,\n androidInstanceName: \"CreateInstanceName\",\n});\nconst _default = new alicloud.cloudphone.Image(\"default\", {\n imageName: \"ImageName\",\n instanceId: default04hhXk.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\")\ndefault_yh_ml_to = alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\",\n instance_group_spec=\"acp.basic.small\",\n policy_group_id=defaultj_z1gi0.id,\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False)\ndefault04hh_xk = alicloud.cloudphoneinstance.CloudPhoneInstance(\"default04hhXk\",\n android_instance_group_id=default_yh_ml_to.id,\n android_instance_name=\"CreateInstanceName\")\ndefault = alicloud.cloudphone.Image(\"default\",\n image_name=\"ImageName\",\n instance_id=default04hh_xk.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new AliCloud.CloudPhoneInstance.Group(\"defaultYHMlTO\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n PolicyGroupId = defaultjZ1gi0.Id,\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n });\n\n var default04hhXk = new AliCloud.CloudPhoneInstance.CloudPhoneInstance(\"default04hhXk\", new()\n {\n AndroidInstanceGroupId = defaultYHMlTO.Id,\n AndroidInstanceName = \"CreateInstanceName\",\n });\n\n var @default = new AliCloud.CloudPhone.Image(\"default\", new()\n {\n ImageName = \"ImageName\",\n InstanceId = default04hhXk.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultYHMlTO, err := cloudphoneinstance.NewGroup(ctx, \"defaultYHMlTO\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault04hhXk, err := cloudphoneinstance.NewCloudPhoneInstance(ctx, \"default04hhXk\", \u0026cloudphoneinstance.CloudPhoneInstanceArgs{\n\t\t\tAndroidInstanceGroupId: defaultYHMlTO.ID(),\n\t\t\tAndroidInstanceName: pulumi.String(\"CreateInstanceName\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphone.NewImage(ctx, \"default\", \u0026cloudphone.ImageArgs{\n\t\t\tImageName: pulumi.String(\"ImageName\"),\n\t\t\tInstanceId: default04hhXk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstance;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstanceArgs;\nimport com.pulumi.alicloud.cloudphone.Image;\nimport com.pulumi.alicloud.cloudphone.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new Group(\"defaultYHMlTO\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .policyGroupId(defaultjZ1gi0.id())\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .build());\n\n var default04hhXk = new CloudPhoneInstance(\"default04hhXk\", CloudPhoneInstanceArgs.builder()\n .androidInstanceGroupId(defaultYHMlTO.id())\n .androidInstanceName(\"CreateInstanceName\")\n .build());\n\n var default_ = new Image(\"default\", ImageArgs.builder()\n .imageName(\"ImageName\")\n .instanceId(default04hhXk.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n defaultYHMlTO:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n policyGroupId: ${defaultjZ1gi0.id}\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n default04hhXk:\n type: alicloud:cloudphoneinstance:CloudPhoneInstance\n properties:\n androidInstanceGroupId: ${defaultYHMlTO.id}\n androidInstanceName: CreateInstanceName\n default:\n type: alicloud:cloudphone:Image\n properties:\n imageName: ImageName\n instanceId: ${default04hhXk.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Phone Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/image:Image example \u003cid\u003e\n```\n\n",
"properties": {
"imageName": {
"type": "string",
@@ -123653,7 +125641,7 @@
}
},
"alicloud:cloudphone/keyPair:KeyPair": {
- "description": "Provides a Cloud Phone Key Pair resource.\n\nCloud Phone KeyPair.\n\nFor information about Cloud Phone Key Pair and how to use it, see [What is Key Pair](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateKeyPair).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {});\nconst defaultYHMlTO = new alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\", {\n instanceGroupSpec: \"acp.basic.small\",\n policyGroupId: defaultjZ1gi0.id,\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n});\nconst defaulthdBep1 = new alicloud.cloudphoneinstance.CloudPhoneInstance(\"defaulthdBep1\", {\n androidInstanceGroupId: defaultYHMlTO.id,\n androidInstanceName: \"CreateInstanceName\",\n});\nconst _default = new alicloud.cloudphone.KeyPair(\"default\", {\n keyPairName: \"example\",\n publicKeyBody: \"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\")\ndefault_yh_ml_to = alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\",\n instance_group_spec=\"acp.basic.small\",\n policy_group_id=defaultj_z1gi0.id,\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False)\ndefaulthd_bep1 = alicloud.cloudphoneinstance.CloudPhoneInstance(\"defaulthdBep1\",\n android_instance_group_id=default_yh_ml_to.id,\n android_instance_name=\"CreateInstanceName\")\ndefault = alicloud.cloudphone.KeyPair(\"default\",\n key_pair_name=\"example\",\n public_key_body=\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new AliCloud.CloudPhoneInstance.Group(\"defaultYHMlTO\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n PolicyGroupId = defaultjZ1gi0.Id,\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n });\n\n var defaulthdBep1 = new AliCloud.CloudPhoneInstance.CloudPhoneInstance(\"defaulthdBep1\", new()\n {\n AndroidInstanceGroupId = defaultYHMlTO.Id,\n AndroidInstanceName = \"CreateInstanceName\",\n });\n\n var @default = new AliCloud.CloudPhone.KeyPair(\"default\", new()\n {\n KeyPairName = \"example\",\n PublicKeyBody = \"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultYHMlTO, err := cloudphoneinstance.NewGroup(ctx, \"defaultYHMlTO\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphoneinstance.NewCloudPhoneInstance(ctx, \"defaulthdBep1\", \u0026cloudphoneinstance.CloudPhoneInstanceArgs{\n\t\t\tAndroidInstanceGroupId: defaultYHMlTO.ID(),\n\t\t\tAndroidInstanceName: pulumi.String(\"CreateInstanceName\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphone.NewKeyPair(ctx, \"default\", \u0026cloudphone.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"example\"),\n\t\t\tPublicKeyBody: pulumi.String(\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstance;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstanceArgs;\nimport com.pulumi.alicloud.cloudphone.KeyPair;\nimport com.pulumi.alicloud.cloudphone.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new Group(\"defaultYHMlTO\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .policyGroupId(defaultjZ1gi0.id())\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .build());\n\n var defaulthdBep1 = new CloudPhoneInstance(\"defaulthdBep1\", CloudPhoneInstanceArgs.builder()\n .androidInstanceGroupId(defaultYHMlTO.id())\n .androidInstanceName(\"CreateInstanceName\")\n .build());\n\n var default_ = new KeyPair(\"default\", KeyPairArgs.builder()\n .keyPairName(\"example\")\n .publicKeyBody(\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n defaultYHMlTO:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n policyGroupId: ${defaultjZ1gi0.id}\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n defaulthdBep1:\n type: alicloud:cloudphoneinstance:CloudPhoneInstance\n properties:\n androidInstanceGroupId: ${defaultYHMlTO.id}\n androidInstanceName: CreateInstanceName\n default:\n type: alicloud:cloudphone:KeyPair\n properties:\n keyPairName: example\n publicKeyBody: QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Phone Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/keyPair:KeyPair example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Phone Key Pair resource.\n\nCloud Phone KeyPair.\n\nFor information about Cloud Phone Key Pair and how to use it, see [What is Key Pair](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateKeyPair).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {});\nconst defaultYHMlTO = new alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\", {\n instanceGroupSpec: \"acp.basic.small\",\n policyGroupId: defaultjZ1gi0.id,\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n});\nconst defaulthdBep1 = new alicloud.cloudphoneinstance.CloudPhoneInstance(\"defaulthdBep1\", {\n androidInstanceGroupId: defaultYHMlTO.id,\n androidInstanceName: \"CreateInstanceName\",\n});\nconst _default = new alicloud.cloudphone.KeyPair(\"default\", {\n keyPairName: \"example\",\n publicKeyBody: \"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\")\ndefault_yh_ml_to = alicloud.cloudphoneinstance.Group(\"defaultYHMlTO\",\n instance_group_spec=\"acp.basic.small\",\n policy_group_id=defaultj_z1gi0.id,\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False)\ndefaulthd_bep1 = alicloud.cloudphoneinstance.CloudPhoneInstance(\"defaulthdBep1\",\n android_instance_group_id=default_yh_ml_to.id,\n android_instance_name=\"CreateInstanceName\")\ndefault = alicloud.cloudphone.KeyPair(\"default\",\n key_pair_name=\"example\",\n public_key_body=\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new AliCloud.CloudPhoneInstance.Group(\"defaultYHMlTO\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n PolicyGroupId = defaultjZ1gi0.Id,\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n });\n\n var defaulthdBep1 = new AliCloud.CloudPhoneInstance.CloudPhoneInstance(\"defaulthdBep1\", new()\n {\n AndroidInstanceGroupId = defaultYHMlTO.Id,\n AndroidInstanceName = \"CreateInstanceName\",\n });\n\n var @default = new AliCloud.CloudPhone.KeyPair(\"default\", new()\n {\n KeyPairName = \"example\",\n PublicKeyBody = \"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultYHMlTO, err := cloudphoneinstance.NewGroup(ctx, \"defaultYHMlTO\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphoneinstance.NewCloudPhoneInstance(ctx, \"defaulthdBep1\", \u0026cloudphoneinstance.CloudPhoneInstanceArgs{\n\t\t\tAndroidInstanceGroupId: defaultYHMlTO.ID(),\n\t\t\tAndroidInstanceName: pulumi.String(\"CreateInstanceName\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphone.NewKeyPair(ctx, \"default\", \u0026cloudphone.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"example\"),\n\t\t\tPublicKeyBody: pulumi.String(\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstance;\nimport com.pulumi.alicloud.cloudphoneinstance.CloudPhoneInstanceArgs;\nimport com.pulumi.alicloud.cloudphone.KeyPair;\nimport com.pulumi.alicloud.cloudphone.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\");\n\n var defaultYHMlTO = new Group(\"defaultYHMlTO\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .policyGroupId(defaultjZ1gi0.id())\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .build());\n\n var defaulthdBep1 = new CloudPhoneInstance(\"defaulthdBep1\", CloudPhoneInstanceArgs.builder()\n .androidInstanceGroupId(defaultYHMlTO.id())\n .androidInstanceName(\"CreateInstanceName\")\n .build());\n\n var default_ = new KeyPair(\"default\", KeyPairArgs.builder()\n .keyPairName(\"example\")\n .publicKeyBody(\"QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n defaultYHMlTO:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n policyGroupId: ${defaultjZ1gi0.id}\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n defaulthdBep1:\n type: alicloud:cloudphoneinstance:CloudPhoneInstance\n properties:\n androidInstanceGroupId: ${defaultYHMlTO.id}\n androidInstanceName: CreateInstanceName\n default:\n type: alicloud:cloudphone:KeyPair\n properties:\n keyPairName: example\n publicKeyBody: QAAAAH0o+PMrbz9ZlxaNMYlk1rJkN4JXqwSUVYW5YzMW3fWJ7At1XO40GYDEFL43fLob52pmRxRDuRoGAELmS1AyzqUle2v9yGKFziqS/vK/4vM4MW/ppnTmvh9zPXir0fB/uwXS4iS6xt0gmvprgyRNs7hgXtBK9ASiGuPCv47aRJqh9mYzq2pe2rgb+K0OU5/nQXwWKSxYsv+w3KWPshpwx8iF/JWvjixILJ5gygndd+1HyE8jrLVmvm/OitNaMgkolY1bvmRVVKLmzde7FtXw0s4TVfYUvF385gwlrOulKcL7UuMHV87MV/tcvEA0Gg88JrKgI5LmvQ8BDkrfoSi+bchk1KTAqJ8YMvL2pOogXbBoONeJS176zLYpLHmONtIDQFz/gEqAjGQVW+j4J+1w8oWrn8EjtcDe2kY34s3PDLioK3BN9CIBBQur+SH25R0RnEqD0YPFT7/ym0LomtPOS0t72n5JejBTfWaXiqb/I4f2Ypy1PA6fV5UUFIHODpNtuS4g2HKKqDS/sgYRBA2gpN2MmqeqgsQmSy+EljHdUe4KDVqAZ/qxLqnbp47BGHw2xjuZ60nXAoRecWCg2GDbx13ga4dKUQY+ER8Jruz7ILK4MRB7E4SjSUVmgcdh534c51BYIdI2HkQwQU2dgyJyQme9sDQxxGHpYKFQlFSyXUeOSjXLtQEAAQA= qiaozhou_15694163938@h2sqyfpc71g1t2w\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Phone Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/keyPair:KeyPair example \u003cid\u003e\n```\n\n",
"properties": {
"keyPairName": {
"type": "string",
@@ -123696,7 +125684,7 @@
}
},
"alicloud:cloudphone/policy:Policy": {
- "description": "Provides a Cloud Phone Policy resource.\n\nCloud phone policy.\n\nFor information about Cloud Phone Policy and how to use it, see [What is Policy](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreatePolicyGroup).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudphone.Policy(\"default\", {\n policyGroupName: \"NewPolicyName\",\n resolutionWidth: 720,\n lockResolution: \"on\",\n cameraRedirect: \"on\",\n resolutionHeight: 1280,\n clipboard: \"read\",\n netRedirectPolicy: {\n netRedirect: \"on\",\n customProxy: \"on\",\n proxyType: \"socks5\",\n hostAddr: \"192.168.12.13\",\n port: \"8888\",\n proxyUserName: \"user1\",\n proxyPassword: \"123456\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudphone.Policy(\"default\",\n policy_group_name=\"NewPolicyName\",\n resolution_width=720,\n lock_resolution=\"on\",\n camera_redirect=\"on\",\n resolution_height=1280,\n clipboard=\"read\",\n net_redirect_policy={\n \"net_redirect\": \"on\",\n \"custom_proxy\": \"on\",\n \"proxy_type\": \"socks5\",\n \"host_addr\": \"192.168.12.13\",\n \"port\": \"8888\",\n \"proxy_user_name\": \"user1\",\n \"proxy_password\": \"123456\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudPhone.Policy(\"default\", new()\n {\n PolicyGroupName = \"NewPolicyName\",\n ResolutionWidth = 720,\n LockResolution = \"on\",\n CameraRedirect = \"on\",\n ResolutionHeight = 1280,\n Clipboard = \"read\",\n NetRedirectPolicy = new AliCloud.cloudPhone.Inputs.PolicyNetRedirectPolicyArgs\n {\n NetRedirect = \"on\",\n CustomProxy = \"on\",\n ProxyType = \"socks5\",\n HostAddr = \"192.168.12.13\",\n Port = \"8888\",\n ProxyUserName = \"user1\",\n ProxyPassword = \"123456\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudphone.NewPolicy(ctx, \"default\", \u0026cloudphone.PolicyArgs{\n\t\t\tPolicyGroupName: pulumi.String(\"NewPolicyName\"),\n\t\t\tResolutionWidth: pulumi.Int(720),\n\t\t\tLockResolution: pulumi.String(\"on\"),\n\t\t\tCameraRedirect: pulumi.String(\"on\"),\n\t\t\tResolutionHeight: pulumi.Int(1280),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tNetRedirectPolicy: \u0026cloudphone.PolicyNetRedirectPolicyArgs{\n\t\t\t\tNetRedirect: pulumi.String(\"on\"),\n\t\t\t\tCustomProxy: pulumi.String(\"on\"),\n\t\t\t\tProxyType: pulumi.String(\"socks5\"),\n\t\t\t\tHostAddr: pulumi.String(\"192.168.12.13\"),\n\t\t\t\tPort: pulumi.String(\"8888\"),\n\t\t\t\tProxyUserName: pulumi.String(\"user1\"),\n\t\t\t\tProxyPassword: pulumi.String(\"123456\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphone.PolicyArgs;\nimport com.pulumi.alicloud.cloudphone.inputs.PolicyNetRedirectPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Policy(\"default\", PolicyArgs.builder()\n .policyGroupName(\"NewPolicyName\")\n .resolutionWidth(720)\n .lockResolution(\"on\")\n .cameraRedirect(\"on\")\n .resolutionHeight(1280)\n .clipboard(\"read\")\n .netRedirectPolicy(PolicyNetRedirectPolicyArgs.builder()\n .netRedirect(\"on\")\n .customProxy(\"on\")\n .proxyType(\"socks5\")\n .hostAddr(\"192.168.12.13\")\n .port(\"8888\")\n .proxyUserName(\"user1\")\n .proxyPassword(\"123456\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudphone:Policy\n properties:\n policyGroupName: NewPolicyName\n resolutionWidth: '720'\n lockResolution: on\n cameraRedirect: on\n resolutionHeight: '1280'\n clipboard: read\n netRedirectPolicy:\n netRedirect: on\n customProxy: on\n proxyType: socks5\n hostAddr: 192.168.12.13\n port: '8888'\n proxyUserName: user1\n proxyPassword: '123456'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Phone Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/policy:Policy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Phone Policy resource.\n\nCloud phone policy.\n\nFor information about Cloud Phone Policy and how to use it, see [What is Policy](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreatePolicyGroup).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cloudphone.Policy(\"default\", {\n policyGroupName: \"NewPolicyName\",\n resolutionWidth: 720,\n lockResolution: \"on\",\n cameraRedirect: \"on\",\n resolutionHeight: 1280,\n clipboard: \"read\",\n netRedirectPolicy: {\n netRedirect: \"on\",\n customProxy: \"on\",\n proxyType: \"socks5\",\n hostAddr: \"192.168.12.13\",\n port: \"8888\",\n proxyUserName: \"user1\",\n proxyPassword: \"123456\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudphone.Policy(\"default\",\n policy_group_name=\"NewPolicyName\",\n resolution_width=720,\n lock_resolution=\"on\",\n camera_redirect=\"on\",\n resolution_height=1280,\n clipboard=\"read\",\n net_redirect_policy={\n \"net_redirect\": \"on\",\n \"custom_proxy\": \"on\",\n \"proxy_type\": \"socks5\",\n \"host_addr\": \"192.168.12.13\",\n \"port\": \"8888\",\n \"proxy_user_name\": \"user1\",\n \"proxy_password\": \"123456\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CloudPhone.Policy(\"default\", new()\n {\n PolicyGroupName = \"NewPolicyName\",\n ResolutionWidth = 720,\n LockResolution = \"on\",\n CameraRedirect = \"on\",\n ResolutionHeight = 1280,\n Clipboard = \"read\",\n NetRedirectPolicy = new AliCloud.cloudPhone.Inputs.PolicyNetRedirectPolicyArgs\n {\n NetRedirect = \"on\",\n CustomProxy = \"on\",\n ProxyType = \"socks5\",\n HostAddr = \"192.168.12.13\",\n Port = \"8888\",\n ProxyUserName = \"user1\",\n ProxyPassword = \"123456\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudphone.NewPolicy(ctx, \"default\", \u0026cloudphone.PolicyArgs{\n\t\t\tPolicyGroupName: pulumi.String(\"NewPolicyName\"),\n\t\t\tResolutionWidth: pulumi.Int(720),\n\t\t\tLockResolution: pulumi.String(\"on\"),\n\t\t\tCameraRedirect: pulumi.String(\"on\"),\n\t\t\tResolutionHeight: pulumi.Int(1280),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tNetRedirectPolicy: \u0026cloudphone.PolicyNetRedirectPolicyArgs{\n\t\t\t\tNetRedirect: pulumi.String(\"on\"),\n\t\t\t\tCustomProxy: pulumi.String(\"on\"),\n\t\t\t\tProxyType: pulumi.String(\"socks5\"),\n\t\t\t\tHostAddr: pulumi.String(\"192.168.12.13\"),\n\t\t\t\tPort: pulumi.String(\"8888\"),\n\t\t\t\tProxyUserName: pulumi.String(\"user1\"),\n\t\t\t\tProxyPassword: pulumi.String(\"123456\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphone.PolicyArgs;\nimport com.pulumi.alicloud.cloudphone.inputs.PolicyNetRedirectPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Policy(\"default\", PolicyArgs.builder()\n .policyGroupName(\"NewPolicyName\")\n .resolutionWidth(720)\n .lockResolution(\"on\")\n .cameraRedirect(\"on\")\n .resolutionHeight(1280)\n .clipboard(\"read\")\n .netRedirectPolicy(PolicyNetRedirectPolicyArgs.builder()\n .netRedirect(\"on\")\n .customProxy(\"on\")\n .proxyType(\"socks5\")\n .hostAddr(\"192.168.12.13\")\n .port(\"8888\")\n .proxyUserName(\"user1\")\n .proxyPassword(\"123456\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cloudphone:Policy\n properties:\n policyGroupName: NewPolicyName\n resolutionWidth: '720'\n lockResolution: on\n cameraRedirect: on\n resolutionHeight: '1280'\n clipboard: read\n netRedirectPolicy:\n netRedirect: on\n customProxy: on\n proxyType: socks5\n hostAddr: 192.168.12.13\n port: '8888'\n proxyUserName: user1\n proxyPassword: '123456'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Phone Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphone/policy:Policy example \u003cid\u003e\n```\n\n",
"properties": {
"cameraRedirect": {
"type": "string",
@@ -123841,7 +125829,7 @@
}
},
"alicloud:cloudphoneinstance/group:Group": {
- "description": "Provides a Cloud Phone Instance Group resource.\n\n\n\nFor 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).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-hangzhou\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {\n lockResolution: \"off\",\n resolutionWidth: 720,\n cameraRedirect: \"on\",\n policyGroupName: \"defaultPolicyGroup\",\n resolutionHeight: 1280,\n clipboard: \"readwrite\",\n netRedirectPolicy: {\n netRedirect: \"off\",\n customProxy: \"off\",\n },\n});\nconst defaultH2a5KS = new alicloud.eds.SimpleOfficeSite(\"defaultH2a5KS\", {\n officeSiteName: \"InitOfficeSite\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = new alicloud.cloudphoneinstance.Group(\"default\", {\n instanceGroupSpec: \"acp.basic.small\",\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n policyGroupId: defaultjZ1gi0.id,\n officeSiteId: defaultH2a5KS.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-hangzhou\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\",\n lock_resolution=\"off\",\n resolution_width=720,\n camera_redirect=\"on\",\n policy_group_name=\"defaultPolicyGroup\",\n resolution_height=1280,\n clipboard=\"readwrite\",\n net_redirect_policy={\n \"net_redirect\": \"off\",\n \"custom_proxy\": \"off\",\n })\ndefault_h2a5_ks = alicloud.eds.SimpleOfficeSite(\"defaultH2a5KS\",\n office_site_name=\"InitOfficeSite\",\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudphoneinstance.Group(\"default\",\n instance_group_spec=\"acp.basic.small\",\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False,\n policy_group_id=defaultj_z1gi0.id,\n office_site_id=default_h2a5_ks.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-hangzhou\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\", new()\n {\n LockResolution = \"off\",\n ResolutionWidth = 720,\n CameraRedirect = \"on\",\n PolicyGroupName = \"defaultPolicyGroup\",\n ResolutionHeight = 1280,\n Clipboard = \"readwrite\",\n NetRedirectPolicy = new AliCloud.cloudPhone.Inputs.PolicyNetRedirectPolicyArgs\n {\n NetRedirect = \"off\",\n CustomProxy = \"off\",\n },\n });\n\n var defaultH2a5KS = new AliCloud.Eds.SimpleOfficeSite(\"defaultH2a5KS\", new()\n {\n OfficeSiteName = \"InitOfficeSite\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = new AliCloud.CloudPhoneInstance.Group(\"default\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n PolicyGroupId = defaultjZ1gi0.Id,\n OfficeSiteId = defaultH2a5KS.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", \u0026cloudphone.PolicyArgs{\n\t\t\tLockResolution: pulumi.String(\"off\"),\n\t\t\tResolutionWidth: pulumi.Int(720),\n\t\t\tCameraRedirect: pulumi.String(\"on\"),\n\t\t\tPolicyGroupName: pulumi.String(\"defaultPolicyGroup\"),\n\t\t\tResolutionHeight: pulumi.Int(1280),\n\t\t\tClipboard: pulumi.String(\"readwrite\"),\n\t\t\tNetRedirectPolicy: \u0026cloudphone.PolicyNetRedirectPolicyArgs{\n\t\t\t\tNetRedirect: pulumi.String(\"off\"),\n\t\t\t\tCustomProxy: pulumi.String(\"off\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultH2a5KS, err := eds.NewSimpleOfficeSite(ctx, \"defaultH2a5KS\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tOfficeSiteName: pulumi.String(\"InitOfficeSite\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphoneinstance.NewGroup(ctx, \"default\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tOfficeSiteId: defaultH2a5KS.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphone.PolicyArgs;\nimport com.pulumi.alicloud.cloudphone.inputs.PolicyNetRedirectPolicyArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-hangzhou\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\", PolicyArgs.builder()\n .lockResolution(\"off\")\n .resolutionWidth(720)\n .cameraRedirect(\"on\")\n .policyGroupName(\"defaultPolicyGroup\")\n .resolutionHeight(1280)\n .clipboard(\"readwrite\")\n .netRedirectPolicy(PolicyNetRedirectPolicyArgs.builder()\n .netRedirect(\"off\")\n .customProxy(\"off\")\n .build())\n .build());\n\n var defaultH2a5KS = new SimpleOfficeSite(\"defaultH2a5KS\", SimpleOfficeSiteArgs.builder()\n .officeSiteName(\"InitOfficeSite\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default_ = new Group(\"default\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .policyGroupId(defaultjZ1gi0.id())\n .officeSiteId(defaultH2a5KS.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-hangzhou\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n properties:\n lockResolution: off\n resolutionWidth: '720'\n cameraRedirect: on\n policyGroupName: defaultPolicyGroup\n resolutionHeight: '1280'\n clipboard: readwrite\n netRedirectPolicy:\n netRedirect: off\n customProxy: off\n defaultH2a5KS:\n type: alicloud:eds:SimpleOfficeSite\n properties:\n officeSiteName: InitOfficeSite\n cidrBlock: 172.16.0.0/12\n default:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n policyGroupId: ${defaultjZ1gi0.id}\n officeSiteId: ${defaultH2a5KS.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Phone Instance Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphoneinstance/group:Group example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Phone Instance Group resource.\n\n\n\nFor 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).\n\n\u003e **NOTE:** Available since v1.243.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst regionId = config.get(\"regionId\") || \"cn-hangzhou\";\nconst defaultjZ1gi0 = new alicloud.cloudphone.Policy(\"defaultjZ1gi0\", {\n lockResolution: \"off\",\n resolutionWidth: 720,\n cameraRedirect: \"on\",\n policyGroupName: \"defaultPolicyGroup\",\n resolutionHeight: 1280,\n clipboard: \"readwrite\",\n netRedirectPolicy: {\n netRedirect: \"off\",\n customProxy: \"off\",\n },\n});\nconst defaultH2a5KS = new alicloud.eds.SimpleOfficeSite(\"defaultH2a5KS\", {\n officeSiteName: \"InitOfficeSite\",\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = new alicloud.cloudphoneinstance.Group(\"default\", {\n instanceGroupSpec: \"acp.basic.small\",\n instanceGroupName: \"AutoCreateGroupName\",\n period: 1,\n numberOfInstances: 1,\n chargeType: \"PostPaid\",\n imageId: \"imgc-075cllfeuazh03tg9\",\n periodUnit: \"Hour\",\n autoRenew: false,\n amount: 1,\n autoPay: false,\n gpuAcceleration: false,\n policyGroupId: defaultjZ1gi0.id,\n officeSiteId: defaultH2a5KS.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-hangzhou\"\ndefaultj_z1gi0 = alicloud.cloudphone.Policy(\"defaultjZ1gi0\",\n lock_resolution=\"off\",\n resolution_width=720,\n camera_redirect=\"on\",\n policy_group_name=\"defaultPolicyGroup\",\n resolution_height=1280,\n clipboard=\"readwrite\",\n net_redirect_policy={\n \"net_redirect\": \"off\",\n \"custom_proxy\": \"off\",\n })\ndefault_h2a5_ks = alicloud.eds.SimpleOfficeSite(\"defaultH2a5KS\",\n office_site_name=\"InitOfficeSite\",\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudphoneinstance.Group(\"default\",\n instance_group_spec=\"acp.basic.small\",\n instance_group_name=\"AutoCreateGroupName\",\n period=1,\n number_of_instances=1,\n charge_type=\"PostPaid\",\n image_id=\"imgc-075cllfeuazh03tg9\",\n period_unit=\"Hour\",\n auto_renew=False,\n amount=1,\n auto_pay=False,\n gpu_acceleration=False,\n policy_group_id=defaultj_z1gi0.id,\n office_site_id=default_h2a5_ks.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var regionId = config.Get(\"regionId\") ?? \"cn-hangzhou\";\n var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy(\"defaultjZ1gi0\", new()\n {\n LockResolution = \"off\",\n ResolutionWidth = 720,\n CameraRedirect = \"on\",\n PolicyGroupName = \"defaultPolicyGroup\",\n ResolutionHeight = 1280,\n Clipboard = \"readwrite\",\n NetRedirectPolicy = new AliCloud.cloudPhone.Inputs.PolicyNetRedirectPolicyArgs\n {\n NetRedirect = \"off\",\n CustomProxy = \"off\",\n },\n });\n\n var defaultH2a5KS = new AliCloud.Eds.SimpleOfficeSite(\"defaultH2a5KS\", new()\n {\n OfficeSiteName = \"InitOfficeSite\",\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = new AliCloud.CloudPhoneInstance.Group(\"default\", new()\n {\n InstanceGroupSpec = \"acp.basic.small\",\n InstanceGroupName = \"AutoCreateGroupName\",\n Period = 1,\n NumberOfInstances = 1,\n ChargeType = \"PostPaid\",\n ImageId = \"imgc-075cllfeuazh03tg9\",\n PeriodUnit = \"Hour\",\n AutoRenew = false,\n Amount = 1,\n AutoPay = false,\n GpuAcceleration = false,\n PolicyGroupId = defaultjZ1gi0.Id,\n OfficeSiteId = defaultH2a5KS.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tregionId := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\tdefaultjZ1gi0, err := cloudphone.NewPolicy(ctx, \"defaultjZ1gi0\", \u0026cloudphone.PolicyArgs{\n\t\t\tLockResolution: pulumi.String(\"off\"),\n\t\t\tResolutionWidth: pulumi.Int(720),\n\t\t\tCameraRedirect: pulumi.String(\"on\"),\n\t\t\tPolicyGroupName: pulumi.String(\"defaultPolicyGroup\"),\n\t\t\tResolutionHeight: pulumi.Int(1280),\n\t\t\tClipboard: pulumi.String(\"readwrite\"),\n\t\t\tNetRedirectPolicy: \u0026cloudphone.PolicyNetRedirectPolicyArgs{\n\t\t\t\tNetRedirect: pulumi.String(\"off\"),\n\t\t\t\tCustomProxy: pulumi.String(\"off\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultH2a5KS, err := eds.NewSimpleOfficeSite(ctx, \"defaultH2a5KS\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tOfficeSiteName: pulumi.String(\"InitOfficeSite\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudphoneinstance.NewGroup(ctx, \"default\", \u0026cloudphoneinstance.GroupArgs{\n\t\t\tInstanceGroupSpec: pulumi.String(\"acp.basic.small\"),\n\t\t\tInstanceGroupName: pulumi.String(\"AutoCreateGroupName\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tNumberOfInstances: pulumi.Int(1),\n\t\t\tChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tImageId: pulumi.String(\"imgc-075cllfeuazh03tg9\"),\n\t\t\tPeriodUnit: pulumi.String(\"Hour\"),\n\t\t\tAutoRenew: pulumi.Bool(false),\n\t\t\tAmount: pulumi.Int(1),\n\t\t\tAutoPay: pulumi.Bool(false),\n\t\t\tGpuAcceleration: pulumi.Bool(false),\n\t\t\tPolicyGroupId: defaultjZ1gi0.ID(),\n\t\t\tOfficeSiteId: defaultH2a5KS.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudphone.Policy;\nimport com.pulumi.alicloud.cloudphone.PolicyArgs;\nimport com.pulumi.alicloud.cloudphone.inputs.PolicyNetRedirectPolicyArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.cloudphoneinstance.Group;\nimport com.pulumi.alicloud.cloudphoneinstance.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-hangzhou\");\n var defaultjZ1gi0 = new Policy(\"defaultjZ1gi0\", PolicyArgs.builder()\n .lockResolution(\"off\")\n .resolutionWidth(720)\n .cameraRedirect(\"on\")\n .policyGroupName(\"defaultPolicyGroup\")\n .resolutionHeight(1280)\n .clipboard(\"readwrite\")\n .netRedirectPolicy(PolicyNetRedirectPolicyArgs.builder()\n .netRedirect(\"off\")\n .customProxy(\"off\")\n .build())\n .build());\n\n var defaultH2a5KS = new SimpleOfficeSite(\"defaultH2a5KS\", SimpleOfficeSiteArgs.builder()\n .officeSiteName(\"InitOfficeSite\")\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default_ = new Group(\"default\", GroupArgs.builder()\n .instanceGroupSpec(\"acp.basic.small\")\n .instanceGroupName(\"AutoCreateGroupName\")\n .period(1)\n .numberOfInstances(1)\n .chargeType(\"PostPaid\")\n .imageId(\"imgc-075cllfeuazh03tg9\")\n .periodUnit(\"Hour\")\n .autoRenew(false)\n .amount(1)\n .autoPay(false)\n .gpuAcceleration(false)\n .policyGroupId(defaultjZ1gi0.id())\n .officeSiteId(defaultH2a5KS.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n regionId:\n type: string\n default: cn-hangzhou\nresources:\n defaultjZ1gi0:\n type: alicloud:cloudphone:Policy\n properties:\n lockResolution: off\n resolutionWidth: '720'\n cameraRedirect: on\n policyGroupName: defaultPolicyGroup\n resolutionHeight: '1280'\n clipboard: readwrite\n netRedirectPolicy:\n netRedirect: off\n customProxy: off\n defaultH2a5KS:\n type: alicloud:eds:SimpleOfficeSite\n properties:\n officeSiteName: InitOfficeSite\n cidrBlock: 172.16.0.0/12\n default:\n type: alicloud:cloudphoneinstance:Group\n properties:\n instanceGroupSpec: acp.basic.small\n instanceGroupName: AutoCreateGroupName\n period: '1'\n numberOfInstances: '1'\n chargeType: PostPaid\n imageId: imgc-075cllfeuazh03tg9\n periodUnit: Hour\n autoRenew: false\n amount: '1'\n autoPay: false\n gpuAcceleration: false\n policyGroupId: ${defaultjZ1gi0.id}\n officeSiteId: ${defaultH2a5KS.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Phone Instance Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudphoneinstance/group:Group example \u003cid\u003e\n```\n\n",
"properties": {
"amount": {
"type": "integer",
@@ -124047,7 +126035,7 @@
}
},
"alicloud:cloudsso/accessConfiguration:AccessConfiguration": {
- "description": "Provides a Cloud SSO Access Configuration resource.\n\nFor information about Cloud SSO Access Configuration and how to use it, see [What is Access Configuration](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createaccessconfiguration).\n\n\u003e **NOTE:** Available since v1.145.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n directoryId: _default.then(_default =\u003e _default.directories?.[0]?.id),\n accessConfigurationName: name,\n permissionPolicies: [{\n permissionPolicyType: \"Inline\",\n permissionPolicyName: name,\n permissionPolicyDocument: ` {\n \\\\\"Statement\\\\\":[\n {\n \\\\\"Action\\\\\":\\\\\"ecs:Get*\\\\\",\n \\\\\"Effect\\\\\":\\\\\"Allow\\\\\",\n \\\\\"Resource\\\\\":[\n \\\\\"*\\\\\"\n ]\n }\n ],\n \\\\\"Version\\\\\": \\\\\"1\\\\\"\n }\n`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n directory_id=default.directories[0].id,\n access_configuration_name=name,\n permission_policies=[{\n \"permission_policy_type\": \"Inline\",\n \"permission_policy_name\": name,\n \"permission_policy_document\": \"\"\" {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n\"\"\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n DirectoryId = @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Directories[0]?.Id)),\n AccessConfigurationName = name,\n PermissionPolicies = new[]\n {\n new AliCloud.CloudSso.Inputs.AccessConfigurationPermissionPolicyArgs\n {\n PermissionPolicyType = \"Inline\",\n PermissionPolicyName = name,\n PermissionPolicyDocument = @\" {\n \\\"\"Statement\\\"\":[\n {\n \\\"\"Action\\\"\":\\\"\"ecs:Get*\\\"\",\n \\\"\"Effect\\\"\":\\\"\"Allow\\\"\",\n \\\"\"Resource\\\"\":[\n \\\"\"*\\\"\"\n ]\n }\n ],\n \\\"\"Version\\\"\": \\\"\"1\\\"\"\n }\n\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\n\t\t\tDirectoryId: pulumi.String(_default.Directories[0].Id),\n\t\t\tAccessConfigurationName: pulumi.String(name),\n\t\t\tPermissionPolicies: cloudsso.AccessConfigurationPermissionPolicyArray{\n\t\t\t\t\u0026cloudsso.AccessConfigurationPermissionPolicyArgs{\n\t\t\t\t\tPermissionPolicyType: pulumi.String(\"Inline\"),\n\t\t\t\t\tPermissionPolicyName: pulumi.String(name),\n\t\t\t\t\tPermissionPolicyDocument: pulumi.String(` {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n`),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.inputs.AccessConfigurationPermissionPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .directoryId(default_.directories()[0].id())\n .accessConfigurationName(name)\n .permissionPolicies(AccessConfigurationPermissionPolicyArgs.builder()\n .permissionPolicyType(\"Inline\")\n .permissionPolicyName(name)\n .permissionPolicyDocument(\"\"\"\n {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultAccessConfiguration:\n type: alicloud:cloudsso:AccessConfiguration\n name: default\n properties:\n directoryId: ${default.directories[0].id}\n accessConfigurationName: ${name}\n permissionPolicies:\n - permissionPolicyType: Inline\n permissionPolicyName: ${name}\n permissionPolicyDocument: |2\n {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudsso:getDirectories\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Access Configuration can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessConfiguration:AccessConfiguration example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Access Configuration resource.\n\nFor information about Cloud SSO Access Configuration and how to use it, see [What is Access Configuration](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createaccessconfiguration).\n\n\u003e **NOTE:** Available since v1.145.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n directoryId: _default.then(_default =\u003e _default.directories?.[0]?.id),\n accessConfigurationName: name,\n permissionPolicies: [{\n permissionPolicyType: \"Inline\",\n permissionPolicyName: name,\n permissionPolicyDocument: ` {\n \\\\\"Statement\\\\\":[\n {\n \\\\\"Action\\\\\":\\\\\"ecs:Get*\\\\\",\n \\\\\"Effect\\\\\":\\\\\"Allow\\\\\",\n \\\\\"Resource\\\\\":[\n \\\\\"*\\\\\"\n ]\n }\n ],\n \\\\\"Version\\\\\": \\\\\"1\\\\\"\n }\n`,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n directory_id=default.directories[0].id,\n access_configuration_name=name,\n permission_policies=[{\n \"permission_policy_type\": \"Inline\",\n \"permission_policy_name\": name,\n \"permission_policy_document\": \"\"\" {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n\"\"\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n DirectoryId = @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Directories[0]?.Id)),\n AccessConfigurationName = name,\n PermissionPolicies = new[]\n {\n new AliCloud.CloudSso.Inputs.AccessConfigurationPermissionPolicyArgs\n {\n PermissionPolicyType = \"Inline\",\n PermissionPolicyName = name,\n PermissionPolicyDocument = @\" {\n \\\"\"Statement\\\"\":[\n {\n \\\"\"Action\\\"\":\\\"\"ecs:Get*\\\"\",\n \\\"\"Effect\\\"\":\\\"\"Allow\\\"\",\n \\\"\"Resource\\\"\":[\n \\\"\"*\\\"\"\n ]\n }\n ],\n \\\"\"Version\\\"\": \\\"\"1\\\"\"\n }\n\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\n\t\t\tDirectoryId: pulumi.String(_default.Directories[0].Id),\n\t\t\tAccessConfigurationName: pulumi.String(name),\n\t\t\tPermissionPolicies: cloudsso.AccessConfigurationPermissionPolicyArray{\n\t\t\t\t\u0026cloudsso.AccessConfigurationPermissionPolicyArgs{\n\t\t\t\t\tPermissionPolicyType: pulumi.String(\"Inline\"),\n\t\t\t\t\tPermissionPolicyName: pulumi.String(name),\n\t\t\t\t\tPermissionPolicyDocument: pulumi.String(` {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n`),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.inputs.AccessConfigurationPermissionPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .directoryId(default_.directories()[0].id())\n .accessConfigurationName(name)\n .permissionPolicies(AccessConfigurationPermissionPolicyArgs.builder()\n .permissionPolicyType(\"Inline\")\n .permissionPolicyName(name)\n .permissionPolicyDocument(\"\"\"\n {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultAccessConfiguration:\n type: alicloud:cloudsso:AccessConfiguration\n name: default\n properties:\n directoryId: ${default.directories[0].id}\n accessConfigurationName: ${name}\n permissionPolicies:\n - permissionPolicyType: Inline\n permissionPolicyName: ${name}\n permissionPolicyDocument: |2\n {\n \\\"Statement\\\":[\n {\n \\\"Action\\\":\\\"ecs:Get*\\\",\n \\\"Effect\\\":\\\"Allow\\\",\n \\\"Resource\\\":[\n \\\"*\\\"\n ]\n }\n ],\n \\\"Version\\\": \\\"1\\\"\n }\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudsso:getDirectories\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Access Configuration can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessConfiguration:AccessConfiguration example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e\n```\n\n",
"properties": {
"accessConfigurationId": {
"type": "string",
@@ -124175,7 +126163,7 @@
}
},
"alicloud:cloudsso/accessConfigurationProvisioning:AccessConfigurationProvisioning": {
- "description": "Provides a Cloud SSO Access Configuration Provisioning resource.\n\nFor information about Cloud SSO Access Configuration Provisioning and how to use it, see [What is Access Configuration Provisioning](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-addpermissionpolicytoaccessconfiguration).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultGetResourceDirectories = alicloud.resourcemanager.getResourceDirectories({});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n accessConfigurationName: `${name}-${defaultInteger.result}`,\n directoryId: directoryId,\n});\nconst defaultAccessConfigurationProvisioning = new alicloud.cloudsso.AccessConfigurationProvisioning(\"default\", {\n directoryId: directoryId,\n accessConfigurationId: defaultAccessConfiguration.accessConfigurationId,\n targetType: \"RD-Account\",\n targetId: defaultGetResourceDirectories.then(defaultGetResourceDirectories =\u003e defaultGetResourceDirectories.directories?.[0]?.masterAccountId),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_get_resource_directories = alicloud.resourcemanager.get_resource_directories()\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n access_configuration_name=f\"{name}-{default_integer['result']}\",\n directory_id=directory_id)\ndefault_access_configuration_provisioning = alicloud.cloudsso.AccessConfigurationProvisioning(\"default\",\n directory_id=directory_id,\n access_configuration_id=default_access_configuration.access_configuration_id,\n target_type=\"RD-Account\",\n target_id=default_get_resource_directories.directories[0].master_account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultGetResourceDirectories = AliCloud.ResourceManager.GetResourceDirectories.Invoke();\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n AccessConfigurationName = $\"{name}-{defaultInteger.Result}\",\n DirectoryId = directoryId,\n });\n\n var defaultAccessConfigurationProvisioning = new AliCloud.CloudSso.AccessConfigurationProvisioning(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationId = defaultAccessConfiguration.AccessConfigurationId,\n TargetType = \"RD-Account\",\n TargetId = defaultGetResourceDirectories.Apply(getResourceDirectoriesResult =\u003e getResourceDirectoriesResult.Directories[0]?.MasterAccountId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceDirectories, err := resourcemanager.GetResourceDirectories(ctx, \u0026resourcemanager.GetResourceDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:14,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultAccessConfiguration, err := cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\nAccessConfigurationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nDirectoryId: pulumi.Any(directoryId),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewAccessConfigurationProvisioning(ctx, \"default\", \u0026cloudsso.AccessConfigurationProvisioningArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationId: defaultAccessConfiguration.AccessConfigurationId,\nTargetType: pulumi.String(\"RD-Account\"),\nTargetId: pulumi.String(defaultGetResourceDirectories.Directories[0].MasterAccountId),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationProvisioning;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationProvisioningArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n final var defaultGetResourceDirectories = ResourcemanagerFunctions.getResourceDirectories(GetResourceDirectoriesArgs.builder()\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .accessConfigurationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .directoryId(directoryId)\n .build());\n\n var defaultAccessConfigurationProvisioning = new AccessConfigurationProvisioning(\"defaultAccessConfigurationProvisioning\", AccessConfigurationProvisioningArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationId(defaultAccessConfiguration.accessConfigurationId())\n .targetType(\"RD-Account\")\n .targetId(defaultGetResourceDirectories.directories()[0].masterAccountId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Access Configuration Provisioning can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessConfigurationProvisioning:AccessConfigurationProvisioning example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e:\u003ctarget_type\u003e:\u003ctarget_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Access Configuration Provisioning resource.\n\nFor information about Cloud SSO Access Configuration Provisioning and how to use it, see [What is Access Configuration Provisioning](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-addpermissionpolicytoaccessconfiguration).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultGetResourceDirectories = alicloud.resourcemanager.getResourceDirectories({});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n accessConfigurationName: `${name}-${defaultInteger.result}`,\n directoryId: directoryId,\n});\nconst defaultAccessConfigurationProvisioning = new alicloud.cloudsso.AccessConfigurationProvisioning(\"default\", {\n directoryId: directoryId,\n accessConfigurationId: defaultAccessConfiguration.accessConfigurationId,\n targetType: \"RD-Account\",\n targetId: defaultGetResourceDirectories.then(defaultGetResourceDirectories =\u003e defaultGetResourceDirectories.directories?.[0]?.masterAccountId),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_get_resource_directories = alicloud.resourcemanager.get_resource_directories()\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n access_configuration_name=f\"{name}-{default_integer['result']}\",\n directory_id=directory_id)\ndefault_access_configuration_provisioning = alicloud.cloudsso.AccessConfigurationProvisioning(\"default\",\n directory_id=directory_id,\n access_configuration_id=default_access_configuration.access_configuration_id,\n target_type=\"RD-Account\",\n target_id=default_get_resource_directories.directories[0].master_account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultGetResourceDirectories = AliCloud.ResourceManager.GetResourceDirectories.Invoke();\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n AccessConfigurationName = $\"{name}-{defaultInteger.Result}\",\n DirectoryId = directoryId,\n });\n\n var defaultAccessConfigurationProvisioning = new AliCloud.CloudSso.AccessConfigurationProvisioning(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationId = defaultAccessConfiguration.AccessConfigurationId,\n TargetType = \"RD-Account\",\n TargetId = defaultGetResourceDirectories.Apply(getResourceDirectoriesResult =\u003e getResourceDirectoriesResult.Directories[0]?.MasterAccountId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceDirectories, err := resourcemanager.GetResourceDirectories(ctx, \u0026resourcemanager.GetResourceDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:14,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultAccessConfiguration, err := cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\nAccessConfigurationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nDirectoryId: pulumi.Any(directoryId),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewAccessConfigurationProvisioning(ctx, \"default\", \u0026cloudsso.AccessConfigurationProvisioningArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationId: defaultAccessConfiguration.AccessConfigurationId,\nTargetType: pulumi.String(\"RD-Account\"),\nTargetId: pulumi.String(defaultGetResourceDirectories.Directories[0].MasterAccountId),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationProvisioning;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationProvisioningArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n final var defaultGetResourceDirectories = ResourcemanagerFunctions.getResourceDirectories(GetResourceDirectoriesArgs.builder()\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .accessConfigurationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .directoryId(directoryId)\n .build());\n\n var defaultAccessConfigurationProvisioning = new AccessConfigurationProvisioning(\"defaultAccessConfigurationProvisioning\", AccessConfigurationProvisioningArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationId(defaultAccessConfiguration.accessConfigurationId())\n .targetType(\"RD-Account\")\n .targetId(defaultGetResourceDirectories.directories()[0].masterAccountId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Access Configuration Provisioning can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessConfigurationProvisioning:AccessConfigurationProvisioning example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e:\u003ctarget_type\u003e:\u003ctarget_id\u003e\n```\n\n",
"properties": {
"accessConfigurationId": {
"type": "string",
@@ -124269,7 +126257,7 @@
}
},
"alicloud:cloudsso/accessManagement:AccessManagement": {
- "description": "Provides a Cloud SSO Access Assignment resource.\n\nFor information about Cloud SSO Access Assignment and how to use it, see [What is Access Assignment](https://www.alibabacloud.com/help/en/cloudsso/developer-reference/api-cloudsso-2021-05-15-createaccessassignment).\n\n\u003e **NOTE:** When you configure access assignment for the first time, access configuration will be automatically deployed.\n\n\u003e **NOTE:** Available since v1.145.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultGetResourceDirectories = alicloud.resourcemanager.getResourceDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n directoryId: directoryId,\n accessConfigurationName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessManagement = new alicloud.cloudsso.AccessManagement(\"default\", {\n directoryId: directoryId,\n accessConfigurationId: defaultAccessConfiguration.accessConfigurationId,\n targetType: \"RD-Account\",\n targetId: defaultGetResourceDirectories.then(defaultGetResourceDirectories =\u003e defaultGetResourceDirectories.directories?.[0]?.masterAccountId),\n principalType: \"User\",\n principalId: defaultUser.userId,\n deprovisionStrategy: \"DeprovisionForLastAccessAssignmentOnAccount\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_get_resource_directories = alicloud.resourcemanager.get_resource_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n directory_id=directory_id,\n access_configuration_name=f\"{name}-{default_integer['result']}\")\ndefault_access_management = alicloud.cloudsso.AccessManagement(\"default\",\n directory_id=directory_id,\n access_configuration_id=default_access_configuration.access_configuration_id,\n target_type=\"RD-Account\",\n target_id=default_get_resource_directories.directories[0].master_account_id,\n principal_type=\"User\",\n principal_id=default_user.user_id,\n deprovision_strategy=\"DeprovisionForLastAccessAssignmentOnAccount\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultGetResourceDirectories = AliCloud.ResourceManager.GetResourceDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessManagement = new AliCloud.CloudSso.AccessManagement(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationId = defaultAccessConfiguration.AccessConfigurationId,\n TargetType = \"RD-Account\",\n TargetId = defaultGetResourceDirectories.Apply(getResourceDirectoriesResult =\u003e getResourceDirectoriesResult.Directories[0]?.MasterAccountId),\n PrincipalType = \"User\",\n PrincipalId = defaultUser.UserId,\n DeprovisionStrategy = \"DeprovisionForLastAccessAssignmentOnAccount\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceDirectories, err := resourcemanager.GetResourceDirectories(ctx, \u0026resourcemanager.GetResourceDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:45,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultAccessConfiguration, err := cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewAccessManagement(ctx, \"default\", \u0026cloudsso.AccessManagementArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationId: defaultAccessConfiguration.AccessConfigurationId,\nTargetType: pulumi.String(\"RD-Account\"),\nTargetId: pulumi.String(defaultGetResourceDirectories.Directories[0].MasterAccountId),\nPrincipalType: pulumi.String(\"User\"),\nPrincipalId: defaultUser.UserId,\nDeprovisionStrategy: pulumi.String(\"DeprovisionForLastAccessAssignmentOnAccount\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.AccessManagement;\nimport com.pulumi.alicloud.cloudsso.AccessManagementArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n final var defaultGetResourceDirectories = ResourcemanagerFunctions.getResourceDirectories(GetResourceDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessManagement = new AccessManagement(\"defaultAccessManagement\", AccessManagementArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationId(defaultAccessConfiguration.accessConfigurationId())\n .targetType(\"RD-Account\")\n .targetId(defaultGetResourceDirectories.directories()[0].masterAccountId())\n .principalType(\"User\")\n .principalId(defaultUser.userId())\n .deprovisionStrategy(\"DeprovisionForLastAccessAssignmentOnAccount\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Access Assignment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessManagement:AccessManagement example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e:\u003ctarget_type\u003e:\u003ctarget_id\u003e:\u003cprincipal_type\u003e:\u003cprincipal_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Access Assignment resource.\n\nFor information about Cloud SSO Access Assignment and how to use it, see [What is Access Assignment](https://www.alibabacloud.com/help/en/cloudsso/developer-reference/api-cloudsso-2021-05-15-createaccessassignment).\n\n\u003e **NOTE:** When you configure access assignment for the first time, access configuration will be automatically deployed.\n\n\u003e **NOTE:** Available since v1.145.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultGetResourceDirectories = alicloud.resourcemanager.getResourceDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessConfiguration = new alicloud.cloudsso.AccessConfiguration(\"default\", {\n directoryId: directoryId,\n accessConfigurationName: `${name}-${defaultInteger.result}`,\n});\nconst defaultAccessManagement = new alicloud.cloudsso.AccessManagement(\"default\", {\n directoryId: directoryId,\n accessConfigurationId: defaultAccessConfiguration.accessConfigurationId,\n targetType: \"RD-Account\",\n targetId: defaultGetResourceDirectories.then(defaultGetResourceDirectories =\u003e defaultGetResourceDirectories.directories?.[0]?.masterAccountId),\n principalType: \"User\",\n principalId: defaultUser.userId,\n deprovisionStrategy: \"DeprovisionForLastAccessAssignmentOnAccount\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_get_resource_directories = alicloud.resourcemanager.get_resource_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_access_configuration = alicloud.cloudsso.AccessConfiguration(\"default\",\n directory_id=directory_id,\n access_configuration_name=f\"{name}-{default_integer['result']}\")\ndefault_access_management = alicloud.cloudsso.AccessManagement(\"default\",\n directory_id=directory_id,\n access_configuration_id=default_access_configuration.access_configuration_id,\n target_type=\"RD-Account\",\n target_id=default_get_resource_directories.directories[0].master_account_id,\n principal_type=\"User\",\n principal_id=default_user.user_id,\n deprovision_strategy=\"DeprovisionForLastAccessAssignmentOnAccount\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultGetResourceDirectories = AliCloud.ResourceManager.GetResourceDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessConfiguration = new AliCloud.CloudSso.AccessConfiguration(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultAccessManagement = new AliCloud.CloudSso.AccessManagement(\"default\", new()\n {\n DirectoryId = directoryId,\n AccessConfigurationId = defaultAccessConfiguration.AccessConfigurationId,\n TargetType = \"RD-Account\",\n TargetId = defaultGetResourceDirectories.Apply(getResourceDirectoriesResult =\u003e getResourceDirectoriesResult.Directories[0]?.MasterAccountId),\n PrincipalType = \"User\",\n PrincipalId = defaultUser.UserId,\n DeprovisionStrategy = \"DeprovisionForLastAccessAssignmentOnAccount\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceDirectories, err := resourcemanager.GetResourceDirectories(ctx, \u0026resourcemanager.GetResourceDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:45,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultAccessConfiguration, err := cloudsso.NewAccessConfiguration(ctx, \"default\", \u0026cloudsso.AccessConfigurationArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewAccessManagement(ctx, \"default\", \u0026cloudsso.AccessManagementArgs{\nDirectoryId: pulumi.Any(directoryId),\nAccessConfigurationId: defaultAccessConfiguration.AccessConfigurationId,\nTargetType: pulumi.String(\"RD-Account\"),\nTargetId: pulumi.String(defaultGetResourceDirectories.Directories[0].MasterAccountId),\nPrincipalType: pulumi.String(\"User\"),\nPrincipalId: defaultUser.UserId,\nDeprovisionStrategy: pulumi.String(\"DeprovisionForLastAccessAssignmentOnAccount\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.AccessConfiguration;\nimport com.pulumi.alicloud.cloudsso.AccessConfigurationArgs;\nimport com.pulumi.alicloud.cloudsso.AccessManagement;\nimport com.pulumi.alicloud.cloudsso.AccessManagementArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n final var defaultGetResourceDirectories = ResourcemanagerFunctions.getResourceDirectories(GetResourceDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessConfiguration = new AccessConfiguration(\"defaultAccessConfiguration\", AccessConfigurationArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultAccessManagement = new AccessManagement(\"defaultAccessManagement\", AccessManagementArgs.builder()\n .directoryId(directoryId)\n .accessConfigurationId(defaultAccessConfiguration.accessConfigurationId())\n .targetType(\"RD-Account\")\n .targetId(defaultGetResourceDirectories.directories()[0].masterAccountId())\n .principalType(\"User\")\n .principalId(defaultUser.userId())\n .deprovisionStrategy(\"DeprovisionForLastAccessAssignmentOnAccount\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Access Assignment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/accessManagement:AccessManagement example \u003cdirectory_id\u003e:\u003caccess_configuration_id\u003e:\u003ctarget_type\u003e:\u003ctarget_id\u003e:\u003cprincipal_type\u003e:\u003cprincipal_id\u003e\n```\n\n",
"properties": {
"accessConfigurationId": {
"type": "string",
@@ -124403,7 +126391,7 @@
}
},
"alicloud:cloudsso/delegateAccount:DelegateAccount": {
- "description": "Provides a Cloud SSO Delegate Account resource.\n\nDelegated Administrator Account.\n\nFor information about Cloud SSO Delegate Account and how to use it, see [What is Delegate Account](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/EnableDelegateAccount).\n\n\u003e **NOTE:** Available since v1.259.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst defaultDelegatedAdministrator = new alicloud.resourcemanager.DelegatedAdministrator(\"default\", {\n accountId: _default.then(_default =\u003e _default.accounts?.[0]?.accountId),\n servicePrincipal: \"cloudsso.aliyuncs.com\",\n});\nconst defaultDelegateAccount = new alicloud.cloudsso.DelegateAccount(\"default\", {accountId: defaultDelegatedAdministrator.accountId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\ndefault_delegated_administrator = alicloud.resourcemanager.DelegatedAdministrator(\"default\",\n account_id=default.accounts[0].account_id,\n service_principal=\"cloudsso.aliyuncs.com\")\ndefault_delegate_account = alicloud.cloudsso.DelegateAccount(\"default\", account_id=default_delegated_administrator.account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var defaultDelegatedAdministrator = new AliCloud.ResourceManager.DelegatedAdministrator(\"default\", new()\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts[0]?.AccountId)),\n ServicePrincipal = \"cloudsso.aliyuncs.com\",\n });\n\n var defaultDelegateAccount = new AliCloud.CloudSso.DelegateAccount(\"default\", new()\n {\n AccountId = defaultDelegatedAdministrator.AccountId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDelegatedAdministrator, err := resourcemanager.NewDelegatedAdministrator(ctx, \"default\", \u0026resourcemanager.DelegatedAdministratorArgs{\n\t\t\tAccountId: pulumi.String(_default.Accounts[0].AccountId),\n\t\t\tServicePrincipal: pulumi.String(\"cloudsso.aliyuncs.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewDelegateAccount(ctx, \"default\", \u0026cloudsso.DelegateAccountArgs{\n\t\t\tAccountId: defaultDelegatedAdministrator.AccountId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.resourcemanager.DelegatedAdministrator;\nimport com.pulumi.alicloud.resourcemanager.DelegatedAdministratorArgs;\nimport com.pulumi.alicloud.cloudsso.DelegateAccount;\nimport com.pulumi.alicloud.cloudsso.DelegateAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n var defaultDelegatedAdministrator = new DelegatedAdministrator(\"defaultDelegatedAdministrator\", DelegatedAdministratorArgs.builder()\n .accountId(default_.accounts()[0].accountId())\n .servicePrincipal(\"cloudsso.aliyuncs.com\")\n .build());\n\n var defaultDelegateAccount = new DelegateAccount(\"defaultDelegateAccount\", DelegateAccountArgs.builder()\n .accountId(defaultDelegatedAdministrator.accountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultDelegatedAdministrator:\n type: alicloud:resourcemanager:DelegatedAdministrator\n name: default\n properties:\n accountId: ${default.accounts[0].accountId}\n servicePrincipal: cloudsso.aliyuncs.com\n defaultDelegateAccount:\n type: alicloud:cloudsso:DelegateAccount\n name: default\n properties:\n accountId: ${defaultDelegatedAdministrator.accountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getAccounts\n arguments:\n status: CreateSuccess\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Delegate Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/delegateAccount:DelegateAccount example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Delegate Account resource.\n\nDelegated Administrator Account.\n\nFor information about Cloud SSO Delegate Account and how to use it, see [What is Delegate Account](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/EnableDelegateAccount).\n\n\u003e **NOTE:** Available since v1.259.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getAccounts({\n status: \"CreateSuccess\",\n});\nconst defaultDelegatedAdministrator = new alicloud.resourcemanager.DelegatedAdministrator(\"default\", {\n accountId: _default.then(_default =\u003e _default.accounts?.[0]?.accountId),\n servicePrincipal: \"cloudsso.aliyuncs.com\",\n});\nconst defaultDelegateAccount = new alicloud.cloudsso.DelegateAccount(\"default\", {accountId: defaultDelegatedAdministrator.accountId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_accounts(status=\"CreateSuccess\")\ndefault_delegated_administrator = alicloud.resourcemanager.DelegatedAdministrator(\"default\",\n account_id=default.accounts[0].account_id,\n service_principal=\"cloudsso.aliyuncs.com\")\ndefault_delegate_account = alicloud.cloudsso.DelegateAccount(\"default\", account_id=default_delegated_administrator.account_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetAccounts.Invoke(new()\n {\n Status = \"CreateSuccess\",\n });\n\n var defaultDelegatedAdministrator = new AliCloud.ResourceManager.DelegatedAdministrator(\"default\", new()\n {\n AccountId = @default.Apply(@default =\u003e @default.Apply(getAccountsResult =\u003e getAccountsResult.Accounts[0]?.AccountId)),\n ServicePrincipal = \"cloudsso.aliyuncs.com\",\n });\n\n var defaultDelegateAccount = new AliCloud.CloudSso.DelegateAccount(\"default\", new()\n {\n AccountId = defaultDelegatedAdministrator.AccountId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetAccounts(ctx, \u0026resourcemanager.GetAccountsArgs{\n\t\t\tStatus: pulumi.StringRef(\"CreateSuccess\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDelegatedAdministrator, err := resourcemanager.NewDelegatedAdministrator(ctx, \"default\", \u0026resourcemanager.DelegatedAdministratorArgs{\n\t\t\tAccountId: pulumi.String(_default.Accounts[0].AccountId),\n\t\t\tServicePrincipal: pulumi.String(\"cloudsso.aliyuncs.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewDelegateAccount(ctx, \"default\", \u0026cloudsso.DelegateAccountArgs{\n\t\t\tAccountId: defaultDelegatedAdministrator.AccountId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetAccountsArgs;\nimport com.pulumi.alicloud.resourcemanager.DelegatedAdministrator;\nimport com.pulumi.alicloud.resourcemanager.DelegatedAdministratorArgs;\nimport com.pulumi.alicloud.cloudsso.DelegateAccount;\nimport com.pulumi.alicloud.cloudsso.DelegateAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getAccounts(GetAccountsArgs.builder()\n .status(\"CreateSuccess\")\n .build());\n\n var defaultDelegatedAdministrator = new DelegatedAdministrator(\"defaultDelegatedAdministrator\", DelegatedAdministratorArgs.builder()\n .accountId(default_.accounts()[0].accountId())\n .servicePrincipal(\"cloudsso.aliyuncs.com\")\n .build());\n\n var defaultDelegateAccount = new DelegateAccount(\"defaultDelegateAccount\", DelegateAccountArgs.builder()\n .accountId(defaultDelegatedAdministrator.accountId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultDelegatedAdministrator:\n type: alicloud:resourcemanager:DelegatedAdministrator\n name: default\n properties:\n accountId: ${default.accounts[0].accountId}\n servicePrincipal: cloudsso.aliyuncs.com\n defaultDelegateAccount:\n type: alicloud:cloudsso:DelegateAccount\n name: default\n properties:\n accountId: ${defaultDelegatedAdministrator.accountId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getAccounts\n arguments:\n status: CreateSuccess\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Delegate Account can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/delegateAccount:DelegateAccount example \u003cid\u003e\n```\n\n",
"properties": {
"accountId": {
"type": "string",
@@ -124436,7 +126424,7 @@
}
},
"alicloud:cloudsso/directory:Directory": {
- "description": "Provides a Cloud SSO Directory resource.\n\n\n\nFor information about Cloud SSO Directory and how to use it, see [What is Directory](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createdirectory).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cloudsso.Directory(\"default\", {directoryName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.Directory(\"default\", directory_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.CloudSso.Directory(\"default\", new()\n {\n DirectoryName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudsso.NewDirectory(ctx, \"default\", \u0026cloudsso.DirectoryArgs{\n\t\t\tDirectoryName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Directory(\"default\", DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cloudsso:Directory\n properties:\n directoryName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/directory:Directory example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Directory resource.\n\n\n\nFor information about Cloud SSO Directory and how to use it, see [What is Directory](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createdirectory).\n\n\u003e **NOTE:** Available since v1.135.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cloudsso.Directory(\"default\", {directoryName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.Directory(\"default\", directory_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.CloudSso.Directory(\"default\", new()\n {\n DirectoryName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cloudsso.NewDirectory(ctx, \"default\", \u0026cloudsso.DirectoryArgs{\n\t\t\tDirectoryName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Directory(\"default\", DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cloudsso:Directory\n properties:\n directoryName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/directory:Directory example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -124589,7 +126577,7 @@
}
},
"alicloud:cloudsso/group:Group": {
- "description": "Provides a Cloud SSO Group resource.\n\nFor information about Cloud SSO Group and how to use it, see [What is Group](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-creategroup).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:13,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\n_, err = cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/group:Group example \u003cdirectory_id\u003e:\u003cgroup_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO Group resource.\n\nFor information about Cloud SSO Group and how to use it, see [What is Group](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-creategroup).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:13,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\n_, err = cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/group:Group example \u003cdirectory_id\u003e:\u003cgroup_id\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -124657,7 +126645,7 @@
}
},
"alicloud:cloudsso/scimServerCredential:ScimServerCredential": {
- "description": "Provides a Cloud SSO SCIM Server Credential resource.\n\nFor information about Cloud SSO SCIM Server Credential and how to use it, see [What is Cloud SSO SCIM Server Credential](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createscimservercredential).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultScimServerCredential = new alicloud.cloudsso.ScimServerCredential(\"default\", {\n directoryId: _default.then(_default =\u003e _default.directories?.[0]?.id),\n credentialSecretFile: \"./credential_secret_file.txt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_scim_server_credential = alicloud.cloudsso.ScimServerCredential(\"default\",\n directory_id=default.directories[0].id,\n credential_secret_file=\"./credential_secret_file.txt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultScimServerCredential = new AliCloud.CloudSso.ScimServerCredential(\"default\", new()\n {\n DirectoryId = @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Directories[0]?.Id)),\n CredentialSecretFile = \"./credential_secret_file.txt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewScimServerCredential(ctx, \"default\", \u0026cloudsso.ScimServerCredentialArgs{\n\t\t\tDirectoryId: pulumi.String(_default.Directories[0].Id),\n\t\t\tCredentialSecretFile: pulumi.String(\"./credential_secret_file.txt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.ScimServerCredential;\nimport com.pulumi.alicloud.cloudsso.ScimServerCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultScimServerCredential = new ScimServerCredential(\"defaultScimServerCredential\", ScimServerCredentialArgs.builder()\n .directoryId(default_.directories()[0].id())\n .credentialSecretFile(\"./credential_secret_file.txt\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultScimServerCredential:\n type: alicloud:cloudsso:ScimServerCredential\n name: default\n properties:\n directoryId: ${default.directories[0].id}\n credentialSecretFile: ./credential_secret_file.txt\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudsso:getDirectories\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO SCIM Server Credential can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/scimServerCredential:ScimServerCredential example \u003cdirectory_id\u003e:\u003ccredential_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO SCIM Server Credential resource.\n\nFor information about Cloud SSO SCIM Server Credential and how to use it, see [What is Cloud SSO SCIM Server Credential](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createscimservercredential).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultScimServerCredential = new alicloud.cloudsso.ScimServerCredential(\"default\", {\n directoryId: _default.then(_default =\u003e _default.directories?.[0]?.id),\n credentialSecretFile: \"./credential_secret_file.txt\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_scim_server_credential = alicloud.cloudsso.ScimServerCredential(\"default\",\n directory_id=default.directories[0].id,\n credential_secret_file=\"./credential_secret_file.txt\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultScimServerCredential = new AliCloud.CloudSso.ScimServerCredential(\"default\", new()\n {\n DirectoryId = @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Directories[0]?.Id)),\n CredentialSecretFile = \"./credential_secret_file.txt\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudsso.NewScimServerCredential(ctx, \"default\", \u0026cloudsso.ScimServerCredentialArgs{\n\t\t\tDirectoryId: pulumi.String(_default.Directories[0].Id),\n\t\t\tCredentialSecretFile: pulumi.String(\"./credential_secret_file.txt\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.alicloud.cloudsso.ScimServerCredential;\nimport com.pulumi.alicloud.cloudsso.ScimServerCredentialArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultScimServerCredential = new ScimServerCredential(\"defaultScimServerCredential\", ScimServerCredentialArgs.builder()\n .directoryId(default_.directories()[0].id())\n .credentialSecretFile(\"./credential_secret_file.txt\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultScimServerCredential:\n type: alicloud:cloudsso:ScimServerCredential\n name: default\n properties:\n directoryId: ${default.directories[0].id}\n credentialSecretFile: ./credential_secret_file.txt\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudsso:getDirectories\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO SCIM Server Credential can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/scimServerCredential:ScimServerCredential example \u003cdirectory_id\u003e:\u003ccredential_id\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -124753,7 +126741,7 @@
}
},
"alicloud:cloudsso/user:User": {
- "description": "Provides a Cloud Sso User resource.\n\n\n\nFor information about Cloud Sso User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createuser).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:26,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\n_, err = cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Sso User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/user:User example \u003cdirectory_id\u003e:\u003cuser_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Sso User resource.\n\n\n\nFor information about Cloud Sso User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-createuser).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:26,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\n_, err = cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Sso User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/user:User example \u003cdirectory_id\u003e:\u003cuser_id\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -124942,7 +126930,7 @@
}
},
"alicloud:cloudsso/userAttachment:UserAttachment": {
- "description": "Provides a Cloud SSO User Attachment resource.\n\nFor information about Cloud SSO User Attachment and how to use it, see [What is User Attachment](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-addusertogroup).\n\n\u003e **NOTE:** Available since v1.141.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\nconst defaultUserAttachment = new alicloud.cloudsso.UserAttachment(\"default\", {\n directoryId: directoryId,\n userId: defaultUser.userId,\n groupId: defaultGroup.groupId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\ndefault_user_attachment = alicloud.cloudsso.UserAttachment(\"default\",\n directory_id=directory_id,\n user_id=default_user.user_id,\n group_id=default_group.group_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n var defaultUserAttachment = new AliCloud.CloudSso.UserAttachment(\"default\", new()\n {\n DirectoryId = directoryId,\n UserId = defaultUser.UserId,\n GroupId = defaultGroup.GroupId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:40,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultGroup, err := cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUserAttachment(ctx, \"default\", \u0026cloudsso.UserAttachmentArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserId: defaultUser.UserId,\nGroupId: defaultGroup.GroupId,\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.alicloud.cloudsso.UserAttachment;\nimport com.pulumi.alicloud.cloudsso.UserAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n var defaultUserAttachment = new UserAttachment(\"defaultUserAttachment\", UserAttachmentArgs.builder()\n .directoryId(directoryId)\n .userId(defaultUser.userId())\n .groupId(defaultGroup.groupId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO User Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/userAttachment:UserAttachment example \u003cdirectory_id\u003e:\u003cgroup_id\u003e:\u003cuser_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO User Attachment resource.\n\nFor information about Cloud SSO User Attachment and how to use it, see [What is User Attachment](https://www.alibabacloud.com/help/en/cloudsso/latest/api-cloudsso-2021-05-15-addusertogroup).\n\n\u003e **NOTE:** Available since v1.141.0.\n\n\u003e **NOTE:** Cloud SSO Only Support `cn-shanghai` And `us-west-1` Region\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\n_default.then(_default =\u003e _default.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([_default.then(_default =\u003e _default.ids).length, _default, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, _default, invoke]) =\u003e length \u003e 0 ? _default.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\nconst defaultUserAttachment = new alicloud.cloudsso.UserAttachment(\"default\", {\n directoryId: directoryId,\n userId: defaultUser.userId,\n groupId: defaultGroup.groupId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default.ids).apply(lambda length: default.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\ndefault_user_attachment = alicloud.cloudsso.UserAttachment(\"default\",\n directory_id=directory_id,\n user_id=default_user.user_id,\n group_id=default_group.group_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c @default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(@default.Apply(@default =\u003e @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids)).Length, @default, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var @default = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? @default.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n var defaultUserAttachment = new AliCloud.CloudSso.UserAttachment(\"default\", new()\n {\n DirectoryId = directoryId,\n UserId = defaultUser.UserId,\n GroupId = defaultGroup.GroupId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(_default.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = _default.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:40,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(_default.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\ndefaultGroup, err := cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUserAttachment(ctx, \"default\", \u0026cloudsso.UserAttachmentArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserId: defaultUser.UserId,\nGroupId: defaultGroup.GroupId,\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.alicloud.cloudsso.UserAttachment;\nimport com.pulumi.alicloud.cloudsso.UserAttachmentArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = default_.ids().length().applyValue(_length -\u003e _length \u003e 0 ? default_.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n var defaultUserAttachment = new UserAttachment(\"defaultUserAttachment\", UserAttachmentArgs.builder()\n .directoryId(directoryId)\n .userId(defaultUser.userId())\n .groupId(defaultGroup.groupId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO User Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/userAttachment:UserAttachment example \u003cdirectory_id\u003e:\u003cgroup_id\u003e:\u003cuser_id\u003e\n```\n\n",
"properties": {
"directoryId": {
"type": "string",
@@ -125007,7 +126995,7 @@
}
},
"alicloud:cloudsso/userProvisioning:UserProvisioning": {
- "description": "Provides a Cloud SSO User Provisioning resource.\n\nRAM user synchronization.\n\nFor information about Cloud SSO User Provisioning and how to use it, see [What is User Provisioning](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/CreateUserProvisioning).\n\n\u003e **NOTE:** Available since v1.260.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetDirectories = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\ndefaultGetDirectories.then(defaultGetDirectories =\u003e defaultGetDirectories.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([defaultGetDirectories.then(defaultGetDirectories =\u003e defaultGetDirectories.ids).length, defaultGetDirectories, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, defaultGetDirectories, invoke]) =\u003e length \u003e 0 ? defaultGetDirectories.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\nconst defaultUserProvisioning = new alicloud.cloudsso.UserProvisioning(\"default\", {\n description: \"description\",\n principalId: defaultUser.userId,\n targetType: \"RD-Account\",\n deletionStrategy: \"Keep\",\n duplicationStrategy: \"KeepBoth\",\n principalType: \"User\",\n targetId: _default.then(_default =\u003e _default.id),\n directoryId: defaultUser.directoryId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_get_directories = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default_get_directories.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default_get_directories.ids).apply(lambda length: default_get_directories.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\ndefault_user_provisioning = alicloud.cloudsso.UserProvisioning(\"default\",\n description=\"description\",\n principal_id=default_user.user_id,\n target_type=\"RD-Account\",\n deletion_strategy=\"Keep\",\n duplication_strategy=\"KeepBoth\",\n principal_type=\"User\",\n target_id=default.id,\n directory_id=default_user.directory_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetDirectories = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids).Length, defaultGetDirectories, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var defaultGetDirectories = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n var defaultUserProvisioning = new AliCloud.CloudSso.UserProvisioning(\"default\", new()\n {\n Description = \"description\",\n PrincipalId = defaultUser.UserId,\n TargetType = \"RD-Account\",\n DeletionStrategy = \"Keep\",\n DuplicationStrategy = \"KeepBoth\",\n PrincipalType = \"User\",\n TargetId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n DirectoryId = defaultUser.DirectoryId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetAccount(ctx, map[string]interface{}{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetDirectories, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(defaultGetDirectories.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = defaultGetDirectories.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:47,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(defaultGetDirectories.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUserProvisioning(ctx, \"default\", \u0026cloudsso.UserProvisioningArgs{\nDescription: pulumi.String(\"description\"),\nPrincipalId: defaultUser.UserId,\nTargetType: pulumi.String(\"RD-Account\"),\nDeletionStrategy: pulumi.String(\"Keep\"),\nDuplicationStrategy: pulumi.String(\"KeepBoth\"),\nPrincipalType: pulumi.String(\"User\"),\nTargetId: pulumi.String(_default.Id),\nDirectoryId: defaultUser.DirectoryId,\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.alicloud.cloudsso.UserProvisioning;\nimport com.pulumi.alicloud.cloudsso.UserProvisioningArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetDirectories = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c defaultGetDirectories.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = defaultGetDirectories.ids().length().applyValue(_length -\u003e _length \u003e 0 ? defaultGetDirectories.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n var defaultUserProvisioning = new UserProvisioning(\"defaultUserProvisioning\", UserProvisioningArgs.builder()\n .description(\"description\")\n .principalId(defaultUser.userId())\n .targetType(\"RD-Account\")\n .deletionStrategy(\"Keep\")\n .duplicationStrategy(\"KeepBoth\")\n .principalType(\"User\")\n .targetId(default_.id())\n .directoryId(defaultUser.directoryId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud SSO User Provisioning can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/userProvisioning:UserProvisioning example \u003cdirectory_id\u003e:\u003cuser_provisioning_id\u003e\n```\n\n",
+ "description": "Provides a Cloud SSO User Provisioning resource.\n\nRAM user synchronization.\n\nFor information about Cloud SSO User Provisioning and how to use it, see [What is User Provisioning](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/CreateUserProvisioning).\n\n\u003e **NOTE:** Available since v1.260.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetDirectories = alicloud.cloudsso.getDirectories({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultDirectory: alicloud.cloudsso.Directory[] = [];\ndefaultGetDirectories.then(defaultGetDirectories =\u003e defaultGetDirectories.ids).length.apply(length =\u003e {\n for (const range = {value: 0}; range.value \u003c (length \u003e 0 ? 0 : 1); range.value++) {\n defaultDirectory.push(new alicloud.cloudsso.Directory(`default-${range.value}`, {directoryName: name}));\n }\n});\nconst directoryId = pulumi.all([defaultGetDirectories.then(defaultGetDirectories =\u003e defaultGetDirectories.ids).length, defaultGetDirectories, std.concat({\n input: [\n defaultDirectory.map(__item =\u003e __item.id),\n [\"\"],\n ],\n})]).apply(([length, defaultGetDirectories, invoke]) =\u003e length \u003e 0 ? defaultGetDirectories.ids?.[0] : invoke.result?.[0]);\nconst defaultUser = new alicloud.cloudsso.User(\"default\", {\n directoryId: directoryId,\n userName: `${name}-${defaultInteger.result}`,\n});\nconst defaultGroup = new alicloud.cloudsso.Group(\"default\", {\n directoryId: directoryId,\n groupName: name,\n description: name,\n});\nconst defaultUserProvisioning = new alicloud.cloudsso.UserProvisioning(\"default\", {\n description: \"description\",\n principalId: defaultUser.userId,\n targetType: \"RD-Account\",\n deletionStrategy: \"Keep\",\n duplicationStrategy: \"KeepBoth\",\n principalType: \"User\",\n targetId: _default.then(_default =\u003e _default.id),\n directoryId: defaultUser.directoryId,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_get_directories = alicloud.cloudsso.get_directories()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_directory = []\ndef create_default(range_body):\n for range in [{\"value\": i} for i in range(0, range_body)]:\n default_directory.append(alicloud.cloudsso.Directory(f\"default-{range['value']}\", directory_name=name))\n\nlen(default_get_directories.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] \u003e 0 else 1))\ndirectory_id = len(default_get_directories.ids).apply(lambda length: default_get_directories.ids[0] if length \u003e 0 else std.concat(input=[\n [__item.id for __item in default_directory],\n [\"\"],\n]).result[0])\ndefault_user = alicloud.cloudsso.User(\"default\",\n directory_id=directory_id,\n user_name=f\"{name}-{default_integer['result']}\")\ndefault_group = alicloud.cloudsso.Group(\"default\",\n directory_id=directory_id,\n group_name=name,\n description=name)\ndefault_user_provisioning = alicloud.cloudsso.UserProvisioning(\"default\",\n description=\"description\",\n principal_id=default_user.user_id,\n target_type=\"RD-Account\",\n deletion_strategy=\"Keep\",\n duplication_strategy=\"KeepBoth\",\n principal_type=\"User\",\n target_id=default.id,\n directory_id=default_user.directory_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetDirectories = AliCloud.CloudSso.GetDirectories.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultDirectory = new List\u003cAliCloud.CloudSso.Directory\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids).Length.Apply(length =\u003e length \u003e 0 ? 0 : 1); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultDirectory.Add(new AliCloud.CloudSso.Directory($\"default-{range.Value}\", new()\n {\n DirectoryName = name,\n }));\n }\n var directoryId = Output.Tuple(defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids).Length, defaultGetDirectories, Std.Concat.Invoke(new()\n {\n Input = new[]\n {\n defaultDirectory.Select(__item =\u003e __item.Id).ToList(),\n new[]\n {\n \"\",\n },\n },\n })).Apply(values =\u003e\n {\n var length = values.Item1;\n var defaultGetDirectories = values.Item2;\n var invoke = values.Item3;\n return length \u003e 0 ? defaultGetDirectories.Apply(getDirectoriesResult =\u003e getDirectoriesResult.Ids[0]) : invoke.Result[0];\n });\n\n var defaultUser = new AliCloud.CloudSso.User(\"default\", new()\n {\n DirectoryId = directoryId,\n UserName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultGroup = new AliCloud.CloudSso.Group(\"default\", new()\n {\n DirectoryId = directoryId,\n GroupName = name,\n Description = name,\n });\n\n var defaultUserProvisioning = new AliCloud.CloudSso.UserProvisioning(\"default\", new()\n {\n Description = \"description\",\n PrincipalId = defaultUser.UserId,\n TargetType = \"RD-Account\",\n DeletionStrategy = \"Keep\",\n DuplicationStrategy = \"KeepBoth\",\n PrincipalType = \"User\",\n TargetId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n DirectoryId = defaultUser.DirectoryId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudsso\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetAccount(ctx, map[string]interface{}{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetDirectories, err := cloudsso.GetDirectories(ctx, \u0026cloudsso.GetDirectoriesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\nvar tmp0 float64\nif length \u003e 0 {\ntmp0 = 0\n} else {\ntmp0 = 1\n}\nvar defaultDirectory []*cloudsso.Directory\nfor index := 0; index \u003c float64(len(defaultGetDirectories.Ids).ApplyT(func(length int) (float64, error) {\nreturn tmp0, nil\n}).(pulumi.Float64Output)); index++ {\n key0 := index\n _ := index\n__res, err := cloudsso.NewDirectory(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cloudsso.DirectoryArgs{\nDirectoryName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\ndefaultDirectory = append(defaultDirectory, __res)\n}\nvar tmp1 *interface{}\nif length \u003e 0 {\ntmp1 = defaultGetDirectories.Ids[0]\n} else {\ntmp1 = std.Concat(ctx, \u0026std.ConcatArgs{\nInput: pulumi.StringArrayArray{\n%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:47,12-34),\n[]string{\n\"\",\n},\n},\n}, nil).Result[0]\n}\ndirectoryId := len(defaultGetDirectories.Ids).ApplyT(func(length int) (*interface{}, error) {\nreturn \u0026tmp1, nil\n}).(pulumi.Interface{}PtrOutput)\ndefaultUser, err := cloudsso.NewUser(ctx, \"default\", \u0026cloudsso.UserArgs{\nDirectoryId: pulumi.Any(directoryId),\nUserName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewGroup(ctx, \"default\", \u0026cloudsso.GroupArgs{\nDirectoryId: pulumi.Any(directoryId),\nGroupName: pulumi.String(name),\nDescription: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = cloudsso.NewUserProvisioning(ctx, \"default\", \u0026cloudsso.UserProvisioningArgs{\nDescription: pulumi.String(\"description\"),\nPrincipalId: defaultUser.UserId,\nTargetType: pulumi.String(\"RD-Account\"),\nDeletionStrategy: pulumi.String(\"Keep\"),\nDuplicationStrategy: pulumi.String(\"KeepBoth\"),\nPrincipalType: pulumi.String(\"User\"),\nTargetId: pulumi.String(_default.Id),\nDirectoryId: defaultUser.DirectoryId,\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cloudsso.CloudssoFunctions;\nimport com.pulumi.alicloud.cloudsso.inputs.GetDirectoriesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudsso.Directory;\nimport com.pulumi.alicloud.cloudsso.DirectoryArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ConcatArgs;\nimport com.pulumi.alicloud.cloudsso.User;\nimport com.pulumi.alicloud.cloudsso.UserArgs;\nimport com.pulumi.alicloud.cloudsso.Group;\nimport com.pulumi.alicloud.cloudsso.GroupArgs;\nimport com.pulumi.alicloud.cloudsso.UserProvisioning;\nimport com.pulumi.alicloud.cloudsso.UserProvisioningArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetDirectories = CloudssoFunctions.getDirectories(GetDirectoriesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n for (var i = 0; i \u003c defaultGetDirectories.ids().length().applyValue(_length -\u003e _length \u003e 0 ? 0 : 1); i++) {\n new Directory(\"defaultDirectory-\" + i, DirectoryArgs.builder()\n .directoryName(name)\n .build());\n\n \n}\n final var directoryId = defaultGetDirectories.ids().length().applyValue(_length -\u003e _length \u003e 0 ? defaultGetDirectories.ids()[0] : StdFunctions.concat(ConcatArgs.builder()\n .input( \n defaultDirectory.stream().map(element -\u003e element.id()).collect(toList()),\n \"\")\n .build()).result()[0]);\n\n var defaultUser = new User(\"defaultUser\", UserArgs.builder()\n .directoryId(directoryId)\n .userName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultGroup = new Group(\"defaultGroup\", GroupArgs.builder()\n .directoryId(directoryId)\n .groupName(name)\n .description(name)\n .build());\n\n var defaultUserProvisioning = new UserProvisioning(\"defaultUserProvisioning\", UserProvisioningArgs.builder()\n .description(\"description\")\n .principalId(defaultUser.userId())\n .targetType(\"RD-Account\")\n .deletionStrategy(\"Keep\")\n .duplicationStrategy(\"KeepBoth\")\n .principalType(\"User\")\n .targetId(default_.id())\n .directoryId(defaultUser.directoryId())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud SSO User Provisioning can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudsso/userProvisioning:UserProvisioning example \u003cdirectory_id\u003e:\u003cuser_provisioning_id\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -125186,7 +127174,7 @@
}
},
"alicloud:cloudstoragegateway/expressSync:ExpressSync": {
- "description": "Provides a Cloud Storage Gateway Express Sync resource.\n\nFor information about Cloud Storage Gateway Express Sync and how to use it, see [What is Express Sync](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/xzpxo3).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultGetStocks = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: defaultGetStocks.then(defaultGetStocks =\u003e defaultGetStocks.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: true,\n pollingInterval: 4500,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\nconst defaultExpressSync = new alicloud.cloudstoragegateway.ExpressSync(\"default\", {\n bucketName: defaultGatewayFileShare.ossBucketName,\n bucketRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n description: name,\n expressSyncName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_get_stocks = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default_get_stocks.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=True,\n polling_interval=4500,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\ndefault_express_sync = alicloud.cloudstoragegateway.ExpressSync(\"default\",\n bucket_name=default_gateway_file_share.oss_bucket_name,\n bucket_region=default.regions[0].id,\n description=name,\n express_sync_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultGetStocks = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = defaultGetStocks.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = true,\n PollingInterval = 4500,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n var defaultExpressSync = new AliCloud.CloudStorageGateway.ExpressSync(\"default\", new()\n {\n BucketName = defaultGatewayFileShare.OssBucketName,\n BucketRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Description = name,\n ExpressSyncName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetStocks, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(defaultGetStocks.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayFileShare, err := cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(true),\n\t\t\tPollingInterval: pulumi.Int(4500),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewExpressSync(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncArgs{\n\t\t\tBucketName: defaultGatewayFileShare.OssBucketName,\n\t\t\tBucketRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tExpressSyncName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSync;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var defaultGetStocks = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(defaultGetStocks.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(true)\n .pollingInterval(4500)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n var defaultExpressSync = new ExpressSync(\"defaultExpressSync\", ExpressSyncArgs.builder()\n .bucketName(defaultGatewayFileShare.ossBucketName())\n .bucketRegion(default_.regions()[0].id())\n .description(name)\n .expressSyncName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${defaultGetStocks.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: true\n pollingInterval: 4500\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\n defaultExpressSync:\n type: alicloud:cloudstoragegateway:ExpressSync\n name: default\n properties:\n bucketName: ${defaultGatewayFileShare.ossBucketName}\n bucketRegion: ${default.regions[0].id}\n description: ${name}\n expressSyncName: ${name}-${defaultInteger.result}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetStocks:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Express Sync can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/expressSync:ExpressSync example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Express Sync resource.\n\nFor information about Cloud Storage Gateway Express Sync and how to use it, see [What is Express Sync](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/xzpxo3).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultGetStocks = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: defaultGetStocks.then(defaultGetStocks =\u003e defaultGetStocks.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: true,\n pollingInterval: 4500,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\nconst defaultExpressSync = new alicloud.cloudstoragegateway.ExpressSync(\"default\", {\n bucketName: defaultGatewayFileShare.ossBucketName,\n bucketRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n description: name,\n expressSyncName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_get_stocks = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default_get_stocks.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=True,\n polling_interval=4500,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\ndefault_express_sync = alicloud.cloudstoragegateway.ExpressSync(\"default\",\n bucket_name=default_gateway_file_share.oss_bucket_name,\n bucket_region=default.regions[0].id,\n description=name,\n express_sync_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultGetStocks = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = defaultGetStocks.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = true,\n PollingInterval = 4500,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n var defaultExpressSync = new AliCloud.CloudStorageGateway.ExpressSync(\"default\", new()\n {\n BucketName = defaultGatewayFileShare.OssBucketName,\n BucketRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Description = name,\n ExpressSyncName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetStocks, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(defaultGetStocks.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayFileShare, err := cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(true),\n\t\t\tPollingInterval: pulumi.Int(4500),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewExpressSync(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncArgs{\n\t\t\tBucketName: defaultGatewayFileShare.OssBucketName,\n\t\t\tBucketRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tExpressSyncName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSync;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var defaultGetStocks = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(defaultGetStocks.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(true)\n .pollingInterval(4500)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n var defaultExpressSync = new ExpressSync(\"defaultExpressSync\", ExpressSyncArgs.builder()\n .bucketName(defaultGatewayFileShare.ossBucketName())\n .bucketRegion(default_.regions()[0].id())\n .description(name)\n .expressSyncName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${defaultGetStocks.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: true\n pollingInterval: 4500\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\n defaultExpressSync:\n type: alicloud:cloudstoragegateway:ExpressSync\n name: default\n properties:\n bucketName: ${defaultGatewayFileShare.ossBucketName}\n bucketRegion: ${default.regions[0].id}\n description: ${name}\n expressSyncName: ${name}-${defaultInteger.result}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetStocks:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Express Sync can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/expressSync:ExpressSync example \u003cid\u003e\n```\n\n",
"properties": {
"bucketName": {
"type": "string",
@@ -125279,7 +127267,7 @@
}
},
"alicloud:cloudstoragegateway/expressSyncShareAttachment:ExpressSyncShareAttachment": {
- "description": "Provides a Cloud Storage Gateway Express Sync Share Attachment resource.\n\nFor information about Cloud Storage Gateway Express Sync Share Attachment and how to use it, see [What is Express Sync Share Attachment](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/addsharestoexpresssync).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultGetStocks = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: defaultGetStocks.then(defaultGetStocks =\u003e defaultGetStocks.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: false,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\nconst defaultExpressSync = new alicloud.cloudstoragegateway.ExpressSync(\"default\", {\n bucketName: defaultGatewayFileShare.ossBucketName,\n bucketRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n description: name,\n expressSyncName: `${name}-${defaultInteger.result}`,\n});\nconst defaultExpressSyncShareAttachment = new alicloud.cloudstoragegateway.ExpressSyncShareAttachment(\"default\", {\n expressSyncId: defaultExpressSync.id,\n gatewayId: defaultGateway.id,\n shareName: defaultGatewayFileShare.gatewayFileShareName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_get_stocks = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default_get_stocks.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=False,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\ndefault_express_sync = alicloud.cloudstoragegateway.ExpressSync(\"default\",\n bucket_name=default_gateway_file_share.oss_bucket_name,\n bucket_region=default.regions[0].id,\n description=name,\n express_sync_name=f\"{name}-{default_integer['result']}\")\ndefault_express_sync_share_attachment = alicloud.cloudstoragegateway.ExpressSyncShareAttachment(\"default\",\n express_sync_id=default_express_sync.id,\n gateway_id=default_gateway.id,\n share_name=default_gateway_file_share.gateway_file_share_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultGetStocks = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = defaultGetStocks.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = false,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n var defaultExpressSync = new AliCloud.CloudStorageGateway.ExpressSync(\"default\", new()\n {\n BucketName = defaultGatewayFileShare.OssBucketName,\n BucketRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Description = name,\n ExpressSyncName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultExpressSyncShareAttachment = new AliCloud.CloudStorageGateway.ExpressSyncShareAttachment(\"default\", new()\n {\n ExpressSyncId = defaultExpressSync.Id,\n GatewayId = defaultGateway.Id,\n ShareName = defaultGatewayFileShare.GatewayFileShareName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetStocks, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(defaultGetStocks.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayFileShare, err := cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(false),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultExpressSync, err := cloudstoragegateway.NewExpressSync(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncArgs{\n\t\t\tBucketName: defaultGatewayFileShare.OssBucketName,\n\t\t\tBucketRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tExpressSyncName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewExpressSyncShareAttachment(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncShareAttachmentArgs{\n\t\t\tExpressSyncId: defaultExpressSync.ID(),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tShareName: defaultGatewayFileShare.GatewayFileShareName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSync;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncShareAttachment;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncShareAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var defaultGetStocks = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(defaultGetStocks.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(false)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n var defaultExpressSync = new ExpressSync(\"defaultExpressSync\", ExpressSyncArgs.builder()\n .bucketName(defaultGatewayFileShare.ossBucketName())\n .bucketRegion(default_.regions()[0].id())\n .description(name)\n .expressSyncName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultExpressSyncShareAttachment = new ExpressSyncShareAttachment(\"defaultExpressSyncShareAttachment\", ExpressSyncShareAttachmentArgs.builder()\n .expressSyncId(defaultExpressSync.id())\n .gatewayId(defaultGateway.id())\n .shareName(defaultGatewayFileShare.gatewayFileShareName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${defaultGetStocks.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: false\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\n defaultExpressSync:\n type: alicloud:cloudstoragegateway:ExpressSync\n name: default\n properties:\n bucketName: ${defaultGatewayFileShare.ossBucketName}\n bucketRegion: ${default.regions[0].id}\n description: ${name}\n expressSyncName: ${name}-${defaultInteger.result}\n defaultExpressSyncShareAttachment:\n type: alicloud:cloudstoragegateway:ExpressSyncShareAttachment\n name: default\n properties:\n expressSyncId: ${defaultExpressSync.id}\n gatewayId: ${defaultGateway.id}\n shareName: ${defaultGatewayFileShare.gatewayFileShareName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetStocks:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Express Sync Share Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/expressSyncShareAttachment:ExpressSyncShareAttachment example \u003cexpress_sync_id\u003e:\u003cgateway_id\u003e:\u003cshare_name\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Express Sync Share Attachment resource.\n\nFor information about Cloud Storage Gateway Express Sync Share Attachment and how to use it, see [What is Express Sync Share Attachment](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/addsharestoexpresssync).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst defaultGetStocks = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: defaultGetStocks.then(defaultGetStocks =\u003e defaultGetStocks.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: false,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\nconst defaultExpressSync = new alicloud.cloudstoragegateway.ExpressSync(\"default\", {\n bucketName: defaultGatewayFileShare.ossBucketName,\n bucketRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n description: name,\n expressSyncName: `${name}-${defaultInteger.result}`,\n});\nconst defaultExpressSyncShareAttachment = new alicloud.cloudstoragegateway.ExpressSyncShareAttachment(\"default\", {\n expressSyncId: defaultExpressSync.id,\n gatewayId: defaultGateway.id,\n shareName: defaultGatewayFileShare.gatewayFileShareName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault_get_stocks = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default_get_stocks.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=False,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\ndefault_express_sync = alicloud.cloudstoragegateway.ExpressSync(\"default\",\n bucket_name=default_gateway_file_share.oss_bucket_name,\n bucket_region=default.regions[0].id,\n description=name,\n express_sync_name=f\"{name}-{default_integer['result']}\")\ndefault_express_sync_share_attachment = alicloud.cloudstoragegateway.ExpressSyncShareAttachment(\"default\",\n express_sync_id=default_express_sync.id,\n gateway_id=default_gateway.id,\n share_name=default_gateway_file_share.gateway_file_share_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var defaultGetStocks = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = defaultGetStocks.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = false,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n var defaultExpressSync = new AliCloud.CloudStorageGateway.ExpressSync(\"default\", new()\n {\n BucketName = defaultGatewayFileShare.OssBucketName,\n BucketRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Description = name,\n ExpressSyncName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultExpressSyncShareAttachment = new AliCloud.CloudStorageGateway.ExpressSyncShareAttachment(\"default\", new()\n {\n ExpressSyncId = defaultExpressSync.Id,\n GatewayId = defaultGateway.Id,\n ShareName = defaultGatewayFileShare.GatewayFileShareName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetStocks, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(defaultGetStocks.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayFileShare, err := cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(false),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultExpressSync, err := cloudstoragegateway.NewExpressSync(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncArgs{\n\t\t\tBucketName: defaultGatewayFileShare.OssBucketName,\n\t\t\tBucketRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tExpressSyncName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewExpressSyncShareAttachment(ctx, \"default\", \u0026cloudstoragegateway.ExpressSyncShareAttachmentArgs{\n\t\t\tExpressSyncId: defaultExpressSync.ID(),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tShareName: defaultGatewayFileShare.GatewayFileShareName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSync;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncShareAttachment;\nimport com.pulumi.alicloud.cloudstoragegateway.ExpressSyncShareAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var defaultGetStocks = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(defaultGetStocks.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(false)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n var defaultExpressSync = new ExpressSync(\"defaultExpressSync\", ExpressSyncArgs.builder()\n .bucketName(defaultGatewayFileShare.ossBucketName())\n .bucketRegion(default_.regions()[0].id())\n .description(name)\n .expressSyncName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultExpressSyncShareAttachment = new ExpressSyncShareAttachment(\"defaultExpressSyncShareAttachment\", ExpressSyncShareAttachmentArgs.builder()\n .expressSyncId(defaultExpressSync.id())\n .gatewayId(defaultGateway.id())\n .shareName(defaultGatewayFileShare.gatewayFileShareName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${defaultGetStocks.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: false\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\n defaultExpressSync:\n type: alicloud:cloudstoragegateway:ExpressSync\n name: default\n properties:\n bucketName: ${defaultGatewayFileShare.ossBucketName}\n bucketRegion: ${default.regions[0].id}\n description: ${name}\n expressSyncName: ${name}-${defaultInteger.result}\n defaultExpressSyncShareAttachment:\n type: alicloud:cloudstoragegateway:ExpressSyncShareAttachment\n name: default\n properties:\n expressSyncId: ${defaultExpressSync.id}\n gatewayId: ${defaultGateway.id}\n shareName: ${defaultGatewayFileShare.gatewayFileShareName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetStocks:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Express Sync Share Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/expressSyncShareAttachment:ExpressSyncShareAttachment example \u003cexpress_sync_id\u003e:\u003cgateway_id\u003e:\u003cshare_name\u003e\n```\n\n",
"properties": {
"expressSyncId": {
"type": "string",
@@ -125344,7 +127332,7 @@
}
},
"alicloud:cloudstoragegateway/gateway:Gateway": {
- "description": "Provides a Cloud Storage Gateway Gateway resource.\n\nFor information about Cloud Storage Gateway Gateway and how to use it, see [What is Gateway](https://www.alibabacloud.com/help/en/csg/developer-reference/api-mnz46x).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: `${name}-${defaultInteger.result}`});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n storageBundleId: defaultStorageBundle.id,\n type: \"File\",\n location: \"Cloud\",\n gatewayName: name,\n gatewayClass: \"Standard\",\n vswitchId: defaultSwitch.id,\n publicNetworkBandwidth: 50,\n paymentType: \"PayAsYouGo\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=f\"{name}-{default_integer['result']}\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n storage_bundle_id=default_storage_bundle.id,\n type=\"File\",\n location=\"Cloud\",\n gateway_name=name,\n gateway_class=\"Standard\",\n vswitch_id=default_switch.id,\n public_network_bandwidth=50,\n payment_type=\"PayAsYouGo\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n StorageBundleId = defaultStorageBundle.Id,\n Type = \"File\",\n Location = \"Cloud\",\n GatewayName = name,\n GatewayClass = \"Standard\",\n VswitchId = defaultSwitch.Id,\n PublicNetworkBandwidth = 50,\n PaymentType = \"PayAsYouGo\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.192.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(50),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .storageBundleId(defaultStorageBundle.id())\n .type(\"File\")\n .location(\"Cloud\")\n .gatewayName(name)\n .gatewayClass(\"Standard\")\n .vswitchId(defaultSwitch.id())\n .publicNetworkBandwidth(50)\n .paymentType(\"PayAsYouGo\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName: ${name}-${defaultInteger.result}\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 192.168.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.192.0/24\n zoneId: ${default.zones[0].id}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n storageBundleId: ${defaultStorageBundle.id}\n type: File\n location: Cloud\n gatewayName: ${name}\n gatewayClass: Standard\n vswitchId: ${defaultSwitch.id}\n publicNetworkBandwidth: 50\n paymentType: PayAsYouGo\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gateway:Gateway example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway resource.\n\nFor information about Cloud Storage Gateway Gateway and how to use it, see [What is Gateway](https://www.alibabacloud.com/help/en/csg/developer-reference/api-mnz46x).\n\n\u003e **NOTE:** Available since v1.132.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: `${name}-${defaultInteger.result}`});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n storageBundleId: defaultStorageBundle.id,\n type: \"File\",\n location: \"Cloud\",\n gatewayName: name,\n gatewayClass: \"Standard\",\n vswitchId: defaultSwitch.id,\n publicNetworkBandwidth: 50,\n paymentType: \"PayAsYouGo\",\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=f\"{name}-{default_integer['result']}\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n storage_bundle_id=default_storage_bundle.id,\n type=\"File\",\n location=\"Cloud\",\n gateway_name=name,\n gateway_class=\"Standard\",\n vswitch_id=default_switch.id,\n public_network_bandwidth=50,\n payment_type=\"PayAsYouGo\",\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n StorageBundleId = defaultStorageBundle.Id,\n Type = \"File\",\n Location = \"Cloud\",\n GatewayName = name,\n GatewayClass = \"Standard\",\n VswitchId = defaultSwitch.Id,\n PublicNetworkBandwidth = 50,\n PaymentType = \"PayAsYouGo\",\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.192.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(50),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .storageBundleId(defaultStorageBundle.id())\n .type(\"File\")\n .location(\"Cloud\")\n .gatewayName(name)\n .gatewayClass(\"Standard\")\n .vswitchId(defaultSwitch.id())\n .publicNetworkBandwidth(50)\n .paymentType(\"PayAsYouGo\")\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName: ${name}-${defaultInteger.result}\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 192.168.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.192.0/24\n zoneId: ${default.zones[0].id}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n storageBundleId: ${defaultStorageBundle.id}\n type: File\n location: Cloud\n gatewayName: ${name}\n gatewayClass: Standard\n vswitchId: ${defaultSwitch.id}\n publicNetworkBandwidth: 50\n paymentType: PayAsYouGo\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gateway:Gateway example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -125532,7 +127520,7 @@
}
},
"alicloud:cloudstoragegateway/gatewayBlockVolume:GatewayBlockVolume": {
- "description": "Provides a Cloud Storage Gateway Gateway Block Volume resource.\n\nFor information about Cloud Storage Gateway Gateway Block Volume and how to use it, see [What is Gateway Block Volume](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewayblockvolume).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"Iscsi\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayBlockVolume = new alicloud.cloudstoragegateway.GatewayBlockVolume(\"default\", {\n cacheMode: \"Cache\",\n chapEnabled: false,\n chunkSize: 8192,\n gatewayBlockVolumeName: \"example\",\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossBucketSsl: true,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"iSCSI\",\n size: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"Iscsi\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_block_volume = alicloud.cloudstoragegateway.GatewayBlockVolume(\"default\",\n cache_mode=\"Cache\",\n chap_enabled=False,\n chunk_size=8192,\n gateway_block_volume_name=\"example\",\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_bucket_ssl=True,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"iSCSI\",\n size=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"Iscsi\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayBlockVolume = new AliCloud.CloudStorageGateway.GatewayBlockVolume(\"default\", new()\n {\n CacheMode = \"Cache\",\n ChapEnabled = false,\n ChunkSize = 8192,\n GatewayBlockVolumeName = \"example\",\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssBucketSsl = true,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"iSCSI\",\n Size = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"Iscsi\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayBlockVolume(ctx, \"default\", \u0026cloudstoragegateway.GatewayBlockVolumeArgs{\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tChapEnabled: pulumi.Bool(false),\n\t\t\tChunkSize: pulumi.Int(8192),\n\t\t\tGatewayBlockVolumeName: pulumi.String(\"example\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssBucketSsl: pulumi.Bool(true),\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"iSCSI\"),\n\t\t\tSize: pulumi.Int(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayBlockVolume;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayBlockVolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"Iscsi\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayBlockVolume = new GatewayBlockVolume(\"defaultGatewayBlockVolume\", GatewayBlockVolumeArgs.builder()\n .cacheMode(\"Cache\")\n .chapEnabled(false)\n .chunkSize(8192)\n .gatewayBlockVolumeName(\"example\")\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossBucketSsl(true)\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"iSCSI\")\n .size(100)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: Iscsi\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayBlockVolume:\n type: alicloud:cloudstoragegateway:GatewayBlockVolume\n name: default\n properties:\n cacheMode: Cache\n chapEnabled: false\n chunkSize: '8192'\n gatewayBlockVolumeName: example\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossBucketSsl: true\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: iSCSI\n size: 100\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway Block Volume can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayBlockVolume:GatewayBlockVolume example \u003cgateway_id\u003e:\u003cindex_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway Block Volume resource.\n\nFor information about Cloud Storage Gateway Gateway Block Volume and how to use it, see [What is Gateway Block Volume](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewayblockvolume).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucketAcl = new alicloud.oss.BucketAcl(\"default\", {\n bucket: defaultBucket.bucket,\n acl: \"public-read-write\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"Iscsi\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayBlockVolume = new alicloud.cloudstoragegateway.GatewayBlockVolume(\"default\", {\n cacheMode: \"Cache\",\n chapEnabled: false,\n chunkSize: 8192,\n gatewayBlockVolumeName: \"example\",\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossBucketSsl: true,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"iSCSI\",\n size: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket_acl = alicloud.oss.BucketAcl(\"default\",\n bucket=default_bucket.bucket,\n acl=\"public-read-write\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"Iscsi\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_block_volume = alicloud.cloudstoragegateway.GatewayBlockVolume(\"default\",\n cache_mode=\"Cache\",\n chap_enabled=False,\n chunk_size=8192,\n gateway_block_volume_name=\"example\",\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_bucket_ssl=True,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"iSCSI\",\n size=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucketAcl = new AliCloud.Oss.BucketAcl(\"default\", new()\n {\n Bucket = defaultBucket.BucketName,\n Acl = \"public-read-write\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"Iscsi\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayBlockVolume = new AliCloud.CloudStorageGateway.GatewayBlockVolume(\"default\", new()\n {\n CacheMode = \"Cache\",\n ChapEnabled = false,\n ChunkSize = 8192,\n GatewayBlockVolumeName = \"example\",\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssBucketSsl = true,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"iSCSI\",\n Size = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = oss.NewBucketAcl(ctx, \"default\", \u0026oss.BucketAclArgs{\n\t\t\tBucket: defaultBucket.Bucket,\n\t\t\tAcl: pulumi.String(\"public-read-write\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"Iscsi\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayBlockVolume(ctx, \"default\", \u0026cloudstoragegateway.GatewayBlockVolumeArgs{\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tChapEnabled: pulumi.Bool(false),\n\t\t\tChunkSize: pulumi.Int(8192),\n\t\t\tGatewayBlockVolumeName: pulumi.String(\"example\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssBucketSsl: pulumi.Bool(true),\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"iSCSI\"),\n\t\t\tSize: pulumi.Int(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketAcl;\nimport com.pulumi.alicloud.oss.BucketAclArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayBlockVolume;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayBlockVolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucketAcl = new BucketAcl(\"defaultBucketAcl\", BucketAclArgs.builder()\n .bucket(defaultBucket.bucket())\n .acl(\"public-read-write\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"Iscsi\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayBlockVolume = new GatewayBlockVolume(\"defaultGatewayBlockVolume\", GatewayBlockVolumeArgs.builder()\n .cacheMode(\"Cache\")\n .chapEnabled(false)\n .chunkSize(8192)\n .gatewayBlockVolumeName(\"example\")\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossBucketSsl(true)\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"iSCSI\")\n .size(100)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucketAcl:\n type: alicloud:oss:BucketAcl\n name: default\n properties:\n bucket: ${defaultBucket.bucket}\n acl: public-read-write\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: Iscsi\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayBlockVolume:\n type: alicloud:cloudstoragegateway:GatewayBlockVolume\n name: default\n properties:\n cacheMode: Cache\n chapEnabled: false\n chunkSize: '8192'\n gatewayBlockVolumeName: example\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossBucketSsl: true\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: iSCSI\n size: 100\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway Block Volume can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayBlockVolume:GatewayBlockVolume example \u003cgateway_id\u003e:\u003cindex_id\u003e\n```\n\n",
"properties": {
"cacheMode": {
"type": "string",
@@ -125780,7 +127768,7 @@
}
},
"alicloud:cloudstoragegateway/gatewayCacheDisk:GatewayCacheDisk": {
- "description": "Provides a Cloud Storage Gateway Gateway Cache Disk resource.\n\nFor information about Cloud Storage Gateway Gateway Cache Disk and how to use it, see [What is Gateway Cache Disk](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaycachedisk).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway Cache Disk can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayCacheDisk:GatewayCacheDisk example \u003cgateway_id\u003e:\u003ccache_id\u003e:\u003clocal_file_path\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway Cache Disk resource.\n\nFor information about Cloud Storage Gateway Gateway Cache Disk and how to use it, see [What is Gateway Cache Disk](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaycachedisk).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway Cache Disk can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayCacheDisk:GatewayCacheDisk example \u003cgateway_id\u003e:\u003ccache_id\u003e:\u003clocal_file_path\u003e\n```\n\n",
"properties": {
"cacheDiskCategory": {
"type": "string",
@@ -125883,7 +127871,7 @@
}
},
"alicloud:cloudstoragegateway/gatewayFileShare:GatewayFileShare": {
- "description": "Provides a Cloud Storage Gateway Gateway File Share resource.\n\nFor information about Cloud Storage Gateway Gateway File Share and how to use it, see [What is Gateway File Share](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewayfileshare).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: true,\n pollingInterval: 4500,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=True,\n polling_interval=4500,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = true,\n PollingInterval = 4500,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(true),\n\t\t\tPollingInterval: pulumi.Int(4500),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(true)\n .pollingInterval(4500)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: true\n pollingInterval: 4500\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway File Share can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayFileShare:GatewayFileShare example \u003cgateway_id\u003e:\u003cindex_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway File Share resource.\n\nFor information about Cloud Storage Gateway Gateway File Share and how to use it, see [What is Gateway File Share](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewayfileshare).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.cloudstoragegateway.getStocks({\n gatewayClass: \"Standard\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.stocks?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: true,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayCacheDisk = new alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\", {\n cacheDiskCategory: \"cloud_efficiency\",\n gatewayId: defaultGateway.id,\n cacheDiskSizeInGb: 50,\n});\nconst defaultGatewayFileShare = new alicloud.cloudstoragegateway.GatewayFileShare(\"default\", {\n gatewayFileShareName: name,\n gatewayId: defaultGateway.id,\n localPath: defaultGatewayCacheDisk.localFilePath,\n ossBucketName: defaultBucket.bucket,\n ossEndpoint: defaultBucket.extranetEndpoint,\n protocol: \"NFS\",\n remoteSync: true,\n pollingInterval: 4500,\n feLimit: 0,\n backendLimit: 0,\n cacheMode: \"Cache\",\n squash: \"none\",\n lagPeriod: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.cloudstoragegateway.get_stocks(gateway_class=\"Standard\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.stocks[0].zone_id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=True,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_cache_disk = alicloud.cloudstoragegateway.GatewayCacheDisk(\"default\",\n cache_disk_category=\"cloud_efficiency\",\n gateway_id=default_gateway.id,\n cache_disk_size_in_gb=50)\ndefault_gateway_file_share = alicloud.cloudstoragegateway.GatewayFileShare(\"default\",\n gateway_file_share_name=name,\n gateway_id=default_gateway.id,\n local_path=default_gateway_cache_disk.local_file_path,\n oss_bucket_name=default_bucket.bucket,\n oss_endpoint=default_bucket.extranet_endpoint,\n protocol=\"NFS\",\n remote_sync=True,\n polling_interval=4500,\n fe_limit=0,\n backend_limit=0,\n cache_mode=\"Cache\",\n squash=\"none\",\n lag_period=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.CloudStorageGateway.GetStocks.Invoke(new()\n {\n GatewayClass = \"Standard\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getStocksResult =\u003e getStocksResult.Stocks[0]?.ZoneId)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = true,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayCacheDisk = new AliCloud.CloudStorageGateway.GatewayCacheDisk(\"default\", new()\n {\n CacheDiskCategory = \"cloud_efficiency\",\n GatewayId = defaultGateway.Id,\n CacheDiskSizeInGb = 50,\n });\n\n var defaultGatewayFileShare = new AliCloud.CloudStorageGateway.GatewayFileShare(\"default\", new()\n {\n GatewayFileShareName = name,\n GatewayId = defaultGateway.Id,\n LocalPath = defaultGatewayCacheDisk.LocalFilePath,\n OssBucketName = defaultBucket.BucketName,\n OssEndpoint = defaultBucket.ExtranetEndpoint,\n Protocol = \"NFS\",\n RemoteSync = true,\n PollingInterval = 4500,\n FeLimit = 0,\n BackendLimit = 0,\n CacheMode = \"Cache\",\n Squash = \"none\",\n LagPeriod = 5,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.String(invokeSubstr1.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := cloudstoragegateway.GetStocks(ctx, \u0026cloudstoragegateway.GetStocksArgs{\n\t\t\tGatewayClass: pulumi.StringRef(\"Standard\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Stocks[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(true),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGatewayCacheDisk, err := cloudstoragegateway.NewGatewayCacheDisk(ctx, \"default\", \u0026cloudstoragegateway.GatewayCacheDiskArgs{\n\t\t\tCacheDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tCacheDiskSizeInGb: pulumi.Int(50),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayFileShare(ctx, \"default\", \u0026cloudstoragegateway.GatewayFileShareArgs{\n\t\t\tGatewayFileShareName: pulumi.String(name),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tLocalPath: defaultGatewayCacheDisk.LocalFilePath,\n\t\t\tOssBucketName: defaultBucket.Bucket,\n\t\t\tOssEndpoint: defaultBucket.ExtranetEndpoint,\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tRemoteSync: pulumi.Bool(true),\n\t\t\tPollingInterval: pulumi.Int(4500),\n\t\t\tFeLimit: pulumi.Int(0),\n\t\t\tBackendLimit: pulumi.Int(0),\n\t\t\tCacheMode: pulumi.String(\"Cache\"),\n\t\t\tSquash: pulumi.String(\"none\"),\n\t\t\tLagPeriod: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.CloudstoragegatewayFunctions;\nimport com.pulumi.alicloud.cloudstoragegateway.inputs.GetStocksArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDisk;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayCacheDiskArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShare;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayFileShareArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = CloudstoragegatewayFunctions.getStocks(GetStocksArgs.builder()\n .gatewayClass(\"Standard\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.stocks()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(true)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayCacheDisk = new GatewayCacheDisk(\"defaultGatewayCacheDisk\", GatewayCacheDiskArgs.builder()\n .cacheDiskCategory(\"cloud_efficiency\")\n .gatewayId(defaultGateway.id())\n .cacheDiskSizeInGb(50)\n .build());\n\n var defaultGatewayFileShare = new GatewayFileShare(\"defaultGatewayFileShare\", GatewayFileShareArgs.builder()\n .gatewayFileShareName(name)\n .gatewayId(defaultGateway.id())\n .localPath(defaultGatewayCacheDisk.localFilePath())\n .ossBucketName(defaultBucket.bucket())\n .ossEndpoint(defaultBucket.extranetEndpoint())\n .protocol(\"NFS\")\n .remoteSync(true)\n .pollingInterval(4500)\n .feLimit(0)\n .backendLimit(0)\n .cacheMode(\"Cache\")\n .squash(\"none\")\n .lagPeriod(5)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.stocks[0].zoneId}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: true\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayCacheDisk:\n type: alicloud:cloudstoragegateway:GatewayCacheDisk\n name: default\n properties:\n cacheDiskCategory: cloud_efficiency\n gatewayId: ${defaultGateway.id}\n cacheDiskSizeInGb: 50\n defaultGatewayFileShare:\n type: alicloud:cloudstoragegateway:GatewayFileShare\n name: default\n properties:\n gatewayFileShareName: ${name}\n gatewayId: ${defaultGateway.id}\n localPath: ${defaultGatewayCacheDisk.localFilePath}\n ossBucketName: ${defaultBucket.bucket}\n ossEndpoint: ${defaultBucket.extranetEndpoint}\n protocol: NFS\n remoteSync: true\n pollingInterval: 4500\n feLimit: 0\n backendLimit: 0\n cacheMode: Cache\n squash: none\n lagPeriod: 5\nvariables:\n default:\n fn::invoke:\n function: alicloud:cloudstoragegateway:getStocks\n arguments:\n gatewayClass: Standard\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway File Share can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayFileShare:GatewayFileShare example \u003cgateway_id\u003e:\u003cindex_id\u003e\n```\n\n",
"properties": {
"accessBasedEnumeration": {
"type": "boolean",
@@ -126363,7 +128351,7 @@
}
},
"alicloud:cloudstoragegateway/gatewayLogging:GatewayLogging": {
- "description": "Provides a Cloud Storage Gateway Gateway Logging resource.\n\nFor information about Cloud Storage Gateway Gateway Logging and how to use it, see [What is Gateway Logging](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaylogging).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n }).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n })).then(invoke =\u003e invoke.result),\n description: \"terraform-example\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: false,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayLogging = new alicloud.cloudstoragegateway.GatewayLogging(\"default\", {\n gatewayId: defaultGateway.id,\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_project = alicloud.log.Project(\"default\",\n project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result,\n description=\"terraform-example\")\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=False,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_logging = alicloud.cloudstoragegateway.GatewayLogging(\"default\",\n gateway_id=default_gateway.id,\n sls_logstore=default_store.logstore_name,\n sls_project=default_project.project_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n Description = \"terraform-example\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = false,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayLogging = new AliCloud.CloudStorageGateway.GatewayLogging(\"default\", new()\n {\n GatewayId = defaultGateway.Id,\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr1.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(false),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayLogging(ctx, \"default\", \u0026cloudstoragegateway.GatewayLoggingArgs{\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayLogging;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayLoggingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .description(\"terraform-example\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(false)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayLogging = new GatewayLogging(\"defaultGatewayLogging\", GatewayLoggingArgs.builder()\n .gatewayId(defaultGateway.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n description: terraform-example\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: false\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayLogging:\n type: alicloud:cloudstoragegateway:GatewayLogging\n name: default\n properties:\n gatewayId: ${defaultGateway.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway Logging can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayLogging:GatewayLogging example \u003cgateway_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway Logging resource.\n\nFor information about Cloud Storage Gateway Gateway Logging and how to use it, see [What is Gateway Logging](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaylogging).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultProject = new alicloud.log.Project(\"default\", {\n projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n }).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n })).then(invoke =\u003e invoke.result),\n description: \"terraform-example\",\n});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: false,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewayLogging = new alicloud.cloudstoragegateway.GatewayLogging(\"default\", {\n gatewayId: defaultGateway.id,\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_project = alicloud.log.Project(\"default\",\n project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result,\n description=\"terraform-example\")\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=False,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_logging = alicloud.cloudstoragegateway.GatewayLogging(\"default\",\n gateway_id=default_gateway.id,\n sls_logstore=default_store.logstore_name,\n sls_project=default_project.project_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n Description = \"terraform-example\",\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = false,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewayLogging = new AliCloud.CloudStorageGateway.GatewayLogging(\"default\", new()\n {\n GatewayId = defaultGateway.Id,\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr1.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(false),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewayLogging(ctx, \"default\", \u0026cloudstoragegateway.GatewayLoggingArgs{\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayLogging;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayLoggingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .description(\"terraform-example\")\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(false)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewayLogging = new GatewayLogging(\"defaultGatewayLogging\", GatewayLoggingArgs.builder()\n .gatewayId(defaultGateway.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n description: terraform-example\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: false\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewayLogging:\n type: alicloud:cloudstoragegateway:GatewayLogging\n name: default\n properties:\n gatewayId: ${defaultGateway.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway Logging can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewayLogging:GatewayLogging example \u003cgateway_id\u003e\n```\n\n",
"properties": {
"gatewayId": {
"type": "string",
@@ -126441,7 +128429,7 @@
}
},
"alicloud:cloudstoragegateway/gatewaySmbUser:GatewaySmbUser": {
- "description": "Provides a Cloud Storage Gateway Gateway SMB User resource.\n\nFor information about Cloud Storage Gateway Gateway SMB User and how to use it, see [What is Gateway SMB User](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaysmbuser).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: false,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewaySmbUser = new alicloud.cloudstoragegateway.GatewaySmbUser(\"default\", {\n username: \"example_username\",\n password: \"password\",\n gatewayId: defaultGateway.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=False,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_smb_user = alicloud.cloudstoragegateway.GatewaySmbUser(\"default\",\n username=\"example_username\",\n password=\"password\",\n gateway_id=default_gateway.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = false,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewaySmbUser = new AliCloud.CloudStorageGateway.GatewaySmbUser(\"default\", new()\n {\n Username = \"example_username\",\n Password = \"password\",\n GatewayId = defaultGateway.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(false),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewaySmbUser(ctx, \"default\", \u0026cloudstoragegateway.GatewaySmbUserArgs{\n\t\t\tUsername: pulumi.String(\"example_username\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewaySmbUser;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewaySmbUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(false)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewaySmbUser = new GatewaySmbUser(\"defaultGatewaySmbUser\", GatewaySmbUserArgs.builder()\n .username(\"example_username\")\n .password(\"password\")\n .gatewayId(defaultGateway.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: false\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewaySmbUser:\n type: alicloud:cloudstoragegateway:GatewaySmbUser\n name: default\n properties:\n username: example_username\n password: password\n gatewayId: ${defaultGateway.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Gateway SMB User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewaySmbUser:GatewaySmbUser example \u003cgateway_id\u003e:\u003cusername\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Gateway SMB User resource.\n\nFor information about Cloud Storage Gateway Gateway SMB User and how to use it, see [What is Gateway SMB User](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/creategatewaysmbuser).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultStorageBundle = new alicloud.cloudstoragegateway.StorageBundle(\"default\", {storageBundleName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/12\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/21\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultGateway = new alicloud.cloudstoragegateway.Gateway(\"default\", {\n gatewayName: name,\n description: name,\n gatewayClass: \"Standard\",\n type: \"File\",\n paymentType: \"PayAsYouGo\",\n vswitchId: defaultSwitch.id,\n releaseAfterExpiration: false,\n publicNetworkBandwidth: 40,\n storageBundleId: defaultStorageBundle.id,\n location: \"Cloud\",\n});\nconst defaultGatewaySmbUser = new alicloud.cloudstoragegateway.GatewaySmbUser(\"default\", {\n username: \"example_username\",\n password: \"password\",\n gatewayId: defaultGateway.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_storage_bundle = alicloud.cloudstoragegateway.StorageBundle(\"default\", storage_bundle_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/12\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/21\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_gateway = alicloud.cloudstoragegateway.Gateway(\"default\",\n gateway_name=name,\n description=name,\n gateway_class=\"Standard\",\n type=\"File\",\n payment_type=\"PayAsYouGo\",\n vswitch_id=default_switch.id,\n release_after_expiration=False,\n public_network_bandwidth=40,\n storage_bundle_id=default_storage_bundle.id,\n location=\"Cloud\")\ndefault_gateway_smb_user = alicloud.cloudstoragegateway.GatewaySmbUser(\"default\",\n username=\"example_username\",\n password=\"password\",\n gateway_id=default_gateway.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultStorageBundle = new AliCloud.CloudStorageGateway.StorageBundle(\"default\", new()\n {\n StorageBundleName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/21\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultGateway = new AliCloud.CloudStorageGateway.Gateway(\"default\", new()\n {\n GatewayName = name,\n Description = name,\n GatewayClass = \"Standard\",\n Type = \"File\",\n PaymentType = \"PayAsYouGo\",\n VswitchId = defaultSwitch.Id,\n ReleaseAfterExpiration = false,\n PublicNetworkBandwidth = 40,\n StorageBundleId = defaultStorageBundle.Id,\n Location = \"Cloud\",\n });\n\n var defaultGatewaySmbUser = new AliCloud.CloudStorageGateway.GatewaySmbUser(\"default\", new()\n {\n Username = \"example_username\",\n Password = \"password\",\n GatewayId = defaultGateway.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStorageBundle, err := cloudstoragegateway.NewStorageBundle(ctx, \"default\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/21\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGateway, err := cloudstoragegateway.NewGateway(ctx, \"default\", \u0026cloudstoragegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tGatewayClass: pulumi.String(\"Standard\"),\n\t\t\tType: pulumi.String(\"File\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tReleaseAfterExpiration: pulumi.Bool(false),\n\t\t\tPublicNetworkBandwidth: pulumi.Int(40),\n\t\t\tStorageBundleId: defaultStorageBundle.ID(),\n\t\t\tLocation: pulumi.String(\"Cloud\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudstoragegateway.NewGatewaySmbUser(ctx, \"default\", \u0026cloudstoragegateway.GatewaySmbUserArgs{\n\t\t\tUsername: pulumi.String(\"example_username\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tGatewayId: defaultGateway.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.Gateway;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewayArgs;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewaySmbUser;\nimport com.pulumi.alicloud.cloudstoragegateway.GatewaySmbUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultStorageBundle = new StorageBundle(\"defaultStorageBundle\", StorageBundleArgs.builder()\n .storageBundleName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/21\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultGateway = new Gateway(\"defaultGateway\", GatewayArgs.builder()\n .gatewayName(name)\n .description(name)\n .gatewayClass(\"Standard\")\n .type(\"File\")\n .paymentType(\"PayAsYouGo\")\n .vswitchId(defaultSwitch.id())\n .releaseAfterExpiration(false)\n .publicNetworkBandwidth(40)\n .storageBundleId(defaultStorageBundle.id())\n .location(\"Cloud\")\n .build());\n\n var defaultGatewaySmbUser = new GatewaySmbUser(\"defaultGatewaySmbUser\", GatewaySmbUserArgs.builder()\n .username(\"example_username\")\n .password(\"password\")\n .gatewayId(defaultGateway.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultStorageBundle:\n type: alicloud:cloudstoragegateway:StorageBundle\n name: default\n properties:\n storageBundleName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/12\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/21\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultGateway:\n type: alicloud:cloudstoragegateway:Gateway\n name: default\n properties:\n gatewayName: ${name}\n description: ${name}\n gatewayClass: Standard\n type: File\n paymentType: PayAsYouGo\n vswitchId: ${defaultSwitch.id}\n releaseAfterExpiration: false\n publicNetworkBandwidth: 40\n storageBundleId: ${defaultStorageBundle.id}\n location: Cloud\n defaultGatewaySmbUser:\n type: alicloud:cloudstoragegateway:GatewaySmbUser\n name: default\n properties:\n username: example_username\n password: password\n gatewayId: ${defaultGateway.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Gateway SMB User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/gatewaySmbUser:GatewaySmbUser example \u003cgateway_id\u003e:\u003cusername\u003e\n```\n\n",
"properties": {
"gatewayId": {
"type": "string",
@@ -126509,7 +128497,7 @@
}
},
"alicloud:cloudstoragegateway/storageBundle:StorageBundle": {
- "description": "Provides a Cloud Storage Gateway Storage Bundle resource.\n\nFor information about Cloud Storage Gateway Storage Bundle and how to use it, see [What is Storage Bundle](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/createstoragebundle).\n\n\u003e **NOTE:** Available since v1.116.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cloudstoragegateway.StorageBundle(\"example\", {storageBundleName: \"example_value\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cloudstoragegateway.StorageBundle(\"example\", storage_bundle_name=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.CloudStorageGateway.StorageBundle(\"example\", new()\n {\n StorageBundleName = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudstoragegateway.NewStorageBundle(ctx, \"example\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new StorageBundle(\"example\", StorageBundleArgs.builder()\n .storageBundleName(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cloudstoragegateway:StorageBundle\n properties:\n storageBundleName: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Storage Gateway Storage Bundle can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/storageBundle:StorageBundle example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Storage Gateway Storage Bundle resource.\n\nFor information about Cloud Storage Gateway Storage Bundle and how to use it, see [What is Storage Bundle](https://www.alibabacloud.com/help/en/cloud-storage-gateway/latest/createstoragebundle).\n\n\u003e **NOTE:** Available since v1.116.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cloudstoragegateway.StorageBundle(\"example\", {storageBundleName: \"example_value\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cloudstoragegateway.StorageBundle(\"example\", storage_bundle_name=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.CloudStorageGateway.StorageBundle(\"example\", new()\n {\n StorageBundleName = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudstoragegateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudstoragegateway.NewStorageBundle(ctx, \"example\", \u0026cloudstoragegateway.StorageBundleArgs{\n\t\t\tStorageBundleName: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundle;\nimport com.pulumi.alicloud.cloudstoragegateway.StorageBundleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new StorageBundle(\"example\", StorageBundleArgs.builder()\n .storageBundleName(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cloudstoragegateway:StorageBundle\n properties:\n storageBundleName: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Storage Gateway Storage Bundle can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cloudstoragegateway/storageBundle:StorageBundle example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -126552,7 +128540,7 @@
}
},
"alicloud:cms/alarm:Alarm": {
- "description": "Provides a Cloud Monitor Service Alarm resource.\n\nFor information about Cloud Monitor Service Alarm and how to use it, see [What is Alarm](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putresourcemetricrule).\n\n\u003e **NOTE:** Available since v1.9.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultAlarm = new alicloud.cms.Alarm(\"default\", {\n name: name,\n project: \"acs_ecs_dashboard\",\n metric: \"disk_writebytes\",\n period: 900,\n contactGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n effectiveInterval: \"06:00-20:00\",\n metricDimensions: pulumi.interpolate` [\n {\n \\\"instanceId\\\": \\\"${defaultInstance.id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n`,\n escalationsCritical: {\n statistics: \"Average\",\n comparisonOperator: \"\u003c=\",\n threshold: \"35\",\n times: 2,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_alarm = alicloud.cms.Alarm(\"default\",\n name=name,\n project=\"acs_ecs_dashboard\",\n metric=\"disk_writebytes\",\n period=900,\n contact_groups=[default_alarm_contact_group.alarm_contact_group_name],\n effective_interval=\"06:00-20:00\",\n metric_dimensions=default_instance.id.apply(lambda id: f\"\"\" [\n {{\n \\\"instanceId\\\": \\\"{id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }}\n ]\n\"\"\"),\n escalations_critical={\n \"statistics\": \"Average\",\n \"comparison_operator\": \"\u003c=\",\n \"threshold\": \"35\",\n \"times\": 2,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultAlarm = new AliCloud.Cms.Alarm(\"default\", new()\n {\n Name = name,\n Project = \"acs_ecs_dashboard\",\n Metric = \"disk_writebytes\",\n Period = 900,\n ContactGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n EffectiveInterval = \"06:00-20:00\",\n MetricDimensions = defaultInstance.Id.Apply(id =\u003e @$\" [\n {{\n \\\"\"instanceId\\\"\": \\\"\"{id}\\\"\",\n \\\"\"device\\\"\": \\\"\"/dev/vda1\\\"\"\n }}\n ]\n\"),\n EscalationsCritical = new AliCloud.Cms.Inputs.AlarmEscalationsCriticalArgs\n {\n Statistics = \"Average\",\n ComparisonOperator = \"\u003c=\",\n Threshold = \"35\",\n Times = 2,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewAlarm(ctx, \"default\", \u0026cms.AlarmArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tProject: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tMetric: pulumi.String(\"disk_writebytes\"),\n\t\t\tPeriod: pulumi.Int(900),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tEffectiveInterval: pulumi.String(\"06:00-20:00\"),\n\t\t\tMetricDimensions: defaultInstance.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(` [\n {\n \\\"instanceId\\\": \\\"%v\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n`, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tEscalationsCritical: \u0026cms.AlarmEscalationsCriticalArgs{\n\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\tComparisonOperator: pulumi.String(\"\u003c=\"),\n\t\t\t\tThreshold: pulumi.String(\"35\"),\n\t\t\t\tTimes: pulumi.Int(2),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.Alarm;\nimport com.pulumi.alicloud.cms.AlarmArgs;\nimport com.pulumi.alicloud.cms.inputs.AlarmEscalationsCriticalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultAlarm = new Alarm(\"defaultAlarm\", AlarmArgs.builder()\n .name(name)\n .project(\"acs_ecs_dashboard\")\n .metric(\"disk_writebytes\")\n .period(900)\n .contactGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .effectiveInterval(\"06:00-20:00\")\n .metricDimensions(defaultInstance.id().applyValue(_id -\u003e \"\"\"\n [\n {\n \\\"instanceId\\\": \\\"%s\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n\", _id)))\n .escalationsCritical(AlarmEscalationsCriticalArgs.builder()\n .statistics(\"Average\")\n .comparisonOperator(\"\u003c=\")\n .threshold(\"35\")\n .times(2)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultAlarm:\n type: alicloud:cms:Alarm\n name: default\n properties:\n name: ${name}\n project: acs_ecs_dashboard\n metric: disk_writebytes\n period: 900\n contactGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n effectiveInterval: 06:00-20:00\n metricDimensions: |2\n [\n {\n \\\"instanceId\\\": \\\"${defaultInstance.id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n escalationsCritical:\n statistics: Average\n comparisonOperator: \u003c=\n threshold: 35\n times: 2\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n imageId: ${defaultGetImages.images[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Alarm can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarm:Alarm example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Alarm resource.\n\nFor information about Cloud Monitor Service Alarm and how to use it, see [What is Alarm](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putresourcemetricrule).\n\n\u003e **NOTE:** Available since v1.9.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultAlarm = new alicloud.cms.Alarm(\"default\", {\n name: name,\n project: \"acs_ecs_dashboard\",\n metric: \"disk_writebytes\",\n period: 900,\n contactGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n effectiveInterval: \"06:00-20:00\",\n metricDimensions: pulumi.interpolate` [\n {\n \\\"instanceId\\\": \\\"${defaultInstance.id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n`,\n escalationsCritical: {\n statistics: \"Average\",\n comparisonOperator: \"\u003c=\",\n threshold: \"35\",\n times: 2,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_alarm = alicloud.cms.Alarm(\"default\",\n name=name,\n project=\"acs_ecs_dashboard\",\n metric=\"disk_writebytes\",\n period=900,\n contact_groups=[default_alarm_contact_group.alarm_contact_group_name],\n effective_interval=\"06:00-20:00\",\n metric_dimensions=default_instance.id.apply(lambda id: f\"\"\" [\n {{\n \\\"instanceId\\\": \\\"{id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }}\n ]\n\"\"\"),\n escalations_critical={\n \"statistics\": \"Average\",\n \"comparison_operator\": \"\u003c=\",\n \"threshold\": \"35\",\n \"times\": 2,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultAlarm = new AliCloud.Cms.Alarm(\"default\", new()\n {\n Name = name,\n Project = \"acs_ecs_dashboard\",\n Metric = \"disk_writebytes\",\n Period = 900,\n ContactGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n EffectiveInterval = \"06:00-20:00\",\n MetricDimensions = defaultInstance.Id.Apply(id =\u003e @$\" [\n {{\n \\\"\"instanceId\\\"\": \\\"\"{id}\\\"\",\n \\\"\"device\\\"\": \\\"\"/dev/vda1\\\"\"\n }}\n ]\n\"),\n EscalationsCritical = new AliCloud.Cms.Inputs.AlarmEscalationsCriticalArgs\n {\n Statistics = \"Average\",\n ComparisonOperator = \"\u003c=\",\n Threshold = \"35\",\n Times = 2,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewAlarm(ctx, \"default\", \u0026cms.AlarmArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tProject: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tMetric: pulumi.String(\"disk_writebytes\"),\n\t\t\tPeriod: pulumi.Int(900),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tEffectiveInterval: pulumi.String(\"06:00-20:00\"),\n\t\t\tMetricDimensions: defaultInstance.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(` [\n {\n \\\"instanceId\\\": \\\"%v\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n`, id), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tEscalationsCritical: \u0026cms.AlarmEscalationsCriticalArgs{\n\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\tComparisonOperator: pulumi.String(\"\u003c=\"),\n\t\t\t\tThreshold: pulumi.String(\"35\"),\n\t\t\t\tTimes: pulumi.Int(2),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.Alarm;\nimport com.pulumi.alicloud.cms.AlarmArgs;\nimport com.pulumi.alicloud.cms.inputs.AlarmEscalationsCriticalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultAlarm = new Alarm(\"defaultAlarm\", AlarmArgs.builder()\n .name(name)\n .project(\"acs_ecs_dashboard\")\n .metric(\"disk_writebytes\")\n .period(900)\n .contactGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .effectiveInterval(\"06:00-20:00\")\n .metricDimensions(defaultInstance.id().applyValue(_id -\u003e \"\"\"\n [\n {\n \\\"instanceId\\\": \\\"%s\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n\", _id)))\n .escalationsCritical(AlarmEscalationsCriticalArgs.builder()\n .statistics(\"Average\")\n .comparisonOperator(\"\u003c=\")\n .threshold(\"35\")\n .times(2)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultAlarm:\n type: alicloud:cms:Alarm\n name: default\n properties:\n name: ${name}\n project: acs_ecs_dashboard\n metric: disk_writebytes\n period: 900\n contactGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n effectiveInterval: 06:00-20:00\n metricDimensions: |2\n [\n {\n \\\"instanceId\\\": \\\"${defaultInstance.id}\\\",\n \\\"device\\\": \\\"/dev/vda1\\\"\n }\n ]\n escalationsCritical:\n statistics: Average\n comparisonOperator: \u003c=\n threshold: 35\n times: 2\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n imageId: ${defaultGetImages.images[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Alarm can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarm:Alarm example \u003cid\u003e\n```\n\n",
"properties": {
"compositeExpression": {
"$ref": "#/types/alicloud:cms/AlarmCompositeExpression:AlarmCompositeExpression",
@@ -126890,7 +128878,7 @@
}
},
"alicloud:cms/alarmContact:AlarmContact": {
- "description": "Creates or modifies an alarm contact. For information about alarm contact and how to use it, see [What is alarm contact](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putcontact).\n\n\u003e **NOTE:** Available since v1.99.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \nconst example = new alicloud.cms.AlarmContact(\"example\", {\n alarmContactName: \"tf-example\",\n describe: \"For example\",\n channelsMail: \"terraform@test.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \nexample = alicloud.cms.AlarmContact(\"example\",\n alarm_contact_name=\"tf-example\",\n describe=\"For example\",\n channels_mail=\"terraform@test.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \n var example = new AliCloud.Cms.AlarmContact(\"example\", new()\n {\n AlarmContactName = \"tf-example\",\n Describe = \"For example\",\n ChannelsMail = \"terraform@test.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`.\n\t\t_, err := cms.NewAlarmContact(ctx, \"example\", \u0026cms.AlarmContactArgs{\n\t\t\tAlarmContactName: pulumi.String(\"tf-example\"),\n\t\t\tDescribe: pulumi.String(\"For example\"),\n\t\t\tChannelsMail: pulumi.String(\"terraform@test.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContact;\nimport com.pulumi.alicloud.cms.AlarmContactArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \n var example = new AlarmContact(\"example\", AlarmContactArgs.builder()\n .alarmContactName(\"tf-example\")\n .describe(\"For example\")\n .channelsMail(\"terraform@test.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`.\n example:\n type: alicloud:cms:AlarmContact\n properties:\n alarmContactName: tf-example\n describe: For example\n channelsMail: terraform@test.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlarm contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarmContact:AlarmContact example abc12345\n```\n\n",
+ "description": "Creates or modifies an alarm contact. For information about alarm contact and how to use it, see [What is alarm contact](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putcontact).\n\n\u003e **NOTE:** Available since v1.99.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \nconst example = new alicloud.cms.AlarmContact(\"example\", {\n alarmContactName: \"tf-example\",\n describe: \"For example\",\n channelsMail: \"terraform@test.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \nexample = alicloud.cms.AlarmContact(\"example\",\n alarm_contact_name=\"tf-example\",\n describe=\"For example\",\n channels_mail=\"terraform@test.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \n var example = new AliCloud.Cms.AlarmContact(\"example\", new()\n {\n AlarmContactName = \"tf-example\",\n Describe = \"For example\",\n ChannelsMail = \"terraform@test.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`.\n\t\t_, err := cms.NewAlarmContact(ctx, \"example\", \u0026cms.AlarmContactArgs{\n\t\t\tAlarmContactName: pulumi.String(\"tf-example\"),\n\t\t\tDescribe: pulumi.String(\"For example\"),\n\t\t\tChannelsMail: pulumi.String(\"terraform@test.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContact;\nimport com.pulumi.alicloud.cms.AlarmContactArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`. \n var example = new AlarmContact(\"example\", AlarmContactArgs.builder()\n .alarmContactName(\"tf-example\")\n .describe(\"For example\")\n .channelsMail(\"terraform@test.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # You need to activate the link before you can return to the alarm contact information, otherwise diff will appear in terraform. So please confirm the activation link as soon as possible. Besides, you can ignore the diff of the alarm contact information by `lifestyle`.\n example:\n type: alicloud:cms:AlarmContact\n properties:\n alarmContactName: tf-example\n describe: For example\n channelsMail: terraform@test.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlarm contact can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarmContact:AlarmContact example abc12345\n```\n\n",
"properties": {
"alarmContactName": {
"type": "string",
@@ -126997,7 +128985,7 @@
}
},
"alicloud:cms/alarmContactGroup:AlarmContactGroup": {
- "description": "Provides a CMS Alarm Contact Group resource.\n\nFor information about CMS Alarm Contact Group and how to use it, see [What is Alarm Contact Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putcontactgroup).\n\n\u003e **NOTE:** Available since v1.101.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.AlarmContactGroup(\"example\", {alarmContactGroupName: \"tf-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.AlarmContactGroup(\"example\", alarm_contact_group_name=\"tf-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.AlarmContactGroup(\"example\", new()\n {\n AlarmContactGroupName = \"tf-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewAlarmContactGroup(ctx, \"example\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlarmContactGroup(\"example\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(\"tf-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: tf-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCMS Alarm Contact Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarmContactGroup:AlarmContactGroup example tf-testacc123\n```\n\n",
+ "description": "Provides a CMS Alarm Contact Group resource.\n\nFor information about CMS Alarm Contact Group and how to use it, see [What is Alarm Contact Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putcontactgroup).\n\n\u003e **NOTE:** Available since v1.101.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.AlarmContactGroup(\"example\", {alarmContactGroupName: \"tf-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.AlarmContactGroup(\"example\", alarm_contact_group_name=\"tf-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.AlarmContactGroup(\"example\", new()\n {\n AlarmContactGroupName = \"tf-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewAlarmContactGroup(ctx, \"example\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlarmContactGroup(\"example\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(\"tf-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: tf-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCMS Alarm Contact Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/alarmContactGroup:AlarmContactGroup example tf-testacc123\n```\n\n",
"properties": {
"alarmContactGroupName": {
"type": "string",
@@ -127076,7 +129064,7 @@
}
},
"alicloud:cms/dynamicTagGroup:DynamicTagGroup": {
- "description": "Provides a Cloud Monitor Service Dynamic Tag Group resource.\n\nFor information about Cloud Monitor Service Dynamic Tag Group and how to use it, see [What is Dynamic Tag Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createdynamictaggroup).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultDynamicTagGroup = new alicloud.cms.DynamicTagGroup(\"default\", {\n tagKey: name,\n contactGroupLists: [_default.id],\n matchExpresses: [{\n tagValue: name,\n tagValueMatchFunction: \"all\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_dynamic_tag_group = alicloud.cms.DynamicTagGroup(\"default\",\n tag_key=name,\n contact_group_lists=[default.id],\n match_expresses=[{\n \"tag_value\": name,\n \"tag_value_match_function\": \"all\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultDynamicTagGroup = new AliCloud.Cms.DynamicTagGroup(\"default\", new()\n {\n TagKey = name,\n ContactGroupLists = new[]\n {\n @default.Id,\n },\n MatchExpresses = new[]\n {\n new AliCloud.Cms.Inputs.DynamicTagGroupMatchExpressArgs\n {\n TagValue = name,\n TagValueMatchFunction = \"all\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewDynamicTagGroup(ctx, \"default\", \u0026cms.DynamicTagGroupArgs{\n\t\t\tTagKey: pulumi.String(name),\n\t\t\tContactGroupLists: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t\tMatchExpresses: cms.DynamicTagGroupMatchExpressArray{\n\t\t\t\t\u0026cms.DynamicTagGroupMatchExpressArgs{\n\t\t\t\t\tTagValue: pulumi.String(name),\n\t\t\t\t\tTagValueMatchFunction: pulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.DynamicTagGroup;\nimport com.pulumi.alicloud.cms.DynamicTagGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.DynamicTagGroupMatchExpressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultDynamicTagGroup = new DynamicTagGroup(\"defaultDynamicTagGroup\", DynamicTagGroupArgs.builder()\n .tagKey(name)\n .contactGroupLists(default_.id())\n .matchExpresses(DynamicTagGroupMatchExpressArgs.builder()\n .tagValue(name)\n .tagValueMatchFunction(\"all\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n defaultDynamicTagGroup:\n type: alicloud:cms:DynamicTagGroup\n name: default\n properties:\n tagKey: ${name}\n contactGroupLists:\n - ${default.id}\n matchExpresses:\n - tagValue: ${name}\n tagValueMatchFunction: all\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Dynamic Tag Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/dynamicTagGroup:DynamicTagGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Dynamic Tag Group resource.\n\nFor information about Cloud Monitor Service Dynamic Tag Group and how to use it, see [What is Dynamic Tag Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createdynamictaggroup).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultDynamicTagGroup = new alicloud.cms.DynamicTagGroup(\"default\", {\n tagKey: name,\n contactGroupLists: [_default.id],\n matchExpresses: [{\n tagValue: name,\n tagValueMatchFunction: \"all\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_dynamic_tag_group = alicloud.cms.DynamicTagGroup(\"default\",\n tag_key=name,\n contact_group_lists=[default.id],\n match_expresses=[{\n \"tag_value\": name,\n \"tag_value_match_function\": \"all\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultDynamicTagGroup = new AliCloud.Cms.DynamicTagGroup(\"default\", new()\n {\n TagKey = name,\n ContactGroupLists = new[]\n {\n @default.Id,\n },\n MatchExpresses = new[]\n {\n new AliCloud.Cms.Inputs.DynamicTagGroupMatchExpressArgs\n {\n TagValue = name,\n TagValueMatchFunction = \"all\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewDynamicTagGroup(ctx, \"default\", \u0026cms.DynamicTagGroupArgs{\n\t\t\tTagKey: pulumi.String(name),\n\t\t\tContactGroupLists: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t\tMatchExpresses: cms.DynamicTagGroupMatchExpressArray{\n\t\t\t\t\u0026cms.DynamicTagGroupMatchExpressArgs{\n\t\t\t\t\tTagValue: pulumi.String(name),\n\t\t\t\t\tTagValueMatchFunction: pulumi.String(\"all\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.DynamicTagGroup;\nimport com.pulumi.alicloud.cms.DynamicTagGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.DynamicTagGroupMatchExpressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultDynamicTagGroup = new DynamicTagGroup(\"defaultDynamicTagGroup\", DynamicTagGroupArgs.builder()\n .tagKey(name)\n .contactGroupLists(default_.id())\n .matchExpresses(DynamicTagGroupMatchExpressArgs.builder()\n .tagValue(name)\n .tagValueMatchFunction(\"all\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n defaultDynamicTagGroup:\n type: alicloud:cms:DynamicTagGroup\n name: default\n properties:\n tagKey: ${name}\n contactGroupLists:\n - ${default.id}\n matchExpresses:\n - tagValue: ${name}\n tagValueMatchFunction: all\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Dynamic Tag Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/dynamicTagGroup:DynamicTagGroup example \u003cid\u003e\n```\n\n",
"properties": {
"contactGroupLists": {
"type": "array",
@@ -127206,7 +129194,7 @@
}
},
"alicloud:cms/eventRule:EventRule": {
- "description": "Provides a Cloud Monitor Service Event Rule resource.\n\nFor information about Cloud Monitor Service Event Rule and how to use it, see [What is Event Rule](https://www.alibabacloud.com/help/en/cloudmonitor/latest/puteventrule).\n\n\u003e **NOTE:** Available since v1.182.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cms.MonitorGroup(\"default\", {monitorGroupName: name});\nconst example = new alicloud.cms.EventRule(\"example\", {\n ruleName: name,\n groupId: _default.id,\n silenceTime: 100,\n description: name,\n status: \"ENABLED\",\n eventPattern: {\n product: \"ecs\",\n sqlFilter: \"example_value\",\n nameLists: [\"example_value\"],\n levelLists: [\"CRITICAL\"],\n eventTypeLists: [\"StatusNotification\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cms.MonitorGroup(\"default\", monitor_group_name=name)\nexample = alicloud.cms.EventRule(\"example\",\n rule_name=name,\n group_id=default.id,\n silence_time=100,\n description=name,\n status=\"ENABLED\",\n event_pattern={\n \"product\": \"ecs\",\n \"sql_filter\": \"example_value\",\n \"name_lists\": [\"example_value\"],\n \"level_lists\": [\"CRITICAL\"],\n \"event_type_lists\": [\"StatusNotification\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n });\n\n var example = new AliCloud.Cms.EventRule(\"example\", new()\n {\n RuleName = name,\n GroupId = @default.Id,\n SilenceTime = 100,\n Description = name,\n Status = \"ENABLED\",\n EventPattern = new AliCloud.Cms.Inputs.EventRuleEventPatternArgs\n {\n Product = \"ecs\",\n SqlFilter = \"example_value\",\n NameLists = new[]\n {\n \"example_value\",\n },\n LevelLists = new[]\n {\n \"CRITICAL\",\n },\n EventTypeLists = new[]\n {\n \"StatusNotification\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewEventRule(ctx, \"example\", \u0026cms.EventRuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tGroupId: _default.ID(),\n\t\t\tSilenceTime: pulumi.Int(100),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tStatus: pulumi.String(\"ENABLED\"),\n\t\t\tEventPattern: \u0026cms.EventRuleEventPatternArgs{\n\t\t\t\tProduct: pulumi.String(\"ecs\"),\n\t\t\t\tSqlFilter: pulumi.String(\"example_value\"),\n\t\t\t\tNameLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"example_value\"),\n\t\t\t\t},\n\t\t\t\tLevelLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"CRITICAL\"),\n\t\t\t\t},\n\t\t\t\tEventTypeLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"StatusNotification\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cms.EventRule;\nimport com.pulumi.alicloud.cms.EventRuleArgs;\nimport com.pulumi.alicloud.cms.inputs.EventRuleEventPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new MonitorGroup(\"default\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .build());\n\n var example = new EventRule(\"example\", EventRuleArgs.builder()\n .ruleName(name)\n .groupId(default_.id())\n .silenceTime(100)\n .description(name)\n .status(\"ENABLED\")\n .eventPattern(EventRuleEventPatternArgs.builder()\n .product(\"ecs\")\n .sqlFilter(\"example_value\")\n .nameLists(\"example_value\")\n .levelLists(\"CRITICAL\")\n .eventTypeLists(\"StatusNotification\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cms:MonitorGroup\n properties:\n monitorGroupName: ${name}\n example:\n type: alicloud:cms:EventRule\n properties:\n ruleName: ${name}\n groupId: ${default.id}\n silenceTime: 100\n description: ${name}\n status: ENABLED\n eventPattern:\n product: ecs\n sqlFilter: example_value\n nameLists:\n - example_value\n levelLists:\n - CRITICAL\n eventTypeLists:\n - StatusNotification\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Event Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/eventRule:EventRule example \u003crule_name\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Event Rule resource.\n\nFor information about Cloud Monitor Service Event Rule and how to use it, see [What is Event Rule](https://www.alibabacloud.com/help/en/cloudmonitor/latest/puteventrule).\n\n\u003e **NOTE:** Available since v1.182.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cms.MonitorGroup(\"default\", {monitorGroupName: name});\nconst example = new alicloud.cms.EventRule(\"example\", {\n ruleName: name,\n groupId: _default.id,\n silenceTime: 100,\n description: name,\n status: \"ENABLED\",\n eventPattern: {\n product: \"ecs\",\n sqlFilter: \"example_value\",\n nameLists: [\"example_value\"],\n levelLists: [\"CRITICAL\"],\n eventTypeLists: [\"StatusNotification\"],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cms.MonitorGroup(\"default\", monitor_group_name=name)\nexample = alicloud.cms.EventRule(\"example\",\n rule_name=name,\n group_id=default.id,\n silence_time=100,\n description=name,\n status=\"ENABLED\",\n event_pattern={\n \"product\": \"ecs\",\n \"sql_filter\": \"example_value\",\n \"name_lists\": [\"example_value\"],\n \"level_lists\": [\"CRITICAL\"],\n \"event_type_lists\": [\"StatusNotification\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n });\n\n var example = new AliCloud.Cms.EventRule(\"example\", new()\n {\n RuleName = name,\n GroupId = @default.Id,\n SilenceTime = 100,\n Description = name,\n Status = \"ENABLED\",\n EventPattern = new AliCloud.Cms.Inputs.EventRuleEventPatternArgs\n {\n Product = \"ecs\",\n SqlFilter = \"example_value\",\n NameLists = new[]\n {\n \"example_value\",\n },\n LevelLists = new[]\n {\n \"CRITICAL\",\n },\n EventTypeLists = new[]\n {\n \"StatusNotification\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewEventRule(ctx, \"example\", \u0026cms.EventRuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tGroupId: _default.ID(),\n\t\t\tSilenceTime: pulumi.Int(100),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tStatus: pulumi.String(\"ENABLED\"),\n\t\t\tEventPattern: \u0026cms.EventRuleEventPatternArgs{\n\t\t\t\tProduct: pulumi.String(\"ecs\"),\n\t\t\t\tSqlFilter: pulumi.String(\"example_value\"),\n\t\t\t\tNameLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"example_value\"),\n\t\t\t\t},\n\t\t\t\tLevelLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"CRITICAL\"),\n\t\t\t\t},\n\t\t\t\tEventTypeLists: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"StatusNotification\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cms.EventRule;\nimport com.pulumi.alicloud.cms.EventRuleArgs;\nimport com.pulumi.alicloud.cms.inputs.EventRuleEventPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new MonitorGroup(\"default\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .build());\n\n var example = new EventRule(\"example\", EventRuleArgs.builder()\n .ruleName(name)\n .groupId(default_.id())\n .silenceTime(100)\n .description(name)\n .status(\"ENABLED\")\n .eventPattern(EventRuleEventPatternArgs.builder()\n .product(\"ecs\")\n .sqlFilter(\"example_value\")\n .nameLists(\"example_value\")\n .levelLists(\"CRITICAL\")\n .eventTypeLists(\"StatusNotification\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cms:MonitorGroup\n properties:\n monitorGroupName: ${name}\n example:\n type: alicloud:cms:EventRule\n properties:\n ruleName: ${name}\n groupId: ${default.id}\n silenceTime: 100\n description: ${name}\n status: ENABLED\n eventPattern:\n product: ecs\n sqlFilter: example_value\n nameLists:\n - example_value\n levelLists:\n - CRITICAL\n eventTypeLists:\n - StatusNotification\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Event Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/eventRule:EventRule example \u003crule_name\u003e\n```\n\n",
"properties": {
"contactParameters": {
"type": "array",
@@ -127428,7 +129416,7 @@
}
},
"alicloud:cms/groupMetricRule:GroupMetricRule": {
- "description": "Provides a Cloud Monitor Service Group Metric Rule resource.\n\nFor information about Cloud Monitor Service Group Metric Rule and how to use it, see [What is Group Metric Rule](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putgroupmetricrule).\n\n\u003e **NOTE:** Available since v1.104.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {\n alarmContactGroupName: name,\n describe: name,\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {\n monitorGroupName: name,\n contactGroups: [_default.id],\n});\nconst _this = new alicloud.cms.GroupMetricRule(\"this\", {\n groupId: defaultMonitorGroup.id,\n groupMetricRuleName: name,\n category: \"ecs\",\n metricName: \"cpu_total\",\n namespace: \"acs_ecs_dashboard\",\n ruleId: name,\n period: 60,\n interval: \"3600\",\n silenceTime: 85800,\n noEffectiveInterval: \"00:00-05:30\",\n webhook: \"http://www.aliyun.com\",\n escalations: {\n warn: {\n comparisonOperator: \"GreaterThanOrEqualToThreshold\",\n statistics: \"Average\",\n threshold: \"90\",\n times: 3,\n },\n info: {\n comparisonOperator: \"LessThanLastWeek\",\n statistics: \"Average\",\n threshold: \"90\",\n times: 5,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\",\n alarm_contact_group_name=name,\n describe=name)\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\",\n monitor_group_name=name,\n contact_groups=[default.id])\nthis = alicloud.cms.GroupMetricRule(\"this\",\n group_id=default_monitor_group.id,\n group_metric_rule_name=name,\n category=\"ecs\",\n metric_name=\"cpu_total\",\n namespace=\"acs_ecs_dashboard\",\n rule_id=name,\n period=60,\n interval=\"3600\",\n silence_time=85800,\n no_effective_interval=\"00:00-05:30\",\n webhook=\"http://www.aliyun.com\",\n escalations={\n \"warn\": {\n \"comparison_operator\": \"GreaterThanOrEqualToThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": 3,\n },\n \"info\": {\n \"comparison_operator\": \"LessThanLastWeek\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": 5,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n Describe = name,\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n ContactGroups = new[]\n {\n @default.Id,\n },\n });\n\n var @this = new AliCloud.Cms.GroupMetricRule(\"this\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n GroupMetricRuleName = name,\n Category = \"ecs\",\n MetricName = \"cpu_total\",\n Namespace = \"acs_ecs_dashboard\",\n RuleId = name,\n Period = 60,\n Interval = \"3600\",\n SilenceTime = 85800,\n NoEffectiveInterval = \"00:00-05:30\",\n Webhook = \"http://www.aliyun.com\",\n Escalations = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsArgs\n {\n Warn = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsWarnArgs\n {\n ComparisonOperator = \"GreaterThanOrEqualToThreshold\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = 3,\n },\n Info = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsInfoArgs\n {\n ComparisonOperator = \"LessThanLastWeek\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = 5,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t\tDescribe: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewGroupMetricRule(ctx, \"this\", \u0026cms.GroupMetricRuleArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tGroupMetricRuleName: pulumi.String(name),\n\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\tMetricName: pulumi.String(\"cpu_total\"),\n\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tRuleId: pulumi.String(name),\n\t\t\tPeriod: pulumi.Int(60),\n\t\t\tInterval: pulumi.String(\"3600\"),\n\t\t\tSilenceTime: pulumi.Int(85800),\n\t\t\tNoEffectiveInterval: pulumi.String(\"00:00-05:30\"),\n\t\t\tWebhook: pulumi.String(\"http://www.aliyun.com\"),\n\t\t\tEscalations: \u0026cms.GroupMetricRuleEscalationsArgs{\n\t\t\t\tWarn: \u0026cms.GroupMetricRuleEscalationsWarnArgs{\n\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanOrEqualToThreshold\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\tTimes: pulumi.Int(3),\n\t\t\t\t},\n\t\t\t\tInfo: \u0026cms.GroupMetricRuleEscalationsInfoArgs{\n\t\t\t\t\tComparisonOperator: pulumi.String(\"LessThanLastWeek\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\tTimes: pulumi.Int(5),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cms.GroupMetricRule;\nimport com.pulumi.alicloud.cms.GroupMetricRuleArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsWarnArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsInfoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .describe(name)\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .contactGroups(default_.id())\n .build());\n\n var this_ = new GroupMetricRule(\"this\", GroupMetricRuleArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .groupMetricRuleName(name)\n .category(\"ecs\")\n .metricName(\"cpu_total\")\n .namespace(\"acs_ecs_dashboard\")\n .ruleId(name)\n .period(60)\n .interval(\"3600\")\n .silenceTime(85800)\n .noEffectiveInterval(\"00:00-05:30\")\n .webhook(\"http://www.aliyun.com\")\n .escalations(GroupMetricRuleEscalationsArgs.builder()\n .warn(GroupMetricRuleEscalationsWarnArgs.builder()\n .comparisonOperator(\"GreaterThanOrEqualToThreshold\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(3)\n .build())\n .info(GroupMetricRuleEscalationsInfoArgs.builder()\n .comparisonOperator(\"LessThanLastWeek\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(5)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n describe: ${name}\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n contactGroups:\n - ${default.id}\n this:\n type: alicloud:cms:GroupMetricRule\n properties:\n groupId: ${defaultMonitorGroup.id}\n groupMetricRuleName: ${name}\n category: ecs\n metricName: cpu_total\n namespace: acs_ecs_dashboard\n ruleId: ${name}\n period: '60'\n interval: '3600'\n silenceTime: 85800\n noEffectiveInterval: 00:00-05:30\n webhook: http://www.aliyun.com\n escalations:\n warn:\n comparisonOperator: GreaterThanOrEqualToThreshold\n statistics: Average\n threshold: '90'\n times: 3\n info:\n comparisonOperator: LessThanLastWeek\n statistics: Average\n threshold: '90'\n times: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Group Metric Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/groupMetricRule:GroupMetricRule example \u003crule_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Group Metric Rule resource.\n\nFor information about Cloud Monitor Service Group Metric Rule and how to use it, see [What is Group Metric Rule](https://www.alibabacloud.com/help/en/cloudmonitor/latest/putgroupmetricrule).\n\n\u003e **NOTE:** Available since v1.104.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.cms.AlarmContactGroup(\"default\", {\n alarmContactGroupName: name,\n describe: name,\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {\n monitorGroupName: name,\n contactGroups: [_default.id],\n});\nconst _this = new alicloud.cms.GroupMetricRule(\"this\", {\n groupId: defaultMonitorGroup.id,\n groupMetricRuleName: name,\n category: \"ecs\",\n metricName: \"cpu_total\",\n namespace: \"acs_ecs_dashboard\",\n ruleId: name,\n period: 60,\n interval: \"3600\",\n silenceTime: 85800,\n noEffectiveInterval: \"00:00-05:30\",\n webhook: \"http://www.aliyun.com\",\n escalations: {\n warn: {\n comparisonOperator: \"GreaterThanOrEqualToThreshold\",\n statistics: \"Average\",\n threshold: \"90\",\n times: 3,\n },\n info: {\n comparisonOperator: \"LessThanLastWeek\",\n statistics: \"Average\",\n threshold: \"90\",\n times: 5,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.cms.AlarmContactGroup(\"default\",\n alarm_contact_group_name=name,\n describe=name)\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\",\n monitor_group_name=name,\n contact_groups=[default.id])\nthis = alicloud.cms.GroupMetricRule(\"this\",\n group_id=default_monitor_group.id,\n group_metric_rule_name=name,\n category=\"ecs\",\n metric_name=\"cpu_total\",\n namespace=\"acs_ecs_dashboard\",\n rule_id=name,\n period=60,\n interval=\"3600\",\n silence_time=85800,\n no_effective_interval=\"00:00-05:30\",\n webhook=\"http://www.aliyun.com\",\n escalations={\n \"warn\": {\n \"comparison_operator\": \"GreaterThanOrEqualToThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": 3,\n },\n \"info\": {\n \"comparison_operator\": \"LessThanLastWeek\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": 5,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n Describe = name,\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n ContactGroups = new[]\n {\n @default.Id,\n },\n });\n\n var @this = new AliCloud.Cms.GroupMetricRule(\"this\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n GroupMetricRuleName = name,\n Category = \"ecs\",\n MetricName = \"cpu_total\",\n Namespace = \"acs_ecs_dashboard\",\n RuleId = name,\n Period = 60,\n Interval = \"3600\",\n SilenceTime = 85800,\n NoEffectiveInterval = \"00:00-05:30\",\n Webhook = \"http://www.aliyun.com\",\n Escalations = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsArgs\n {\n Warn = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsWarnArgs\n {\n ComparisonOperator = \"GreaterThanOrEqualToThreshold\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = 3,\n },\n Info = new AliCloud.Cms.Inputs.GroupMetricRuleEscalationsInfoArgs\n {\n ComparisonOperator = \"LessThanLastWeek\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = 5,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t\tDescribe: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewGroupMetricRule(ctx, \"this\", \u0026cms.GroupMetricRuleArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tGroupMetricRuleName: pulumi.String(name),\n\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\tMetricName: pulumi.String(\"cpu_total\"),\n\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tRuleId: pulumi.String(name),\n\t\t\tPeriod: pulumi.Int(60),\n\t\t\tInterval: pulumi.String(\"3600\"),\n\t\t\tSilenceTime: pulumi.Int(85800),\n\t\t\tNoEffectiveInterval: pulumi.String(\"00:00-05:30\"),\n\t\t\tWebhook: pulumi.String(\"http://www.aliyun.com\"),\n\t\t\tEscalations: \u0026cms.GroupMetricRuleEscalationsArgs{\n\t\t\t\tWarn: \u0026cms.GroupMetricRuleEscalationsWarnArgs{\n\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanOrEqualToThreshold\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\tTimes: pulumi.Int(3),\n\t\t\t\t},\n\t\t\t\tInfo: \u0026cms.GroupMetricRuleEscalationsInfoArgs{\n\t\t\t\t\tComparisonOperator: pulumi.String(\"LessThanLastWeek\"),\n\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\tTimes: pulumi.Int(5),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.cms.GroupMetricRule;\nimport com.pulumi.alicloud.cms.GroupMetricRuleArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsWarnArgs;\nimport com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsInfoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new AlarmContactGroup(\"default\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .describe(name)\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .contactGroups(default_.id())\n .build());\n\n var this_ = new GroupMetricRule(\"this\", GroupMetricRuleArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .groupMetricRuleName(name)\n .category(\"ecs\")\n .metricName(\"cpu_total\")\n .namespace(\"acs_ecs_dashboard\")\n .ruleId(name)\n .period(60)\n .interval(\"3600\")\n .silenceTime(85800)\n .noEffectiveInterval(\"00:00-05:30\")\n .webhook(\"http://www.aliyun.com\")\n .escalations(GroupMetricRuleEscalationsArgs.builder()\n .warn(GroupMetricRuleEscalationsWarnArgs.builder()\n .comparisonOperator(\"GreaterThanOrEqualToThreshold\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(3)\n .build())\n .info(GroupMetricRuleEscalationsInfoArgs.builder()\n .comparisonOperator(\"LessThanLastWeek\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(5)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:cms:AlarmContactGroup\n properties:\n alarmContactGroupName: ${name}\n describe: ${name}\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n contactGroups:\n - ${default.id}\n this:\n type: alicloud:cms:GroupMetricRule\n properties:\n groupId: ${defaultMonitorGroup.id}\n groupMetricRuleName: ${name}\n category: ecs\n metricName: cpu_total\n namespace: acs_ecs_dashboard\n ruleId: ${name}\n period: '60'\n interval: '3600'\n silenceTime: 85800\n noEffectiveInterval: 00:00-05:30\n webhook: http://www.aliyun.com\n escalations:\n warn:\n comparisonOperator: GreaterThanOrEqualToThreshold\n statistics: Average\n threshold: '90'\n times: 3\n info:\n comparisonOperator: LessThanLastWeek\n statistics: Average\n threshold: '90'\n times: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Group Metric Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/groupMetricRule:GroupMetricRule example \u003crule_id\u003e\n```\n\n",
"properties": {
"category": {
"type": "string",
@@ -127689,7 +129677,7 @@
}
},
"alicloud:cms/hybridMonitorFcTask:HybridMonitorFcTask": {
- "description": "Provides a Cloud Monitor Service Hybrid Monitor Fc Task resource.\n\nFor information about Cloud Monitor Service Hybrid Monitor Fc Task and how to use it, see [What is Hybrid Monitor Fc Task](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitortask).\n\n\u003e **NOTE:** Available since v1.179.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getAccount({});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {\n description: name,\n namespace: name,\n specification: \"cms.s1.large\",\n});\nconst defaultHybridMonitorFcTask = new alicloud.cms.HybridMonitorFcTask(\"default\", {\n namespace: defaultNamespace.id,\n yarmConfig: `---\nproducts:\n- namespace: \\\\\"acs_ecs_dashboard\\\\\"\n metric_info:\n - metric_list:\n - \\\\\"CPUUtilization\\\\\"\n - \\\\\"DiskReadBPS\\\\\"\n - \\\\\"InternetOut\\\\\"\n - \\\\\"IntranetOut\\\\\"\n - \\\\\"cpu_idle\\\\\"\n - \\\\\"cpu_system\\\\\"\n - \\\\\"cpu_total\\\\\"\n - \\\\\"diskusage_utilization\\\\\"\n- namespace: \\\\\"acs_rds_dashboard\\\\\"\n metric_info:\n - metric_list:\n - \\\\\"MySQL_QPS\\\\\"\n - \\\\\"MySQL_TPS\\\\\"\n`,\n targetUserId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_account()\ndefault_namespace = alicloud.cms.Namespace(\"default\",\n description=name,\n namespace=name,\n specification=\"cms.s1.large\")\ndefault_hybrid_monitor_fc_task = alicloud.cms.HybridMonitorFcTask(\"default\",\n namespace=default_namespace.id,\n yarm_config=\"\"\"---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n\"\"\",\n target_user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n Description = name,\n NamespaceName = name,\n Specification = \"cms.s1.large\",\n });\n\n var defaultHybridMonitorFcTask = new AliCloud.Cms.HybridMonitorFcTask(\"default\", new()\n {\n Namespace = defaultNamespace.Id,\n YarmConfig = @\"---\nproducts:\n- namespace: \\\"\"acs_ecs_dashboard\\\"\"\n metric_info:\n - metric_list:\n - \\\"\"CPUUtilization\\\"\"\n - \\\"\"DiskReadBPS\\\"\"\n - \\\"\"InternetOut\\\"\"\n - \\\"\"IntranetOut\\\"\"\n - \\\"\"cpu_idle\\\"\"\n - \\\"\"cpu_system\\\"\"\n - \\\"\"cpu_total\\\"\"\n - \\\"\"diskusage_utilization\\\"\"\n- namespace: \\\"\"acs_rds_dashboard\\\"\"\n metric_info:\n - metric_list:\n - \\\"\"MySQL_QPS\\\"\"\n - \\\"\"MySQL_TPS\\\"\"\n\",\n TargetUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.String(name),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewHybridMonitorFcTask(ctx, \"default\", \u0026cms.HybridMonitorFcTaskArgs{\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tYarmConfig: pulumi.String(`---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n`),\n\t\t\tTargetUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cms.HybridMonitorFcTask;\nimport com.pulumi.alicloud.cms.HybridMonitorFcTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .description(name)\n .namespace(name)\n .specification(\"cms.s1.large\")\n .build());\n\n var defaultHybridMonitorFcTask = new HybridMonitorFcTask(\"defaultHybridMonitorFcTask\", HybridMonitorFcTaskArgs.builder()\n .namespace(defaultNamespace.id())\n .yarmConfig(\"\"\"\n---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n \"\"\")\n .targetUserId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}\n specification: cms.s1.large\n defaultHybridMonitorFcTask:\n type: alicloud:cms:HybridMonitorFcTask\n name: default\n properties:\n namespace: ${defaultNamespace.id}\n yarmConfig: |\n ---\n products:\n - namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n - namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n targetUserId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Hybrid Monitor Fc Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/hybridMonitorFcTask:HybridMonitorFcTask example \u003chybrid_monitor_fc_task_id\u003e:\u003cnamespace\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Hybrid Monitor Fc Task resource.\n\nFor information about Cloud Monitor Service Hybrid Monitor Fc Task and how to use it, see [What is Hybrid Monitor Fc Task](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitortask).\n\n\u003e **NOTE:** Available since v1.179.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getAccount({});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {\n description: name,\n namespace: name,\n specification: \"cms.s1.large\",\n});\nconst defaultHybridMonitorFcTask = new alicloud.cms.HybridMonitorFcTask(\"default\", {\n namespace: defaultNamespace.id,\n yarmConfig: `---\nproducts:\n- namespace: \\\\\"acs_ecs_dashboard\\\\\"\n metric_info:\n - metric_list:\n - \\\\\"CPUUtilization\\\\\"\n - \\\\\"DiskReadBPS\\\\\"\n - \\\\\"InternetOut\\\\\"\n - \\\\\"IntranetOut\\\\\"\n - \\\\\"cpu_idle\\\\\"\n - \\\\\"cpu_system\\\\\"\n - \\\\\"cpu_total\\\\\"\n - \\\\\"diskusage_utilization\\\\\"\n- namespace: \\\\\"acs_rds_dashboard\\\\\"\n metric_info:\n - metric_list:\n - \\\\\"MySQL_QPS\\\\\"\n - \\\\\"MySQL_TPS\\\\\"\n`,\n targetUserId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_account()\ndefault_namespace = alicloud.cms.Namespace(\"default\",\n description=name,\n namespace=name,\n specification=\"cms.s1.large\")\ndefault_hybrid_monitor_fc_task = alicloud.cms.HybridMonitorFcTask(\"default\",\n namespace=default_namespace.id,\n yarm_config=\"\"\"---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n\"\"\",\n target_user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n Description = name,\n NamespaceName = name,\n Specification = \"cms.s1.large\",\n });\n\n var defaultHybridMonitorFcTask = new AliCloud.Cms.HybridMonitorFcTask(\"default\", new()\n {\n Namespace = defaultNamespace.Id,\n YarmConfig = @\"---\nproducts:\n- namespace: \\\"\"acs_ecs_dashboard\\\"\"\n metric_info:\n - metric_list:\n - \\\"\"CPUUtilization\\\"\"\n - \\\"\"DiskReadBPS\\\"\"\n - \\\"\"InternetOut\\\"\"\n - \\\"\"IntranetOut\\\"\"\n - \\\"\"cpu_idle\\\"\"\n - \\\"\"cpu_system\\\"\"\n - \\\"\"cpu_total\\\"\"\n - \\\"\"diskusage_utilization\\\"\"\n- namespace: \\\"\"acs_rds_dashboard\\\"\"\n metric_info:\n - metric_list:\n - \\\"\"MySQL_QPS\\\"\"\n - \\\"\"MySQL_TPS\\\"\"\n\",\n TargetUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.String(name),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewHybridMonitorFcTask(ctx, \"default\", \u0026cms.HybridMonitorFcTaskArgs{\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tYarmConfig: pulumi.String(`---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n`),\n\t\t\tTargetUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cms.HybridMonitorFcTask;\nimport com.pulumi.alicloud.cms.HybridMonitorFcTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .description(name)\n .namespace(name)\n .specification(\"cms.s1.large\")\n .build());\n\n var defaultHybridMonitorFcTask = new HybridMonitorFcTask(\"defaultHybridMonitorFcTask\", HybridMonitorFcTaskArgs.builder()\n .namespace(defaultNamespace.id())\n .yarmConfig(\"\"\"\n---\nproducts:\n- namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n- namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n \"\"\")\n .targetUserId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}\n specification: cms.s1.large\n defaultHybridMonitorFcTask:\n type: alicloud:cms:HybridMonitorFcTask\n name: default\n properties:\n namespace: ${defaultNamespace.id}\n yarmConfig: |\n ---\n products:\n - namespace: \\\"acs_ecs_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"CPUUtilization\\\"\n - \\\"DiskReadBPS\\\"\n - \\\"InternetOut\\\"\n - \\\"IntranetOut\\\"\n - \\\"cpu_idle\\\"\n - \\\"cpu_system\\\"\n - \\\"cpu_total\\\"\n - \\\"diskusage_utilization\\\"\n - namespace: \\\"acs_rds_dashboard\\\"\n metric_info:\n - metric_list:\n - \\\"MySQL_QPS\\\"\n - \\\"MySQL_TPS\\\"\n targetUserId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Hybrid Monitor Fc Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/hybridMonitorFcTask:HybridMonitorFcTask example \u003chybrid_monitor_fc_task_id\u003e:\u003cnamespace\u003e\n```\n\n",
"properties": {
"hybridMonitorFcTaskId": {
"type": "string",
@@ -127760,7 +129748,7 @@
}
},
"alicloud:cms/hybridMonitorSlsTask:HybridMonitorSlsTask": {
- "description": "Provides a Cloud Monitor Service Hybrid Monitor Sls Task resource.\n\nFor information about Cloud Monitor Service Hybrid Monitor Sls Task and how to use it, see [What is Hybrid Monitor Sls Task](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitortask).\n\n\u003e **NOTE:** Available since v1.179.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultSlsGroup = new alicloud.cms.SlsGroup(\"default\", {\n slsGroupConfigs: [{\n slsUserId: _default.then(_default =\u003e _default.id),\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n slsRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n }],\n slsGroupDescription: name,\n slsGroupName: name,\n});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {\n namespace: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n }).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n })).then(invoke =\u003e invoke.result),\n specification: \"cms.s1.large\",\n});\nconst defaultHybridMonitorSlsTask = new alicloud.cms.HybridMonitorSlsTask(\"default\", {\n taskName: name,\n namespace: defaultNamespace.id,\n description: name,\n collectInterval: 60,\n collectTargetType: defaultSlsGroup.id,\n slsProcessConfig: {\n filter: {\n relation: \"and\",\n filters: [{\n operator: \"=\",\n value: \"200\",\n slsKeyName: \"code\",\n }],\n },\n statistics: [{\n \"function\": \"count\",\n alias: \"level_count\",\n slsKeyName: \"name\",\n parameterOne: \"200\",\n parameterTwo: \"299\",\n }],\n groupBies: [{\n alias: \"code\",\n slsKeyName: \"ApiResult\",\n }],\n expresses: [{\n express: \"success_count\",\n alias: \"SuccRate\",\n }],\n },\n attachLabels: [{\n name: \"app_service\",\n value: \"example_Value\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_sls_group = alicloud.cms.SlsGroup(\"default\",\n sls_group_configs=[{\n \"sls_user_id\": default.id,\n \"sls_logstore\": default_store.logstore_name,\n \"sls_project\": default_project.project_name,\n \"sls_region\": default_get_regions.regions[0].id,\n }],\n sls_group_description=name,\n sls_group_name=name)\ndefault_namespace = alicloud.cms.Namespace(\"default\",\n namespace=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result,\n specification=\"cms.s1.large\")\ndefault_hybrid_monitor_sls_task = alicloud.cms.HybridMonitorSlsTask(\"default\",\n task_name=name,\n namespace=default_namespace.id,\n description=name,\n collect_interval=60,\n collect_target_type=default_sls_group.id,\n sls_process_config={\n \"filter\": {\n \"relation\": \"and\",\n \"filters\": [{\n \"operator\": \"=\",\n \"value\": \"200\",\n \"sls_key_name\": \"code\",\n }],\n },\n \"statistics\": [{\n \"function\": \"count\",\n \"alias\": \"level_count\",\n \"sls_key_name\": \"name\",\n \"parameter_one\": \"200\",\n \"parameter_two\": \"299\",\n }],\n \"group_bies\": [{\n \"alias\": \"code\",\n \"sls_key_name\": \"ApiResult\",\n }],\n \"expresses\": [{\n \"express\": \"success_count\",\n \"alias\": \"SuccRate\",\n }],\n },\n attach_labels=[{\n \"name\": \"app_service\",\n \"value\": \"example_Value\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultSlsGroup = new AliCloud.Cms.SlsGroup(\"default\", new()\n {\n SlsGroupConfigs = new[]\n {\n new AliCloud.Cms.Inputs.SlsGroupSlsGroupConfigArgs\n {\n SlsUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n SlsRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n },\n },\n SlsGroupDescription = name,\n SlsGroupName = name,\n });\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n NamespaceName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n Specification = \"cms.s1.large\",\n });\n\n var defaultHybridMonitorSlsTask = new AliCloud.Cms.HybridMonitorSlsTask(\"default\", new()\n {\n TaskName = name,\n Namespace = defaultNamespace.Id,\n Description = name,\n CollectInterval = 60,\n CollectTargetType = defaultSlsGroup.Id,\n SlsProcessConfig = new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigArgs\n {\n Filter = new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigFilterArgs\n {\n Relation = \"and\",\n Filters = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs\n {\n Operator = \"=\",\n Value = \"200\",\n SlsKeyName = \"code\",\n },\n },\n },\n Statistics = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigStatisticArgs\n {\n Function = \"count\",\n Alias = \"level_count\",\n SlsKeyName = \"name\",\n ParameterOne = \"200\",\n ParameterTwo = \"299\",\n },\n },\n GroupBies = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigGroupByArgs\n {\n Alias = \"code\",\n SlsKeyName = \"ApiResult\",\n },\n },\n Expresses = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigExpressArgs\n {\n Express = \"success_count\",\n Alias = \"SuccRate\",\n },\n },\n },\n AttachLabels = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskAttachLabelArgs\n {\n Name = \"app_service\",\n Value = \"example_Value\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSlsGroup, err := cms.NewSlsGroup(ctx, \"default\", \u0026cms.SlsGroupArgs{\n\t\t\tSlsGroupConfigs: cms.SlsGroupSlsGroupConfigArray{\n\t\t\t\t\u0026cms.SlsGroupSlsGroupConfigArgs{\n\t\t\t\t\tSlsUserId: pulumi.String(_default.Id),\n\t\t\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t\t\t\tSlsRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSlsGroupDescription: pulumi.String(name),\n\t\t\tSlsGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(invokeSubstr1.Result),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewHybridMonitorSlsTask(ctx, \"default\", \u0026cms.HybridMonitorSlsTaskArgs{\n\t\t\tTaskName: pulumi.String(name),\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCollectInterval: pulumi.Int(60),\n\t\t\tCollectTargetType: defaultSlsGroup.ID(),\n\t\t\tSlsProcessConfig: \u0026cms.HybridMonitorSlsTaskSlsProcessConfigArgs{\n\t\t\t\tFilter: \u0026cms.HybridMonitorSlsTaskSlsProcessConfigFilterArgs{\n\t\t\t\t\tRelation: pulumi.String(\"and\"),\n\t\t\t\t\tFilters: cms.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArray{\n\t\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs{\n\t\t\t\t\t\t\tOperator: pulumi.String(\"=\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"200\"),\n\t\t\t\t\t\t\tSlsKeyName: pulumi.String(\"code\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tStatistics: cms.HybridMonitorSlsTaskSlsProcessConfigStatisticArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigStatisticArgs{\n\t\t\t\t\t\tFunction: pulumi.String(\"count\"),\n\t\t\t\t\t\tAlias: pulumi.String(\"level_count\"),\n\t\t\t\t\t\tSlsKeyName: pulumi.String(\"name\"),\n\t\t\t\t\t\tParameterOne: pulumi.String(\"200\"),\n\t\t\t\t\t\tParameterTwo: pulumi.String(\"299\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tGroupBies: cms.HybridMonitorSlsTaskSlsProcessConfigGroupByArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigGroupByArgs{\n\t\t\t\t\t\tAlias: pulumi.String(\"code\"),\n\t\t\t\t\t\tSlsKeyName: pulumi.String(\"ApiResult\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tExpresses: cms.HybridMonitorSlsTaskSlsProcessConfigExpressArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigExpressArgs{\n\t\t\t\t\t\tExpress: pulumi.String(\"success_count\"),\n\t\t\t\t\t\tAlias: pulumi.String(\"SuccRate\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAttachLabels: cms.HybridMonitorSlsTaskAttachLabelArray{\n\t\t\t\t\u0026cms.HybridMonitorSlsTaskAttachLabelArgs{\n\t\t\t\t\tName: pulumi.String(\"app_service\"),\n\t\t\t\t\tValue: pulumi.String(\"example_Value\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cms.SlsGroup;\nimport com.pulumi.alicloud.cms.SlsGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.SlsGroupSlsGroupConfigArgs;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cms.HybridMonitorSlsTask;\nimport com.pulumi.alicloud.cms.HybridMonitorSlsTaskArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskSlsProcessConfigArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskSlsProcessConfigFilterArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskAttachLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultSlsGroup = new SlsGroup(\"defaultSlsGroup\", SlsGroupArgs.builder()\n .slsGroupConfigs(SlsGroupSlsGroupConfigArgs.builder()\n .slsUserId(default_.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .slsRegion(defaultGetRegions.regions()[0].id())\n .build())\n .slsGroupDescription(name)\n .slsGroupName(name)\n .build());\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .namespace(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .specification(\"cms.s1.large\")\n .build());\n\n var defaultHybridMonitorSlsTask = new HybridMonitorSlsTask(\"defaultHybridMonitorSlsTask\", HybridMonitorSlsTaskArgs.builder()\n .taskName(name)\n .namespace(defaultNamespace.id())\n .description(name)\n .collectInterval(60)\n .collectTargetType(defaultSlsGroup.id())\n .slsProcessConfig(HybridMonitorSlsTaskSlsProcessConfigArgs.builder()\n .filter(HybridMonitorSlsTaskSlsProcessConfigFilterArgs.builder()\n .relation(\"and\")\n .filters(HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs.builder()\n .operator(\"=\")\n .value(\"200\")\n .slsKeyName(\"code\")\n .build())\n .build())\n .statistics(HybridMonitorSlsTaskSlsProcessConfigStatisticArgs.builder()\n .function(\"count\")\n .alias(\"level_count\")\n .slsKeyName(\"name\")\n .parameterOne(\"200\")\n .parameterTwo(\"299\")\n .build())\n .groupBies(HybridMonitorSlsTaskSlsProcessConfigGroupByArgs.builder()\n .alias(\"code\")\n .slsKeyName(\"ApiResult\")\n .build())\n .expresses(HybridMonitorSlsTaskSlsProcessConfigExpressArgs.builder()\n .express(\"success_count\")\n .alias(\"SuccRate\")\n .build())\n .build())\n .attachLabels(HybridMonitorSlsTaskAttachLabelArgs.builder()\n .name(\"app_service\")\n .value(\"example_Value\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultSlsGroup:\n type: alicloud:cms:SlsGroup\n name: default\n properties:\n slsGroupConfigs:\n - slsUserId: ${default.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\n slsRegion: ${defaultGetRegions.regions[0].id}\n slsGroupDescription: ${name}\n slsGroupName: ${name}\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n namespace:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n specification: cms.s1.large\n defaultHybridMonitorSlsTask:\n type: alicloud:cms:HybridMonitorSlsTask\n name: default\n properties:\n taskName: ${name}\n namespace: ${defaultNamespace.id}\n description: ${name}\n collectInterval: 60\n collectTargetType: ${defaultSlsGroup.id}\n slsProcessConfig:\n filter:\n relation: and\n filters:\n - operator: =\n value: '200'\n slsKeyName: code\n statistics:\n - function: count\n alias: level_count\n slsKeyName: name\n parameterOne: '200'\n parameterTwo: '299'\n groupBies:\n - alias: code\n slsKeyName: ApiResult\n expresses:\n - express: success_count\n alias: SuccRate\n attachLabels:\n - name: app_service\n value: example_Value\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Hybrid Monitor Sls Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/hybridMonitorSlsTask:HybridMonitorSlsTask example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Hybrid Monitor Sls Task resource.\n\nFor information about Cloud Monitor Service Hybrid Monitor Sls Task and how to use it, see [What is Hybrid Monitor Sls Task](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitortask).\n\n\u003e **NOTE:** Available since v1.179.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultSlsGroup = new alicloud.cms.SlsGroup(\"default\", {\n slsGroupConfigs: [{\n slsUserId: _default.then(_default =\u003e _default.id),\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n slsRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n }],\n slsGroupDescription: name,\n slsGroupName: name,\n});\nconst defaultNamespace = new alicloud.cms.Namespace(\"default\", {\n namespace: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n }).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n })).then(invoke =\u003e invoke.result),\n specification: \"cms.s1.large\",\n});\nconst defaultHybridMonitorSlsTask = new alicloud.cms.HybridMonitorSlsTask(\"default\", {\n taskName: name,\n namespace: defaultNamespace.id,\n description: name,\n collectInterval: 60,\n collectTargetType: defaultSlsGroup.id,\n slsProcessConfig: {\n filter: {\n relation: \"and\",\n filters: [{\n operator: \"=\",\n value: \"200\",\n slsKeyName: \"code\",\n }],\n },\n statistics: [{\n \"function\": \"count\",\n alias: \"level_count\",\n slsKeyName: \"name\",\n parameterOne: \"200\",\n parameterTwo: \"299\",\n }],\n groupBies: [{\n alias: \"code\",\n slsKeyName: \"ApiResult\",\n }],\n expresses: [{\n express: \"success_count\",\n alias: \"SuccRate\",\n }],\n },\n attachLabels: [{\n name: \"app_service\",\n value: \"example_Value\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_sls_group = alicloud.cms.SlsGroup(\"default\",\n sls_group_configs=[{\n \"sls_user_id\": default.id,\n \"sls_logstore\": default_store.logstore_name,\n \"sls_project\": default_project.project_name,\n \"sls_region\": default_get_regions.regions[0].id,\n }],\n sls_group_description=name,\n sls_group_name=name)\ndefault_namespace = alicloud.cms.Namespace(\"default\",\n namespace=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result,\n specification=\"cms.s1.large\")\ndefault_hybrid_monitor_sls_task = alicloud.cms.HybridMonitorSlsTask(\"default\",\n task_name=name,\n namespace=default_namespace.id,\n description=name,\n collect_interval=60,\n collect_target_type=default_sls_group.id,\n sls_process_config={\n \"filter\": {\n \"relation\": \"and\",\n \"filters\": [{\n \"operator\": \"=\",\n \"value\": \"200\",\n \"sls_key_name\": \"code\",\n }],\n },\n \"statistics\": [{\n \"function\": \"count\",\n \"alias\": \"level_count\",\n \"sls_key_name\": \"name\",\n \"parameter_one\": \"200\",\n \"parameter_two\": \"299\",\n }],\n \"group_bies\": [{\n \"alias\": \"code\",\n \"sls_key_name\": \"ApiResult\",\n }],\n \"expresses\": [{\n \"express\": \"success_count\",\n \"alias\": \"SuccRate\",\n }],\n },\n attach_labels=[{\n \"name\": \"app_service\",\n \"value\": \"example_Value\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultSlsGroup = new AliCloud.Cms.SlsGroup(\"default\", new()\n {\n SlsGroupConfigs = new[]\n {\n new AliCloud.Cms.Inputs.SlsGroupSlsGroupConfigArgs\n {\n SlsUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n SlsRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n },\n },\n SlsGroupDescription = name,\n SlsGroupName = name,\n });\n\n var defaultNamespace = new AliCloud.Cms.Namespace(\"default\", new()\n {\n NamespaceName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n Specification = \"cms.s1.large\",\n });\n\n var defaultHybridMonitorSlsTask = new AliCloud.Cms.HybridMonitorSlsTask(\"default\", new()\n {\n TaskName = name,\n Namespace = defaultNamespace.Id,\n Description = name,\n CollectInterval = 60,\n CollectTargetType = defaultSlsGroup.Id,\n SlsProcessConfig = new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigArgs\n {\n Filter = new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigFilterArgs\n {\n Relation = \"and\",\n Filters = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs\n {\n Operator = \"=\",\n Value = \"200\",\n SlsKeyName = \"code\",\n },\n },\n },\n Statistics = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigStatisticArgs\n {\n Function = \"count\",\n Alias = \"level_count\",\n SlsKeyName = \"name\",\n ParameterOne = \"200\",\n ParameterTwo = \"299\",\n },\n },\n GroupBies = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigGroupByArgs\n {\n Alias = \"code\",\n SlsKeyName = \"ApiResult\",\n },\n },\n Expresses = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskSlsProcessConfigExpressArgs\n {\n Express = \"success_count\",\n Alias = \"SuccRate\",\n },\n },\n },\n AttachLabels = new[]\n {\n new AliCloud.Cms.Inputs.HybridMonitorSlsTaskAttachLabelArgs\n {\n Name = \"app_service\",\n Value = \"example_Value\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSlsGroup, err := cms.NewSlsGroup(ctx, \"default\", \u0026cms.SlsGroupArgs{\n\t\t\tSlsGroupConfigs: cms.SlsGroupSlsGroupConfigArray{\n\t\t\t\t\u0026cms.SlsGroupSlsGroupConfigArgs{\n\t\t\t\t\tSlsUserId: pulumi.String(_default.Id),\n\t\t\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t\t\t\tSlsRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSlsGroupDescription: pulumi.String(name),\n\t\t\tSlsGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr1, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNamespace, err := cms.NewNamespace(ctx, \"default\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(invokeSubstr1.Result),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewHybridMonitorSlsTask(ctx, \"default\", \u0026cms.HybridMonitorSlsTaskArgs{\n\t\t\tTaskName: pulumi.String(name),\n\t\t\tNamespace: defaultNamespace.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tCollectInterval: pulumi.Int(60),\n\t\t\tCollectTargetType: defaultSlsGroup.ID(),\n\t\t\tSlsProcessConfig: \u0026cms.HybridMonitorSlsTaskSlsProcessConfigArgs{\n\t\t\t\tFilter: \u0026cms.HybridMonitorSlsTaskSlsProcessConfigFilterArgs{\n\t\t\t\t\tRelation: pulumi.String(\"and\"),\n\t\t\t\t\tFilters: cms.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArray{\n\t\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs{\n\t\t\t\t\t\t\tOperator: pulumi.String(\"=\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"200\"),\n\t\t\t\t\t\t\tSlsKeyName: pulumi.String(\"code\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tStatistics: cms.HybridMonitorSlsTaskSlsProcessConfigStatisticArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigStatisticArgs{\n\t\t\t\t\t\tFunction: pulumi.String(\"count\"),\n\t\t\t\t\t\tAlias: pulumi.String(\"level_count\"),\n\t\t\t\t\t\tSlsKeyName: pulumi.String(\"name\"),\n\t\t\t\t\t\tParameterOne: pulumi.String(\"200\"),\n\t\t\t\t\t\tParameterTwo: pulumi.String(\"299\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tGroupBies: cms.HybridMonitorSlsTaskSlsProcessConfigGroupByArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigGroupByArgs{\n\t\t\t\t\t\tAlias: pulumi.String(\"code\"),\n\t\t\t\t\t\tSlsKeyName: pulumi.String(\"ApiResult\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tExpresses: cms.HybridMonitorSlsTaskSlsProcessConfigExpressArray{\n\t\t\t\t\t\u0026cms.HybridMonitorSlsTaskSlsProcessConfigExpressArgs{\n\t\t\t\t\t\tExpress: pulumi.String(\"success_count\"),\n\t\t\t\t\t\tAlias: pulumi.String(\"SuccRate\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAttachLabels: cms.HybridMonitorSlsTaskAttachLabelArray{\n\t\t\t\t\u0026cms.HybridMonitorSlsTaskAttachLabelArgs{\n\t\t\t\t\tName: pulumi.String(\"app_service\"),\n\t\t\t\t\tValue: pulumi.String(\"example_Value\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cms.SlsGroup;\nimport com.pulumi.alicloud.cms.SlsGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.SlsGroupSlsGroupConfigArgs;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport com.pulumi.alicloud.cms.HybridMonitorSlsTask;\nimport com.pulumi.alicloud.cms.HybridMonitorSlsTaskArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskSlsProcessConfigArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskSlsProcessConfigFilterArgs;\nimport com.pulumi.alicloud.cms.inputs.HybridMonitorSlsTaskAttachLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultSlsGroup = new SlsGroup(\"defaultSlsGroup\", SlsGroupArgs.builder()\n .slsGroupConfigs(SlsGroupSlsGroupConfigArgs.builder()\n .slsUserId(default_.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .slsRegion(defaultGetRegions.regions()[0].id())\n .build())\n .slsGroupDescription(name)\n .slsGroupName(name)\n .build());\n\n var defaultNamespace = new Namespace(\"defaultNamespace\", NamespaceArgs.builder()\n .namespace(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .specification(\"cms.s1.large\")\n .build());\n\n var defaultHybridMonitorSlsTask = new HybridMonitorSlsTask(\"defaultHybridMonitorSlsTask\", HybridMonitorSlsTaskArgs.builder()\n .taskName(name)\n .namespace(defaultNamespace.id())\n .description(name)\n .collectInterval(60)\n .collectTargetType(defaultSlsGroup.id())\n .slsProcessConfig(HybridMonitorSlsTaskSlsProcessConfigArgs.builder()\n .filter(HybridMonitorSlsTaskSlsProcessConfigFilterArgs.builder()\n .relation(\"and\")\n .filters(HybridMonitorSlsTaskSlsProcessConfigFilterFilterArgs.builder()\n .operator(\"=\")\n .value(\"200\")\n .slsKeyName(\"code\")\n .build())\n .build())\n .statistics(HybridMonitorSlsTaskSlsProcessConfigStatisticArgs.builder()\n .function(\"count\")\n .alias(\"level_count\")\n .slsKeyName(\"name\")\n .parameterOne(\"200\")\n .parameterTwo(\"299\")\n .build())\n .groupBies(HybridMonitorSlsTaskSlsProcessConfigGroupByArgs.builder()\n .alias(\"code\")\n .slsKeyName(\"ApiResult\")\n .build())\n .expresses(HybridMonitorSlsTaskSlsProcessConfigExpressArgs.builder()\n .express(\"success_count\")\n .alias(\"SuccRate\")\n .build())\n .build())\n .attachLabels(HybridMonitorSlsTaskAttachLabelArgs.builder()\n .name(\"app_service\")\n .value(\"example_Value\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultSlsGroup:\n type: alicloud:cms:SlsGroup\n name: default\n properties:\n slsGroupConfigs:\n - slsUserId: ${default.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\n slsRegion: ${defaultGetRegions.regions[0].id}\n slsGroupDescription: ${name}\n slsGroupName: ${name}\n defaultNamespace:\n type: alicloud:cms:Namespace\n name: default\n properties:\n namespace:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n specification: cms.s1.large\n defaultHybridMonitorSlsTask:\n type: alicloud:cms:HybridMonitorSlsTask\n name: default\n properties:\n taskName: ${name}\n namespace: ${defaultNamespace.id}\n description: ${name}\n collectInterval: 60\n collectTargetType: ${defaultSlsGroup.id}\n slsProcessConfig:\n filter:\n relation: and\n filters:\n - operator: =\n value: '200'\n slsKeyName: code\n statistics:\n - function: count\n alias: level_count\n slsKeyName: name\n parameterOne: '200'\n parameterTwo: '299'\n groupBies:\n - alias: code\n slsKeyName: ApiResult\n expresses:\n - express: success_count\n alias: SuccRate\n attachLabels:\n - name: app_service\n value: example_Value\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Hybrid Monitor Sls Task can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/hybridMonitorSlsTask:HybridMonitorSlsTask example \u003cid\u003e\n```\n\n",
"properties": {
"attachLabels": {
"type": "array",
@@ -127885,7 +129873,7 @@
}
},
"alicloud:cms/metricRuleBlackList:MetricRuleBlackList": {
- "description": "Provides a Cloud Monitor Service Metric Rule Black List resource.\n\nFor information about Cloud Monitor Service Metric Rule Black List and how to use it, see [What is Metric Rule Black List](https://www.alibabacloud.com/help/en/cloudmonitor/latest/describemetricruleblacklist).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultMetricRuleBlackList = new alicloud.cms.MetricRuleBlackList(\"default\", {\n instances: [pulumi.interpolate`{\"instancceId\":\"${defaultInstance.id}\"}`],\n metrics: [{\n metricName: \"disk_utilization\",\n }],\n category: \"ecs\",\n enableEndTime: \"1799443209000\",\n namespace: \"acs_ecs_dashboard\",\n enableStartTime: \"1689243209000\",\n metricRuleBlackListName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_metric_rule_black_list = alicloud.cms.MetricRuleBlackList(\"default\",\n instances=[default_instance.id.apply(lambda id: f\"{{\\\"instancceId\\\":\\\"{id}\\\"}}\")],\n metrics=[{\n \"metric_name\": \"disk_utilization\",\n }],\n category=\"ecs\",\n enable_end_time=\"1799443209000\",\n namespace=\"acs_ecs_dashboard\",\n enable_start_time=\"1689243209000\",\n metric_rule_black_list_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultMetricRuleBlackList = new AliCloud.Cms.MetricRuleBlackList(\"default\", new()\n {\n Instances = new[]\n {\n defaultInstance.Id.Apply(id =\u003e $\"{{\\\"instancceId\\\":\\\"{id}\\\"}}\"),\n },\n Metrics = new[]\n {\n new AliCloud.Cms.Inputs.MetricRuleBlackListMetricArgs\n {\n MetricName = \"disk_utilization\",\n },\n },\n Category = \"ecs\",\n EnableEndTime = \"1799443209000\",\n Namespace = \"acs_ecs_dashboard\",\n EnableStartTime = \"1689243209000\",\n MetricRuleBlackListName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMetricRuleBlackList(ctx, \"default\", \u0026cms.MetricRuleBlackListArgs{\n\t\t\tInstances: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\treturn fmt.Sprintf(\"{\\\"instancceId\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t},\n\t\t\tMetrics: cms.MetricRuleBlackListMetricArray{\n\t\t\t\t\u0026cms.MetricRuleBlackListMetricArgs{\n\t\t\t\t\tMetricName: pulumi.String(\"disk_utilization\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\tEnableEndTime: pulumi.String(\"1799443209000\"),\n\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tEnableStartTime: pulumi.String(\"1689243209000\"),\n\t\t\tMetricRuleBlackListName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cms.MetricRuleBlackList;\nimport com.pulumi.alicloud.cms.MetricRuleBlackListArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleBlackListMetricArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultMetricRuleBlackList = new MetricRuleBlackList(\"defaultMetricRuleBlackList\", MetricRuleBlackListArgs.builder()\n .instances(defaultInstance.id().applyValue(_id -\u003e String.format(\"{{\\\"instancceId\\\":\\\"%s\\\"}}\", _id)))\n .metrics(MetricRuleBlackListMetricArgs.builder()\n .metricName(\"disk_utilization\")\n .build())\n .category(\"ecs\")\n .enableEndTime(\"1799443209000\")\n .namespace(\"acs_ecs_dashboard\")\n .enableStartTime(\"1689243209000\")\n .metricRuleBlackListName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultMetricRuleBlackList:\n type: alicloud:cms:MetricRuleBlackList\n name: default\n properties:\n instances:\n - '{\"instancceId\":\"${defaultInstance.id}\"}'\n metrics:\n - metricName: disk_utilization\n category: ecs\n enableEndTime: 1.799443209e+12\n namespace: acs_ecs_dashboard\n enableStartTime: 1.689243209e+12\n metricRuleBlackListName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Metric Rule Black List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/metricRuleBlackList:MetricRuleBlackList example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Metric Rule Black List resource.\n\nFor information about Cloud Monitor Service Metric Rule Black List and how to use it, see [What is Metric Rule Black List](https://www.alibabacloud.com/help/en/cloudmonitor/latest/describemetricruleblacklist).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultMetricRuleBlackList = new alicloud.cms.MetricRuleBlackList(\"default\", {\n instances: [pulumi.interpolate`{\"instancceId\":\"${defaultInstance.id}\"}`],\n metrics: [{\n metricName: \"disk_utilization\",\n }],\n category: \"ecs\",\n enableEndTime: \"1799443209000\",\n namespace: \"acs_ecs_dashboard\",\n enableStartTime: \"1689243209000\",\n metricRuleBlackListName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_metric_rule_black_list = alicloud.cms.MetricRuleBlackList(\"default\",\n instances=[default_instance.id.apply(lambda id: f\"{{\\\"instancceId\\\":\\\"{id}\\\"}}\")],\n metrics=[{\n \"metric_name\": \"disk_utilization\",\n }],\n category=\"ecs\",\n enable_end_time=\"1799443209000\",\n namespace=\"acs_ecs_dashboard\",\n enable_start_time=\"1689243209000\",\n metric_rule_black_list_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultMetricRuleBlackList = new AliCloud.Cms.MetricRuleBlackList(\"default\", new()\n {\n Instances = new[]\n {\n defaultInstance.Id.Apply(id =\u003e $\"{{\\\"instancceId\\\":\\\"{id}\\\"}}\"),\n },\n Metrics = new[]\n {\n new AliCloud.Cms.Inputs.MetricRuleBlackListMetricArgs\n {\n MetricName = \"disk_utilization\",\n },\n },\n Category = \"ecs\",\n EnableEndTime = \"1799443209000\",\n Namespace = \"acs_ecs_dashboard\",\n EnableStartTime = \"1689243209000\",\n MetricRuleBlackListName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMetricRuleBlackList(ctx, \"default\", \u0026cms.MetricRuleBlackListArgs{\n\t\t\tInstances: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\treturn fmt.Sprintf(\"{\\\"instancceId\\\":\\\"%v\\\"}\", id), nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t},\n\t\t\tMetrics: cms.MetricRuleBlackListMetricArray{\n\t\t\t\t\u0026cms.MetricRuleBlackListMetricArgs{\n\t\t\t\t\tMetricName: pulumi.String(\"disk_utilization\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\tEnableEndTime: pulumi.String(\"1799443209000\"),\n\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\tEnableStartTime: pulumi.String(\"1689243209000\"),\n\t\t\tMetricRuleBlackListName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.cms.MetricRuleBlackList;\nimport com.pulumi.alicloud.cms.MetricRuleBlackListArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleBlackListMetricArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultMetricRuleBlackList = new MetricRuleBlackList(\"defaultMetricRuleBlackList\", MetricRuleBlackListArgs.builder()\n .instances(defaultInstance.id().applyValue(_id -\u003e String.format(\"{{\\\"instancceId\\\":\\\"%s\\\"}}\", _id)))\n .metrics(MetricRuleBlackListMetricArgs.builder()\n .metricName(\"disk_utilization\")\n .build())\n .category(\"ecs\")\n .enableEndTime(\"1799443209000\")\n .namespace(\"acs_ecs_dashboard\")\n .enableStartTime(\"1689243209000\")\n .metricRuleBlackListName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultMetricRuleBlackList:\n type: alicloud:cms:MetricRuleBlackList\n name: default\n properties:\n instances:\n - '{\"instancceId\":\"${defaultInstance.id}\"}'\n metrics:\n - metricName: disk_utilization\n category: ecs\n enableEndTime: 1.799443209e+12\n namespace: acs_ecs_dashboard\n enableStartTime: 1.689243209e+12\n metricRuleBlackListName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Metric Rule Black List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/metricRuleBlackList:MetricRuleBlackList example \u003cid\u003e\n```\n\n",
"properties": {
"category": {
"type": "string",
@@ -128102,7 +130090,7 @@
}
},
"alicloud:cms/metricRuleTemplate:MetricRuleTemplate": {
- "description": "Provides a Cloud Monitor Service Metric Rule Template resource.\n\nFor information about Cloud Monitor Service Metric Rule Template and how to use it, see [What is Metric Rule Template](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmetricruletemplate).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.cms.MetricRuleTemplate(\"example\", {\n metricRuleTemplateName: name,\n alertTemplates: [{\n category: \"ecs\",\n metricName: \"cpu_total\",\n namespace: \"acs_ecs_dashboard\",\n ruleName: \"tf_example\",\n escalations: {\n critical: {\n comparisonOperator: \"GreaterThanThreshold\",\n statistics: \"Average\",\n threshold: \"90\",\n times: \"3\",\n },\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.cms.MetricRuleTemplate(\"example\",\n metric_rule_template_name=name,\n alert_templates=[{\n \"category\": \"ecs\",\n \"metric_name\": \"cpu_total\",\n \"namespace\": \"acs_ecs_dashboard\",\n \"rule_name\": \"tf_example\",\n \"escalations\": {\n \"critical\": {\n \"comparison_operator\": \"GreaterThanThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": \"3\",\n },\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.Cms.MetricRuleTemplate(\"example\", new()\n {\n MetricRuleTemplateName = name,\n AlertTemplates = new[]\n {\n new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateArgs\n {\n Category = \"ecs\",\n MetricName = \"cpu_total\",\n Namespace = \"acs_ecs_dashboard\",\n RuleName = \"tf_example\",\n Escalations = new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateEscalationsArgs\n {\n Critical = new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs\n {\n ComparisonOperator = \"GreaterThanThreshold\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = \"3\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cms.NewMetricRuleTemplate(ctx, \"example\", \u0026cms.MetricRuleTemplateArgs{\n\t\t\tMetricRuleTemplateName: pulumi.String(name),\n\t\t\tAlertTemplates: cms.MetricRuleTemplateAlertTemplateArray{\n\t\t\t\t\u0026cms.MetricRuleTemplateAlertTemplateArgs{\n\t\t\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\t\t\tMetricName: pulumi.String(\"cpu_total\"),\n\t\t\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\t\t\tRuleName: pulumi.String(\"tf_example\"),\n\t\t\t\t\tEscalations: \u0026cms.MetricRuleTemplateAlertTemplateEscalationsArgs{\n\t\t\t\t\t\tCritical: \u0026cms.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs{\n\t\t\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanThreshold\"),\n\t\t\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\t\t\tTimes: pulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MetricRuleTemplate;\nimport com.pulumi.alicloud.cms.MetricRuleTemplateArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateEscalationsArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new MetricRuleTemplate(\"example\", MetricRuleTemplateArgs.builder()\n .metricRuleTemplateName(name)\n .alertTemplates(MetricRuleTemplateAlertTemplateArgs.builder()\n .category(\"ecs\")\n .metricName(\"cpu_total\")\n .namespace(\"acs_ecs_dashboard\")\n .ruleName(\"tf_example\")\n .escalations(MetricRuleTemplateAlertTemplateEscalationsArgs.builder()\n .critical(MetricRuleTemplateAlertTemplateEscalationsCriticalArgs.builder()\n .comparisonOperator(\"GreaterThanThreshold\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(\"3\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:cms:MetricRuleTemplate\n properties:\n metricRuleTemplateName: ${name}\n alertTemplates:\n - category: ecs\n metricName: cpu_total\n namespace: acs_ecs_dashboard\n ruleName: tf_example\n escalations:\n critical:\n comparisonOperator: GreaterThanThreshold\n statistics: Average\n threshold: '90'\n times: '3'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Metric Rule Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/metricRuleTemplate:MetricRuleTemplate example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Metric Rule Template resource.\n\nFor information about Cloud Monitor Service Metric Rule Template and how to use it, see [What is Metric Rule Template](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmetricruletemplate).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.cms.MetricRuleTemplate(\"example\", {\n metricRuleTemplateName: name,\n alertTemplates: [{\n category: \"ecs\",\n metricName: \"cpu_total\",\n namespace: \"acs_ecs_dashboard\",\n ruleName: \"tf_example\",\n escalations: {\n critical: {\n comparisonOperator: \"GreaterThanThreshold\",\n statistics: \"Average\",\n threshold: \"90\",\n times: \"3\",\n },\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.cms.MetricRuleTemplate(\"example\",\n metric_rule_template_name=name,\n alert_templates=[{\n \"category\": \"ecs\",\n \"metric_name\": \"cpu_total\",\n \"namespace\": \"acs_ecs_dashboard\",\n \"rule_name\": \"tf_example\",\n \"escalations\": {\n \"critical\": {\n \"comparison_operator\": \"GreaterThanThreshold\",\n \"statistics\": \"Average\",\n \"threshold\": \"90\",\n \"times\": \"3\",\n },\n },\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.Cms.MetricRuleTemplate(\"example\", new()\n {\n MetricRuleTemplateName = name,\n AlertTemplates = new[]\n {\n new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateArgs\n {\n Category = \"ecs\",\n MetricName = \"cpu_total\",\n Namespace = \"acs_ecs_dashboard\",\n RuleName = \"tf_example\",\n Escalations = new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateEscalationsArgs\n {\n Critical = new AliCloud.Cms.Inputs.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs\n {\n ComparisonOperator = \"GreaterThanThreshold\",\n Statistics = \"Average\",\n Threshold = \"90\",\n Times = \"3\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cms.NewMetricRuleTemplate(ctx, \"example\", \u0026cms.MetricRuleTemplateArgs{\n\t\t\tMetricRuleTemplateName: pulumi.String(name),\n\t\t\tAlertTemplates: cms.MetricRuleTemplateAlertTemplateArray{\n\t\t\t\t\u0026cms.MetricRuleTemplateAlertTemplateArgs{\n\t\t\t\t\tCategory: pulumi.String(\"ecs\"),\n\t\t\t\t\tMetricName: pulumi.String(\"cpu_total\"),\n\t\t\t\t\tNamespace: pulumi.String(\"acs_ecs_dashboard\"),\n\t\t\t\t\tRuleName: pulumi.String(\"tf_example\"),\n\t\t\t\t\tEscalations: \u0026cms.MetricRuleTemplateAlertTemplateEscalationsArgs{\n\t\t\t\t\t\tCritical: \u0026cms.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs{\n\t\t\t\t\t\t\tComparisonOperator: pulumi.String(\"GreaterThanThreshold\"),\n\t\t\t\t\t\t\tStatistics: pulumi.String(\"Average\"),\n\t\t\t\t\t\t\tThreshold: pulumi.String(\"90\"),\n\t\t\t\t\t\t\tTimes: pulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MetricRuleTemplate;\nimport com.pulumi.alicloud.cms.MetricRuleTemplateArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateEscalationsArgs;\nimport com.pulumi.alicloud.cms.inputs.MetricRuleTemplateAlertTemplateEscalationsCriticalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new MetricRuleTemplate(\"example\", MetricRuleTemplateArgs.builder()\n .metricRuleTemplateName(name)\n .alertTemplates(MetricRuleTemplateAlertTemplateArgs.builder()\n .category(\"ecs\")\n .metricName(\"cpu_total\")\n .namespace(\"acs_ecs_dashboard\")\n .ruleName(\"tf_example\")\n .escalations(MetricRuleTemplateAlertTemplateEscalationsArgs.builder()\n .critical(MetricRuleTemplateAlertTemplateEscalationsCriticalArgs.builder()\n .comparisonOperator(\"GreaterThanThreshold\")\n .statistics(\"Average\")\n .threshold(\"90\")\n .times(\"3\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:cms:MetricRuleTemplate\n properties:\n metricRuleTemplateName: ${name}\n alertTemplates:\n - category: ecs\n metricName: cpu_total\n namespace: acs_ecs_dashboard\n ruleName: tf_example\n escalations:\n critical:\n comparisonOperator: GreaterThanThreshold\n statistics: Average\n threshold: '90'\n times: '3'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Metric Rule Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/metricRuleTemplate:MetricRuleTemplate example \u003cid\u003e\n```\n\n",
"properties": {
"alertTemplates": {
"type": "array",
@@ -128261,7 +130249,7 @@
}
},
"alicloud:cms/monitorGroup:MonitorGroup": {
- "description": "Provides a Cloud Monitor Service Monitor Group resource.\n\nFor information about Cloud Monitor Service Monitor Group and how to use it, see [What is Monitor Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmonitorgroup).\n\n\u003e **NOTE:** Available since v1.113.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.MonitorGroup(\"example\", {monitorGroupName: \"tf-example-accmonitorgroup\"});\nconst default2 = new alicloud.cms.MonitorGroup(\"default2\", {\n contactGroups: [\"your_contact_groups\"],\n resourceGroupId: \"your_resource_group_id\",\n resourceGroupName: \"resource_group_name\",\n tags: {\n Created: \"TF\",\n For: \"Acceptance-example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.MonitorGroup(\"example\", monitor_group_name=\"tf-example-accmonitorgroup\")\ndefault2 = alicloud.cms.MonitorGroup(\"default2\",\n contact_groups=[\"your_contact_groups\"],\n resource_group_id=\"your_resource_group_id\",\n resource_group_name=\"resource_group_name\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance-example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.MonitorGroup(\"example\", new()\n {\n MonitorGroupName = \"tf-example-accmonitorgroup\",\n });\n\n var default2 = new AliCloud.Cms.MonitorGroup(\"default2\", new()\n {\n ContactGroups = new[]\n {\n \"your_contact_groups\",\n },\n ResourceGroupId = \"your_resource_group_id\",\n ResourceGroupName = \"resource_group_name\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance-example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewMonitorGroup(ctx, \"example\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(\"tf-example-accmonitorgroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMonitorGroup(ctx, \"default2\", \u0026cms.MonitorGroupArgs{\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"your_contact_groups\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(\"your_resource_group_id\"),\n\t\t\tResourceGroupName: pulumi.String(\"resource_group_name\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance-example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MonitorGroup(\"example\", MonitorGroupArgs.builder()\n .monitorGroupName(\"tf-example-accmonitorgroup\")\n .build());\n\n var default2 = new MonitorGroup(\"default2\", MonitorGroupArgs.builder()\n .contactGroups(\"your_contact_groups\")\n .resourceGroupId(\"your_resource_group_id\")\n .resourceGroupName(\"resource_group_name\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance-example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:MonitorGroup\n properties:\n monitorGroupName: tf-example-accmonitorgroup\n default2:\n type: alicloud:cms:MonitorGroup\n properties:\n contactGroups:\n - your_contact_groups\n resourceGroupId: your_resource_group_id\n resourceGroupName: resource_group_name\n tags:\n Created: TF\n For: Acceptance-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Monitor Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/monitorGroup:MonitorGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Monitor Group resource.\n\nFor information about Cloud Monitor Service Monitor Group and how to use it, see [What is Monitor Group](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmonitorgroup).\n\n\u003e **NOTE:** Available since v1.113.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.MonitorGroup(\"example\", {monitorGroupName: \"tf-example-accmonitorgroup\"});\nconst default2 = new alicloud.cms.MonitorGroup(\"default2\", {\n contactGroups: [\"your_contact_groups\"],\n resourceGroupId: \"your_resource_group_id\",\n resourceGroupName: \"resource_group_name\",\n tags: {\n Created: \"TF\",\n For: \"Acceptance-example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.MonitorGroup(\"example\", monitor_group_name=\"tf-example-accmonitorgroup\")\ndefault2 = alicloud.cms.MonitorGroup(\"default2\",\n contact_groups=[\"your_contact_groups\"],\n resource_group_id=\"your_resource_group_id\",\n resource_group_name=\"resource_group_name\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance-example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.MonitorGroup(\"example\", new()\n {\n MonitorGroupName = \"tf-example-accmonitorgroup\",\n });\n\n var default2 = new AliCloud.Cms.MonitorGroup(\"default2\", new()\n {\n ContactGroups = new[]\n {\n \"your_contact_groups\",\n },\n ResourceGroupId = \"your_resource_group_id\",\n ResourceGroupName = \"resource_group_name\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance-example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewMonitorGroup(ctx, \"example\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(\"tf-example-accmonitorgroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMonitorGroup(ctx, \"default2\", \u0026cms.MonitorGroupArgs{\n\t\t\tContactGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"your_contact_groups\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(\"your_resource_group_id\"),\n\t\t\tResourceGroupName: pulumi.String(\"resource_group_name\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance-example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new MonitorGroup(\"example\", MonitorGroupArgs.builder()\n .monitorGroupName(\"tf-example-accmonitorgroup\")\n .build());\n\n var default2 = new MonitorGroup(\"default2\", MonitorGroupArgs.builder()\n .contactGroups(\"your_contact_groups\")\n .resourceGroupId(\"your_resource_group_id\")\n .resourceGroupName(\"resource_group_name\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance-example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:MonitorGroup\n properties:\n monitorGroupName: tf-example-accmonitorgroup\n default2:\n type: alicloud:cms:MonitorGroup\n properties:\n contactGroups:\n - your_contact_groups\n resourceGroupId: your_resource_group_id\n resourceGroupName: resource_group_name\n tags:\n Created: TF\n For: Acceptance-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Monitor Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/monitorGroup:MonitorGroup example \u003cid\u003e\n```\n\n",
"properties": {
"contactGroups": {
"type": "array",
@@ -128355,7 +130343,7 @@
}
},
"alicloud:cms/monitorGroupInstances:MonitorGroupInstances": {
- "description": "Provides a Cloud Monitor Service Monitor Group Instances resource.\n\nFor information about Cloud Monitor Service Monitor Group Instances and how to use it, see [What is Monitor Group Instances](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmonitorgroupinstances).\n\n\u003e **NOTE:** Available since v1.115.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {monitorGroupName: name});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cms.MonitorGroupInstances(\"example\", {\n groupId: defaultMonitorGroup.id,\n instances: [{\n instanceId: defaultNetwork.id,\n instanceName: name,\n regionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n category: \"vpc\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\", monitor_group_name=name)\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.cms.MonitorGroupInstances(\"example\",\n group_id=default_monitor_group.id,\n instances=[{\n \"instance_id\": default_network.id,\n \"instance_name\": name,\n \"region_id\": default.regions[0].id,\n \"category\": \"vpc\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cms.MonitorGroupInstances(\"example\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n Instances = new[]\n {\n new AliCloud.Cms.Inputs.MonitorGroupInstancesInstanceArgs\n {\n InstanceId = defaultNetwork.Id,\n InstanceName = name,\n RegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Category = \"vpc\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMonitorGroupInstances(ctx, \"example\", \u0026cms.MonitorGroupInstancesArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tInstances: cms.MonitorGroupInstancesInstanceArray{\n\t\t\t\t\u0026cms.MonitorGroupInstancesInstanceArgs{\n\t\t\t\t\tInstanceId: defaultNetwork.ID(),\n\t\t\t\t\tInstanceName: pulumi.String(name),\n\t\t\t\t\tRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\t\t\tCategory: pulumi.String(\"vpc\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cms.MonitorGroupInstances;\nimport com.pulumi.alicloud.cms.MonitorGroupInstancesArgs;\nimport com.pulumi.alicloud.cms.inputs.MonitorGroupInstancesInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new MonitorGroupInstances(\"example\", MonitorGroupInstancesArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .instances(MonitorGroupInstancesInstanceArgs.builder()\n .instanceId(defaultNetwork.id())\n .instanceName(name)\n .regionId(default_.regions()[0].id())\n .category(\"vpc\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n example:\n type: alicloud:cms:MonitorGroupInstances\n properties:\n groupId: ${defaultMonitorGroup.id}\n instances:\n - instanceId: ${defaultNetwork.id}\n instanceName: ${name}\n regionId: ${default.regions[0].id}\n category: vpc\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Monitor Group Instances can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/monitorGroupInstances:MonitorGroupInstances example \u003cgroup_id\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Monitor Group Instances resource.\n\nFor information about Cloud Monitor Service Monitor Group Instances and how to use it, see [What is Monitor Group Instances](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createmonitorgroupinstances).\n\n\u003e **NOTE:** Available since v1.115.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultMonitorGroup = new alicloud.cms.MonitorGroup(\"default\", {monitorGroupName: name});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst example = new alicloud.cms.MonitorGroupInstances(\"example\", {\n groupId: defaultMonitorGroup.id,\n instances: [{\n instanceId: defaultNetwork.id,\n instanceName: name,\n regionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n category: \"vpc\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_monitor_group = alicloud.cms.MonitorGroup(\"default\", monitor_group_name=name)\ndefault = alicloud.get_regions(current=True)\nexample = alicloud.cms.MonitorGroupInstances(\"example\",\n group_id=default_monitor_group.id,\n instances=[{\n \"instance_id\": default_network.id,\n \"instance_name\": name,\n \"region_id\": default.regions[0].id,\n \"category\": \"vpc\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultMonitorGroup = new AliCloud.Cms.MonitorGroup(\"default\", new()\n {\n MonitorGroupName = name,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var example = new AliCloud.Cms.MonitorGroupInstances(\"example\", new()\n {\n GroupId = defaultMonitorGroup.Id,\n Instances = new[]\n {\n new AliCloud.Cms.Inputs.MonitorGroupInstancesInstanceArgs\n {\n InstanceId = defaultNetwork.Id,\n InstanceName = name,\n RegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n Category = \"vpc\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultMonitorGroup, err := cms.NewMonitorGroup(ctx, \"default\", \u0026cms.MonitorGroupArgs{\n\t\t\tMonitorGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewMonitorGroupInstances(ctx, \"example\", \u0026cms.MonitorGroupInstancesArgs{\n\t\t\tGroupId: defaultMonitorGroup.ID(),\n\t\t\tInstances: cms.MonitorGroupInstancesInstanceArray{\n\t\t\t\t\u0026cms.MonitorGroupInstancesInstanceArgs{\n\t\t\t\t\tInstanceId: defaultNetwork.ID(),\n\t\t\t\t\tInstanceName: pulumi.String(name),\n\t\t\t\t\tRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\t\t\tCategory: pulumi.String(\"vpc\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.cms.MonitorGroup;\nimport com.pulumi.alicloud.cms.MonitorGroupArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.cms.MonitorGroupInstances;\nimport com.pulumi.alicloud.cms.MonitorGroupInstancesArgs;\nimport com.pulumi.alicloud.cms.inputs.MonitorGroupInstancesInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultMonitorGroup = new MonitorGroup(\"defaultMonitorGroup\", MonitorGroupArgs.builder()\n .monitorGroupName(name)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var example = new MonitorGroupInstances(\"example\", MonitorGroupInstancesArgs.builder()\n .groupId(defaultMonitorGroup.id())\n .instances(MonitorGroupInstancesInstanceArgs.builder()\n .instanceId(defaultNetwork.id())\n .instanceName(name)\n .regionId(default_.regions()[0].id())\n .category(\"vpc\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/16\n defaultMonitorGroup:\n type: alicloud:cms:MonitorGroup\n name: default\n properties:\n monitorGroupName: ${name}\n example:\n type: alicloud:cms:MonitorGroupInstances\n properties:\n groupId: ${defaultMonitorGroup.id}\n instances:\n - instanceId: ${defaultNetwork.id}\n instanceName: ${name}\n regionId: ${default.regions[0].id}\n category: vpc\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Monitor Group Instances can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/monitorGroupInstances:MonitorGroupInstances example \u003cgroup_id\u003e\n```\n\n",
"properties": {
"groupId": {
"type": "string",
@@ -128411,7 +130399,7 @@
}
},
"alicloud:cms/namespace:Namespace": {
- "description": "Provides a Cloud Monitor Service Namespace resource.\n\nFor information about Cloud Monitor Service Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitornamespace).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.Namespace(\"example\", {\n namespace: \"tf-example\",\n specification: \"cms.s1.large\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.Namespace(\"example\",\n namespace=\"tf-example\",\n specification=\"cms.s1.large\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.Namespace(\"example\", new()\n {\n NamespaceName = \"tf-example\",\n Specification = \"cms.s1.large\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewNamespace(ctx, \"example\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(\"tf-example\"),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .namespace(\"tf-example\")\n .specification(\"cms.s1.large\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:Namespace\n properties:\n namespace: tf-example\n specification: cms.s1.large\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/namespace:Namespace example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Namespace resource.\n\nFor information about Cloud Monitor Service Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/cloudmonitor/latest/createhybridmonitornamespace).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.cms.Namespace(\"example\", {\n namespace: \"tf-example\",\n specification: \"cms.s1.large\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.cms.Namespace(\"example\",\n namespace=\"tf-example\",\n specification=\"cms.s1.large\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Cms.Namespace(\"example\", new()\n {\n NamespaceName = \"tf-example\",\n Specification = \"cms.s1.large\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cms.NewNamespace(ctx, \"example\", \u0026cms.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(\"tf-example\"),\n\t\t\tSpecification: pulumi.String(\"cms.s1.large\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.Namespace;\nimport com.pulumi.alicloud.cms.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .namespace(\"tf-example\")\n .specification(\"cms.s1.large\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:cms:Namespace\n properties:\n namespace: tf-example\n specification: cms.s1.large\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/namespace:Namespace example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -128484,7 +130472,7 @@
}
},
"alicloud:cms/siteMonitor:SiteMonitor": {
- "description": "Provides a Cloud Monitor Service Site Monitor resource.\n\nDescribes the SITE monitoring tasks created by the user.\n\nFor information about Cloud Monitor Service Site Monitor and how to use it, see [What is Site Monitor](https://next.api.alibabacloud.com/document/Cms/2019-01-01/CreateSiteMonitor).\n\n\u003e **NOTE:** Available since v1.72.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst basic = new alicloud.cms.SiteMonitor(\"basic\", {\n address: \"https://www.alibabacloud.com\",\n taskName: name,\n taskType: \"HTTP\",\n interval: \"5\",\n ispCities: [{\n isp: \"232\",\n city: \"641\",\n type: \"IDC\",\n }],\n optionJson: {\n responseContent: \"example\",\n expectValue: \"example\",\n port: 81,\n isBaseEncode: true,\n pingNum: 5,\n matchRule: 1,\n failureRate: \"0.3\",\n requestContent: \"example\",\n attempts: 4,\n requestFormat: \"hex\",\n password: \"YourPassword123!\",\n diagnosisPing: true,\n responseFormat: \"hex\",\n cookie: \"key2=value2\",\n pingPort: 443,\n userName: \"example\",\n dnsMatchRule: \"DNS_IN\",\n timeout: 3000,\n dnsServer: \"223.6.6.6\",\n diagnosisMtr: true,\n header: \"key2:value2\",\n minTlsVersion: \"1.1\",\n pingType: \"udp\",\n dnsType: \"NS\",\n dnsHijackWhitelist: \"DnsHijackWhitelist\",\n httpMethod: \"post\",\n assertions: [{\n operator: \"lessThan\",\n target: \"300\",\n type: \"response_time\",\n }],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nbasic = alicloud.cms.SiteMonitor(\"basic\",\n address=\"https://www.alibabacloud.com\",\n task_name=name,\n task_type=\"HTTP\",\n interval=\"5\",\n isp_cities=[{\n \"isp\": \"232\",\n \"city\": \"641\",\n \"type\": \"IDC\",\n }],\n option_json={\n \"response_content\": \"example\",\n \"expect_value\": \"example\",\n \"port\": 81,\n \"is_base_encode\": True,\n \"ping_num\": 5,\n \"match_rule\": 1,\n \"failure_rate\": \"0.3\",\n \"request_content\": \"example\",\n \"attempts\": 4,\n \"request_format\": \"hex\",\n \"password\": \"YourPassword123!\",\n \"diagnosis_ping\": True,\n \"response_format\": \"hex\",\n \"cookie\": \"key2=value2\",\n \"ping_port\": 443,\n \"user_name\": \"example\",\n \"dns_match_rule\": \"DNS_IN\",\n \"timeout\": 3000,\n \"dns_server\": \"223.6.6.6\",\n \"diagnosis_mtr\": True,\n \"header\": \"key2:value2\",\n \"min_tls_version\": \"1.1\",\n \"ping_type\": \"udp\",\n \"dns_type\": \"NS\",\n \"dns_hijack_whitelist\": \"DnsHijackWhitelist\",\n \"http_method\": \"post\",\n \"assertions\": [{\n \"operator\": \"lessThan\",\n \"target\": \"300\",\n \"type\": \"response_time\",\n }],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var basic = new AliCloud.Cms.SiteMonitor(\"basic\", new()\n {\n Address = \"https://www.alibabacloud.com\",\n TaskName = name,\n TaskType = \"HTTP\",\n Interval = \"5\",\n IspCities = new[]\n {\n new AliCloud.Cms.Inputs.SiteMonitorIspCityArgs\n {\n Isp = \"232\",\n City = \"641\",\n Type = \"IDC\",\n },\n },\n OptionJson = new AliCloud.Cms.Inputs.SiteMonitorOptionJsonArgs\n {\n ResponseContent = \"example\",\n ExpectValue = \"example\",\n Port = 81,\n IsBaseEncode = true,\n PingNum = 5,\n MatchRule = 1,\n FailureRate = \"0.3\",\n RequestContent = \"example\",\n Attempts = 4,\n RequestFormat = \"hex\",\n Password = \"YourPassword123!\",\n DiagnosisPing = true,\n ResponseFormat = \"hex\",\n Cookie = \"key2=value2\",\n PingPort = 443,\n UserName = \"example\",\n DnsMatchRule = \"DNS_IN\",\n Timeout = 3000,\n DnsServer = \"223.6.6.6\",\n DiagnosisMtr = true,\n Header = \"key2:value2\",\n MinTlsVersion = \"1.1\",\n PingType = \"udp\",\n DnsType = \"NS\",\n DnsHijackWhitelist = \"DnsHijackWhitelist\",\n HttpMethod = \"post\",\n Assertions = new[]\n {\n new AliCloud.Cms.Inputs.SiteMonitorOptionJsonAssertionArgs\n {\n Operator = \"lessThan\",\n Target = \"300\",\n Type = \"response_time\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cms.NewSiteMonitor(ctx, \"basic\", \u0026cms.SiteMonitorArgs{\n\t\t\tAddress: pulumi.String(\"https://www.alibabacloud.com\"),\n\t\t\tTaskName: pulumi.String(name),\n\t\t\tTaskType: pulumi.String(\"HTTP\"),\n\t\t\tInterval: pulumi.String(\"5\"),\n\t\t\tIspCities: cms.SiteMonitorIspCityArray{\n\t\t\t\t\u0026cms.SiteMonitorIspCityArgs{\n\t\t\t\t\tIsp: pulumi.String(\"232\"),\n\t\t\t\t\tCity: pulumi.String(\"641\"),\n\t\t\t\t\tType: pulumi.String(\"IDC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOptionJson: \u0026cms.SiteMonitorOptionJsonArgs{\n\t\t\t\tResponseContent: pulumi.String(\"example\"),\n\t\t\t\tExpectValue: pulumi.String(\"example\"),\n\t\t\t\tPort: pulumi.Int(81),\n\t\t\t\tIsBaseEncode: pulumi.Bool(true),\n\t\t\t\tPingNum: pulumi.Int(5),\n\t\t\t\tMatchRule: pulumi.Int(1),\n\t\t\t\tFailureRate: pulumi.String(\"0.3\"),\n\t\t\t\tRequestContent: pulumi.String(\"example\"),\n\t\t\t\tAttempts: pulumi.Int(4),\n\t\t\t\tRequestFormat: pulumi.String(\"hex\"),\n\t\t\t\tPassword: pulumi.String(\"YourPassword123!\"),\n\t\t\t\tDiagnosisPing: pulumi.Bool(true),\n\t\t\t\tResponseFormat: pulumi.String(\"hex\"),\n\t\t\t\tCookie: pulumi.String(\"key2=value2\"),\n\t\t\t\tPingPort: pulumi.Int(443),\n\t\t\t\tUserName: pulumi.String(\"example\"),\n\t\t\t\tDnsMatchRule: pulumi.String(\"DNS_IN\"),\n\t\t\t\tTimeout: pulumi.Int(3000),\n\t\t\t\tDnsServer: pulumi.String(\"223.6.6.6\"),\n\t\t\t\tDiagnosisMtr: pulumi.Bool(true),\n\t\t\t\tHeader: pulumi.String(\"key2:value2\"),\n\t\t\t\tMinTlsVersion: pulumi.String(\"1.1\"),\n\t\t\t\tPingType: pulumi.String(\"udp\"),\n\t\t\t\tDnsType: pulumi.String(\"NS\"),\n\t\t\t\tDnsHijackWhitelist: pulumi.String(\"DnsHijackWhitelist\"),\n\t\t\t\tHttpMethod: pulumi.String(\"post\"),\n\t\t\t\tAssertions: cms.SiteMonitorOptionJsonAssertionArray{\n\t\t\t\t\t\u0026cms.SiteMonitorOptionJsonAssertionArgs{\n\t\t\t\t\t\tOperator: pulumi.String(\"lessThan\"),\n\t\t\t\t\t\tTarget: pulumi.String(\"300\"),\n\t\t\t\t\t\tType: pulumi.String(\"response_time\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.SiteMonitor;\nimport com.pulumi.alicloud.cms.SiteMonitorArgs;\nimport com.pulumi.alicloud.cms.inputs.SiteMonitorIspCityArgs;\nimport com.pulumi.alicloud.cms.inputs.SiteMonitorOptionJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var basic = new SiteMonitor(\"basic\", SiteMonitorArgs.builder()\n .address(\"https://www.alibabacloud.com\")\n .taskName(name)\n .taskType(\"HTTP\")\n .interval(\"5\")\n .ispCities(SiteMonitorIspCityArgs.builder()\n .isp(\"232\")\n .city(\"641\")\n .type(\"IDC\")\n .build())\n .optionJson(SiteMonitorOptionJsonArgs.builder()\n .responseContent(\"example\")\n .expectValue(\"example\")\n .port(81)\n .isBaseEncode(true)\n .pingNum(5)\n .matchRule(1)\n .failureRate(\"0.3\")\n .requestContent(\"example\")\n .attempts(4)\n .requestFormat(\"hex\")\n .password(\"YourPassword123!\")\n .diagnosisPing(true)\n .responseFormat(\"hex\")\n .cookie(\"key2=value2\")\n .pingPort(443)\n .userName(\"example\")\n .dnsMatchRule(\"DNS_IN\")\n .timeout(3000)\n .dnsServer(\"223.6.6.6\")\n .diagnosisMtr(true)\n .header(\"key2:value2\")\n .minTlsVersion(\"1.1\")\n .pingType(\"udp\")\n .dnsType(\"NS\")\n .dnsHijackWhitelist(\"DnsHijackWhitelist\")\n .httpMethod(\"post\")\n .assertions(SiteMonitorOptionJsonAssertionArgs.builder()\n .operator(\"lessThan\")\n .target(\"300\")\n .type(\"response_time\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n basic:\n type: alicloud:cms:SiteMonitor\n properties:\n address: https://www.alibabacloud.com\n taskName: ${name}\n taskType: HTTP\n interval: 5\n ispCities:\n - isp: '232'\n city: '641'\n type: IDC\n optionJson:\n responseContent: example\n expectValue: example\n port: 81\n isBaseEncode: true\n pingNum: 5\n matchRule: 1\n failureRate: '0.3'\n requestContent: example\n attempts: 4\n requestFormat: hex\n password: YourPassword123!\n diagnosisPing: true\n responseFormat: hex\n cookie: key2=value2\n pingPort: 443\n userName: example\n dnsMatchRule: DNS_IN\n timeout: 3000\n dnsServer: 223.6.6.6\n diagnosisMtr: true\n header: key2:value2\n minTlsVersion: '1.1'\n pingType: udp\n dnsType: NS\n dnsHijackWhitelist: DnsHijackWhitelist\n httpMethod: post\n assertions:\n - operator: lessThan\n target: 300\n type: response_time\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Site Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/siteMonitor:SiteMonitor example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Site Monitor resource.\n\nDescribes the SITE monitoring tasks created by the user.\n\nFor information about Cloud Monitor Service Site Monitor and how to use it, see [What is Site Monitor](https://next.api.alibabacloud.com/document/Cms/2019-01-01/CreateSiteMonitor).\n\n\u003e **NOTE:** Available since v1.72.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst basic = new alicloud.cms.SiteMonitor(\"basic\", {\n address: \"https://www.alibabacloud.com\",\n taskName: name,\n taskType: \"HTTP\",\n interval: \"5\",\n ispCities: [{\n isp: \"232\",\n city: \"641\",\n type: \"IDC\",\n }],\n optionJson: {\n responseContent: \"example\",\n expectValue: \"example\",\n port: 81,\n isBaseEncode: true,\n pingNum: 5,\n matchRule: 1,\n failureRate: \"0.3\",\n requestContent: \"example\",\n attempts: 4,\n requestFormat: \"hex\",\n password: \"YourPassword123!\",\n diagnosisPing: true,\n responseFormat: \"hex\",\n cookie: \"key2=value2\",\n pingPort: 443,\n userName: \"example\",\n dnsMatchRule: \"DNS_IN\",\n timeout: 3000,\n dnsServer: \"223.6.6.6\",\n diagnosisMtr: true,\n header: \"key2:value2\",\n minTlsVersion: \"1.1\",\n pingType: \"udp\",\n dnsType: \"NS\",\n dnsHijackWhitelist: \"DnsHijackWhitelist\",\n httpMethod: \"post\",\n assertions: [{\n operator: \"lessThan\",\n target: \"300\",\n type: \"response_time\",\n }],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nbasic = alicloud.cms.SiteMonitor(\"basic\",\n address=\"https://www.alibabacloud.com\",\n task_name=name,\n task_type=\"HTTP\",\n interval=\"5\",\n isp_cities=[{\n \"isp\": \"232\",\n \"city\": \"641\",\n \"type\": \"IDC\",\n }],\n option_json={\n \"response_content\": \"example\",\n \"expect_value\": \"example\",\n \"port\": 81,\n \"is_base_encode\": True,\n \"ping_num\": 5,\n \"match_rule\": 1,\n \"failure_rate\": \"0.3\",\n \"request_content\": \"example\",\n \"attempts\": 4,\n \"request_format\": \"hex\",\n \"password\": \"YourPassword123!\",\n \"diagnosis_ping\": True,\n \"response_format\": \"hex\",\n \"cookie\": \"key2=value2\",\n \"ping_port\": 443,\n \"user_name\": \"example\",\n \"dns_match_rule\": \"DNS_IN\",\n \"timeout\": 3000,\n \"dns_server\": \"223.6.6.6\",\n \"diagnosis_mtr\": True,\n \"header\": \"key2:value2\",\n \"min_tls_version\": \"1.1\",\n \"ping_type\": \"udp\",\n \"dns_type\": \"NS\",\n \"dns_hijack_whitelist\": \"DnsHijackWhitelist\",\n \"http_method\": \"post\",\n \"assertions\": [{\n \"operator\": \"lessThan\",\n \"target\": \"300\",\n \"type\": \"response_time\",\n }],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var basic = new AliCloud.Cms.SiteMonitor(\"basic\", new()\n {\n Address = \"https://www.alibabacloud.com\",\n TaskName = name,\n TaskType = \"HTTP\",\n Interval = \"5\",\n IspCities = new[]\n {\n new AliCloud.Cms.Inputs.SiteMonitorIspCityArgs\n {\n Isp = \"232\",\n City = \"641\",\n Type = \"IDC\",\n },\n },\n OptionJson = new AliCloud.Cms.Inputs.SiteMonitorOptionJsonArgs\n {\n ResponseContent = \"example\",\n ExpectValue = \"example\",\n Port = 81,\n IsBaseEncode = true,\n PingNum = 5,\n MatchRule = 1,\n FailureRate = \"0.3\",\n RequestContent = \"example\",\n Attempts = 4,\n RequestFormat = \"hex\",\n Password = \"YourPassword123!\",\n DiagnosisPing = true,\n ResponseFormat = \"hex\",\n Cookie = \"key2=value2\",\n PingPort = 443,\n UserName = \"example\",\n DnsMatchRule = \"DNS_IN\",\n Timeout = 3000,\n DnsServer = \"223.6.6.6\",\n DiagnosisMtr = true,\n Header = \"key2:value2\",\n MinTlsVersion = \"1.1\",\n PingType = \"udp\",\n DnsType = \"NS\",\n DnsHijackWhitelist = \"DnsHijackWhitelist\",\n HttpMethod = \"post\",\n Assertions = new[]\n {\n new AliCloud.Cms.Inputs.SiteMonitorOptionJsonAssertionArgs\n {\n Operator = \"lessThan\",\n Target = \"300\",\n Type = \"response_time\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := cms.NewSiteMonitor(ctx, \"basic\", \u0026cms.SiteMonitorArgs{\n\t\t\tAddress: pulumi.String(\"https://www.alibabacloud.com\"),\n\t\t\tTaskName: pulumi.String(name),\n\t\t\tTaskType: pulumi.String(\"HTTP\"),\n\t\t\tInterval: pulumi.String(\"5\"),\n\t\t\tIspCities: cms.SiteMonitorIspCityArray{\n\t\t\t\t\u0026cms.SiteMonitorIspCityArgs{\n\t\t\t\t\tIsp: pulumi.String(\"232\"),\n\t\t\t\t\tCity: pulumi.String(\"641\"),\n\t\t\t\t\tType: pulumi.String(\"IDC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOptionJson: \u0026cms.SiteMonitorOptionJsonArgs{\n\t\t\t\tResponseContent: pulumi.String(\"example\"),\n\t\t\t\tExpectValue: pulumi.String(\"example\"),\n\t\t\t\tPort: pulumi.Int(81),\n\t\t\t\tIsBaseEncode: pulumi.Bool(true),\n\t\t\t\tPingNum: pulumi.Int(5),\n\t\t\t\tMatchRule: pulumi.Int(1),\n\t\t\t\tFailureRate: pulumi.String(\"0.3\"),\n\t\t\t\tRequestContent: pulumi.String(\"example\"),\n\t\t\t\tAttempts: pulumi.Int(4),\n\t\t\t\tRequestFormat: pulumi.String(\"hex\"),\n\t\t\t\tPassword: pulumi.String(\"YourPassword123!\"),\n\t\t\t\tDiagnosisPing: pulumi.Bool(true),\n\t\t\t\tResponseFormat: pulumi.String(\"hex\"),\n\t\t\t\tCookie: pulumi.String(\"key2=value2\"),\n\t\t\t\tPingPort: pulumi.Int(443),\n\t\t\t\tUserName: pulumi.String(\"example\"),\n\t\t\t\tDnsMatchRule: pulumi.String(\"DNS_IN\"),\n\t\t\t\tTimeout: pulumi.Int(3000),\n\t\t\t\tDnsServer: pulumi.String(\"223.6.6.6\"),\n\t\t\t\tDiagnosisMtr: pulumi.Bool(true),\n\t\t\t\tHeader: pulumi.String(\"key2:value2\"),\n\t\t\t\tMinTlsVersion: pulumi.String(\"1.1\"),\n\t\t\t\tPingType: pulumi.String(\"udp\"),\n\t\t\t\tDnsType: pulumi.String(\"NS\"),\n\t\t\t\tDnsHijackWhitelist: pulumi.String(\"DnsHijackWhitelist\"),\n\t\t\t\tHttpMethod: pulumi.String(\"post\"),\n\t\t\t\tAssertions: cms.SiteMonitorOptionJsonAssertionArray{\n\t\t\t\t\t\u0026cms.SiteMonitorOptionJsonAssertionArgs{\n\t\t\t\t\t\tOperator: pulumi.String(\"lessThan\"),\n\t\t\t\t\t\tTarget: pulumi.String(\"300\"),\n\t\t\t\t\t\tType: pulumi.String(\"response_time\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cms.SiteMonitor;\nimport com.pulumi.alicloud.cms.SiteMonitorArgs;\nimport com.pulumi.alicloud.cms.inputs.SiteMonitorIspCityArgs;\nimport com.pulumi.alicloud.cms.inputs.SiteMonitorOptionJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var basic = new SiteMonitor(\"basic\", SiteMonitorArgs.builder()\n .address(\"https://www.alibabacloud.com\")\n .taskName(name)\n .taskType(\"HTTP\")\n .interval(\"5\")\n .ispCities(SiteMonitorIspCityArgs.builder()\n .isp(\"232\")\n .city(\"641\")\n .type(\"IDC\")\n .build())\n .optionJson(SiteMonitorOptionJsonArgs.builder()\n .responseContent(\"example\")\n .expectValue(\"example\")\n .port(81)\n .isBaseEncode(true)\n .pingNum(5)\n .matchRule(1)\n .failureRate(\"0.3\")\n .requestContent(\"example\")\n .attempts(4)\n .requestFormat(\"hex\")\n .password(\"YourPassword123!\")\n .diagnosisPing(true)\n .responseFormat(\"hex\")\n .cookie(\"key2=value2\")\n .pingPort(443)\n .userName(\"example\")\n .dnsMatchRule(\"DNS_IN\")\n .timeout(3000)\n .dnsServer(\"223.6.6.6\")\n .diagnosisMtr(true)\n .header(\"key2:value2\")\n .minTlsVersion(\"1.1\")\n .pingType(\"udp\")\n .dnsType(\"NS\")\n .dnsHijackWhitelist(\"DnsHijackWhitelist\")\n .httpMethod(\"post\")\n .assertions(SiteMonitorOptionJsonAssertionArgs.builder()\n .operator(\"lessThan\")\n .target(\"300\")\n .type(\"response_time\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n basic:\n type: alicloud:cms:SiteMonitor\n properties:\n address: https://www.alibabacloud.com\n taskName: ${name}\n taskType: HTTP\n interval: 5\n ispCities:\n - isp: '232'\n city: '641'\n type: IDC\n optionJson:\n responseContent: example\n expectValue: example\n port: 81\n isBaseEncode: true\n pingNum: 5\n matchRule: 1\n failureRate: '0.3'\n requestContent: example\n attempts: 4\n requestFormat: hex\n password: YourPassword123!\n diagnosisPing: true\n responseFormat: hex\n cookie: key2=value2\n pingPort: 443\n userName: example\n dnsMatchRule: DNS_IN\n timeout: 3000\n dnsServer: 223.6.6.6\n diagnosisMtr: true\n header: key2:value2\n minTlsVersion: '1.1'\n pingType: udp\n dnsType: NS\n dnsHijackWhitelist: DnsHijackWhitelist\n httpMethod: post\n assertions:\n - operator: lessThan\n target: 300\n type: response_time\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Site Monitor can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/siteMonitor:SiteMonitor example \u003cid\u003e\n```\n\n",
"properties": {
"address": {
"type": "string",
@@ -128706,7 +130694,7 @@
}
},
"alicloud:cms/slsGroup:SlsGroup": {
- "description": "Provides a Cloud Monitor Service Sls Group resource.\n\nFor information about Cloud Monitor Service Sls Group and how to use it, see [What is Sls Group](https://www.alibabacloud.com/help/doc-detail/28608.htm).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultSlsGroup = new alicloud.cms.SlsGroup(\"default\", {\n slsGroupConfigs: [{\n slsUserId: _default.then(_default =\u003e _default.id),\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n slsRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n }],\n slsGroupDescription: name,\n slsGroupName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_sls_group = alicloud.cms.SlsGroup(\"default\",\n sls_group_configs=[{\n \"sls_user_id\": default.id,\n \"sls_logstore\": default_store.logstore_name,\n \"sls_project\": default_project.project_name,\n \"sls_region\": default_get_regions.regions[0].id,\n }],\n sls_group_description=name,\n sls_group_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultSlsGroup = new AliCloud.Cms.SlsGroup(\"default\", new()\n {\n SlsGroupConfigs = new[]\n {\n new AliCloud.Cms.Inputs.SlsGroupSlsGroupConfigArgs\n {\n SlsUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n SlsRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n },\n },\n SlsGroupDescription = name,\n SlsGroupName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewSlsGroup(ctx, \"default\", \u0026cms.SlsGroupArgs{\n\t\t\tSlsGroupConfigs: cms.SlsGroupSlsGroupConfigArray{\n\t\t\t\t\u0026cms.SlsGroupSlsGroupConfigArgs{\n\t\t\t\t\tSlsUserId: pulumi.String(_default.Id),\n\t\t\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t\t\t\tSlsRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSlsGroupDescription: pulumi.String(name),\n\t\t\tSlsGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cms.SlsGroup;\nimport com.pulumi.alicloud.cms.SlsGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.SlsGroupSlsGroupConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultSlsGroup = new SlsGroup(\"defaultSlsGroup\", SlsGroupArgs.builder()\n .slsGroupConfigs(SlsGroupSlsGroupConfigArgs.builder()\n .slsUserId(default_.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .slsRegion(defaultGetRegions.regions()[0].id())\n .build())\n .slsGroupDescription(name)\n .slsGroupName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultSlsGroup:\n type: alicloud:cms:SlsGroup\n name: default\n properties:\n slsGroupConfigs:\n - slsUserId: ${default.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\n slsRegion: ${defaultGetRegions.regions[0].id}\n slsGroupDescription: ${name}\n slsGroupName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud Monitor Service Sls Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/slsGroup:SlsGroup example \u003csls_group_name\u003e\n```\n\n",
+ "description": "Provides a Cloud Monitor Service Sls Group resource.\n\nFor information about Cloud Monitor Service Sls Group and how to use it, see [What is Sls Group](https://www.alibabacloud.com/help/doc-detail/28608.htm).\n\n\u003e **NOTE:** Available since v1.171.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getAccount({});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultUuid = new random.index.Uuid(\"default\", {});\nconst defaultProject = new alicloud.log.Project(\"default\", {projectName: std.replace({\n text: defaultUuid.result,\n search: \"-\",\n replace: \"\",\n}).then(invoke =\u003e std.substr({\n input: `tf-example-${invoke.result}`,\n offset: 0,\n length: 16,\n})).then(invoke =\u003e invoke.result)});\nconst defaultStore = new alicloud.log.Store(\"default\", {\n projectName: defaultProject.projectName,\n logstoreName: name,\n shardCount: 3,\n autoSplit: true,\n maxSplitShardCount: 60,\n appendMeta: true,\n});\nconst defaultSlsGroup = new alicloud.cms.SlsGroup(\"default\", {\n slsGroupConfigs: [{\n slsUserId: _default.then(_default =\u003e _default.id),\n slsLogstore: defaultStore.logstoreName,\n slsProject: defaultProject.projectName,\n slsRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n }],\n slsGroupDescription: name,\n slsGroupName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_account()\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_uuid = random.index.Uuid(\"default\")\ndefault_project = alicloud.log.Project(\"default\", project_name=std.substr(input=f\"tf-example-{std.replace(text=default_uuid['result'],\n search='-',\n replace='').result}\",\n offset=0,\n length=16).result)\ndefault_store = alicloud.log.Store(\"default\",\n project_name=default_project.project_name,\n logstore_name=name,\n shard_count=3,\n auto_split=True,\n max_split_shard_count=60,\n append_meta=True)\ndefault_sls_group = alicloud.cms.SlsGroup(\"default\",\n sls_group_configs=[{\n \"sls_user_id\": default.id,\n \"sls_logstore\": default_store.logstore_name,\n \"sls_project\": default_project.project_name,\n \"sls_region\": default_get_regions.regions[0].id,\n }],\n sls_group_description=name,\n sls_group_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultUuid = new Random.Index.Uuid(\"default\");\n\n var defaultProject = new AliCloud.Log.Project(\"default\", new()\n {\n ProjectName = Std.Replace.Invoke(new()\n {\n Text = defaultUuid.Result,\n Search = \"-\",\n Replace = \"\",\n }).Apply(invoke =\u003e Std.Substr.Invoke(new()\n {\n Input = $\"tf-example-{invoke.Result}\",\n Offset = 0,\n Length = 16,\n })).Apply(invoke =\u003e invoke.Result),\n });\n\n var defaultStore = new AliCloud.Log.Store(\"default\", new()\n {\n ProjectName = defaultProject.ProjectName,\n LogstoreName = name,\n ShardCount = 3,\n AutoSplit = true,\n MaxSplitShardCount = 60,\n AppendMeta = true,\n });\n\n var defaultSlsGroup = new AliCloud.Cms.SlsGroup(\"default\", new()\n {\n SlsGroupConfigs = new[]\n {\n new AliCloud.Cms.Inputs.SlsGroupSlsGroupConfigArgs\n {\n SlsUserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n SlsLogstore = defaultStore.LogstoreName,\n SlsProject = defaultProject.ProjectName,\n SlsRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n },\n },\n SlsGroupDescription = name,\n SlsGroupName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/log\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUuid, err := random.NewUuid(ctx, \"default\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeSubstr, err := std.Substr(ctx, \u0026std.SubstrArgs{\n\t\t\tInput: fmt.Sprintf(\"tf-example-%v\", std.Replace(ctx, \u0026std.ReplaceArgs{\n\t\t\t\tText: defaultUuid.Result,\n\t\t\t\tSearch: \"-\",\n\t\t\t\tReplace: \"\",\n\t\t\t}, nil).Result),\n\t\t\tOffset: 0,\n\t\t\tLength: 16,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultProject, err := log.NewProject(ctx, \"default\", \u0026log.ProjectArgs{\n\t\t\tProjectName: pulumi.String(invokeSubstr.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultStore, err := log.NewStore(ctx, \"default\", \u0026log.StoreArgs{\n\t\t\tProjectName: defaultProject.ProjectName,\n\t\t\tLogstoreName: pulumi.String(name),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tAutoSplit: pulumi.Bool(true),\n\t\t\tMaxSplitShardCount: pulumi.Int(60),\n\t\t\tAppendMeta: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cms.NewSlsGroup(ctx, \"default\", \u0026cms.SlsGroupArgs{\n\t\t\tSlsGroupConfigs: cms.SlsGroupSlsGroupConfigArray{\n\t\t\t\t\u0026cms.SlsGroupSlsGroupConfigArgs{\n\t\t\t\t\tSlsUserId: pulumi.String(_default.Id),\n\t\t\t\t\tSlsLogstore: defaultStore.LogstoreName,\n\t\t\t\t\tSlsProject: defaultProject.ProjectName,\n\t\t\t\t\tSlsRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSlsGroupDescription: pulumi.String(name),\n\t\t\tSlsGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Uuid;\nimport com.pulumi.alicloud.log.Project;\nimport com.pulumi.alicloud.log.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.ReplaceArgs;\nimport com.pulumi.std.inputs.SubstrArgs;\nimport com.pulumi.alicloud.log.Store;\nimport com.pulumi.alicloud.log.StoreArgs;\nimport com.pulumi.alicloud.cms.SlsGroup;\nimport com.pulumi.alicloud.cms.SlsGroupArgs;\nimport com.pulumi.alicloud.cms.inputs.SlsGroupSlsGroupConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultUuid = new Uuid(\"defaultUuid\");\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .projectName(StdFunctions.substr(SubstrArgs.builder()\n .input(String.format(\"tf-example-%s\", StdFunctions.replace(ReplaceArgs.builder()\n .text(defaultUuid.result())\n .search(\"-\")\n .replace(\"\")\n .build()).result()))\n .offset(0)\n .length(16)\n .build()).result())\n .build());\n\n var defaultStore = new Store(\"defaultStore\", StoreArgs.builder()\n .projectName(defaultProject.projectName())\n .logstoreName(name)\n .shardCount(3)\n .autoSplit(true)\n .maxSplitShardCount(60)\n .appendMeta(true)\n .build());\n\n var defaultSlsGroup = new SlsGroup(\"defaultSlsGroup\", SlsGroupArgs.builder()\n .slsGroupConfigs(SlsGroupSlsGroupConfigArgs.builder()\n .slsUserId(default_.id())\n .slsLogstore(defaultStore.logstoreName())\n .slsProject(defaultProject.projectName())\n .slsRegion(defaultGetRegions.regions()[0].id())\n .build())\n .slsGroupDescription(name)\n .slsGroupName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultUuid:\n type: random:Uuid\n name: default\n defaultProject:\n type: alicloud:log:Project\n name: default\n properties:\n projectName:\n fn::invoke:\n function: std:substr\n arguments:\n input:\n fn::join:\n - \"\"\n - - tf-example-\n - fn::invoke:\n function: std:replace\n arguments:\n text: ${defaultUuid.result}\n search: '-'\n replace: \"\"\n return: result\n offset: 0\n length: 16\n return: result\n defaultStore:\n type: alicloud:log:Store\n name: default\n properties:\n projectName: ${defaultProject.projectName}\n logstoreName: ${name}\n shardCount: 3\n autoSplit: true\n maxSplitShardCount: 60\n appendMeta: true\n defaultSlsGroup:\n type: alicloud:cms:SlsGroup\n name: default\n properties:\n slsGroupConfigs:\n - slsUserId: ${default.id}\n slsLogstore: ${defaultStore.logstoreName}\n slsProject: ${defaultProject.projectName}\n slsRegion: ${defaultGetRegions.regions[0].id}\n slsGroupDescription: ${name}\n slsGroupName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Monitor Service Sls Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cms/slsGroup:SlsGroup example \u003csls_group_name\u003e\n```\n\n",
"properties": {
"slsGroupConfigs": {
"type": "array",
@@ -128774,7 +130762,7 @@
}
},
"alicloud:compute/nestServiceInstance:NestServiceInstance": {
- "description": "Provides a Compute Nest Service Instance resource.\n\nFor information about Compute Nest Service Instance and how to use it, see [What is Service Instance](https://www.alibabacloud.com/help/zh/compute-nest/developer-reference/api-computenest-2021-06-01-createserviceinstance).\n\n\u003e **NOTE:** Available since v1.205.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetZones = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst defaultNestServiceInstance = new alicloud.compute.NestServiceInstance(\"default\", {\n serviceId: \"service-dd475e6e468348799f0f\",\n serviceVersion: \"1\",\n serviceInstanceName: name,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n paymentType: \"Permanent\",\n operationMetadata: {\n operationStartTime: \"1681281179000\",\n operationEndTime: \"1681367579000\",\n resources: pulumi.interpolate` {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"${defaultInstance.id}\\\"\n ]\n } \n }\n`,\n },\n tags: {\n Created: \"TF\",\n For: \"ServiceInstance\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_zones = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_zones.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\ndefault_nest_service_instance = alicloud.compute.NestServiceInstance(\"default\",\n service_id=\"service-dd475e6e468348799f0f\",\n service_version=\"1\",\n service_instance_name=name,\n resource_group_id=default.groups[0].id,\n payment_type=\"Permanent\",\n operation_metadata={\n \"operation_start_time\": \"1681281179000\",\n \"operation_end_time\": \"1681367579000\",\n \"resources\": default_instance.id.apply(lambda id: f\"\"\" {{\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {{\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"{id}\\\"\n ]\n }} \n }}\n\"\"\"),\n },\n tags={\n \"Created\": \"TF\",\n \"For\": \"ServiceInstance\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultNestServiceInstance = new AliCloud.Compute.NestServiceInstance(\"default\", new()\n {\n ServiceId = \"service-dd475e6e468348799f0f\",\n ServiceVersion = \"1\",\n ServiceInstanceName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n PaymentType = \"Permanent\",\n OperationMetadata = new AliCloud.Compute.Inputs.NestServiceInstanceOperationMetadataArgs\n {\n OperationStartTime = \"1681281179000\",\n OperationEndTime = \"1681367579000\",\n Resources = defaultInstance.Id.Apply(id =\u003e @$\" {{\n \\\"\"Type\\\"\": \\\"\"ResourceIds\\\"\",\n \\\"\"RegionId\\\"\": \\\"\"cn-hangzhou\\\"\",\n \\\"\"ResourceIds\\\"\": {{\n \\\"\"ALIYUN::ECS::INSTANCE\\\"\": [\n \\\"\"{id}\\\"\"\n ]\n }} \n }}\n\"),\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"ServiceInstance\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/compute\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tfexample\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"10.1.0.0/16\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = compute.NewNestServiceInstance(ctx, \"default\", \u0026compute.NestServiceInstanceArgs{\nServiceId: pulumi.String(\"service-dd475e6e468348799f0f\"),\nServiceVersion: pulumi.String(\"1\"),\nServiceInstanceName: pulumi.String(name),\nResourceGroupId: pulumi.String(_default.Groups[0].Id),\nPaymentType: pulumi.String(\"Permanent\"),\nOperationMetadata: \u0026compute.NestServiceInstanceOperationMetadataArgs{\nOperationStartTime: pulumi.String(\"1681281179000\"),\nOperationEndTime: pulumi.String(\"1681367579000\"),\nResources: defaultInstance.ID().ApplyT(func(id string) (string, error) {\nreturn fmt.Sprintf(` {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"%v\\\"\n ]\n } \n }\n`, id), nil\n}).(pulumi.StringOutput),\n},\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"ServiceInstance\"),\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.compute.NestServiceInstance;\nimport com.pulumi.alicloud.compute.NestServiceInstanceArgs;\nimport com.pulumi.alicloud.compute.inputs.NestServiceInstanceOperationMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultNestServiceInstance = new NestServiceInstance(\"defaultNestServiceInstance\", NestServiceInstanceArgs.builder()\n .serviceId(\"service-dd475e6e468348799f0f\")\n .serviceVersion(\"1\")\n .serviceInstanceName(name)\n .resourceGroupId(default_.groups()[0].id())\n .paymentType(\"Permanent\")\n .operationMetadata(NestServiceInstanceOperationMetadataArgs.builder()\n .operationStartTime(\"1681281179000\")\n .operationEndTime(\"1681367579000\")\n .resources(defaultInstance.id().applyValue(_id -\u003e \"\"\"\n {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"%s\\\"\n ]\n } \n }\n\", _id)))\n .build())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"ServiceInstance\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCompute Nest Service Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:compute/nestServiceInstance:NestServiceInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Compute Nest Service Instance resource.\n\nFor information about Compute Nest Service Instance and how to use it, see [What is Service Instance](https://www.alibabacloud.com/help/zh/compute-nest/developer-reference/api-computenest-2021-06-01-createserviceinstance).\n\n\u003e **NOTE:** Available since v1.205.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultGetZones = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst defaultNestServiceInstance = new alicloud.compute.NestServiceInstance(\"default\", {\n serviceId: \"service-dd475e6e468348799f0f\",\n serviceVersion: \"1\",\n serviceInstanceName: name,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n paymentType: \"Permanent\",\n operationMetadata: {\n operationStartTime: \"1681281179000\",\n operationEndTime: \"1681367579000\",\n resources: pulumi.interpolate` {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"${defaultInstance.id}\\\"\n ]\n } \n }\n`,\n },\n tags: {\n Created: \"TF\",\n For: \"ServiceInstance\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_get_zones = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_zones.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\ndefault_nest_service_instance = alicloud.compute.NestServiceInstance(\"default\",\n service_id=\"service-dd475e6e468348799f0f\",\n service_version=\"1\",\n service_instance_name=name,\n resource_group_id=default.groups[0].id,\n payment_type=\"Permanent\",\n operation_metadata={\n \"operation_start_time\": \"1681281179000\",\n \"operation_end_time\": \"1681367579000\",\n \"resources\": default_instance.id.apply(lambda id: f\"\"\" {{\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {{\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"{id}\\\"\n ]\n }} \n }}\n\"\"\"),\n },\n tags={\n \"Created\": \"TF\",\n \"For\": \"ServiceInstance\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultNestServiceInstance = new AliCloud.Compute.NestServiceInstance(\"default\", new()\n {\n ServiceId = \"service-dd475e6e468348799f0f\",\n ServiceVersion = \"1\",\n ServiceInstanceName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n PaymentType = \"Permanent\",\n OperationMetadata = new AliCloud.Compute.Inputs.NestServiceInstanceOperationMetadataArgs\n {\n OperationStartTime = \"1681281179000\",\n OperationEndTime = \"1681367579000\",\n Resources = defaultInstance.Id.Apply(id =\u003e @$\" {{\n \\\"\"Type\\\"\": \\\"\"ResourceIds\\\"\",\n \\\"\"RegionId\\\"\": \\\"\"cn-hangzhou\\\"\",\n \\\"\"ResourceIds\\\"\": {{\n \\\"\"ALIYUN::ECS::INSTANCE\\\"\": [\n \\\"\"{id}\\\"\"\n ]\n }} \n }}\n\"),\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"ServiceInstance\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/compute\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tfexample\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"10.1.0.0/16\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = compute.NewNestServiceInstance(ctx, \"default\", \u0026compute.NestServiceInstanceArgs{\nServiceId: pulumi.String(\"service-dd475e6e468348799f0f\"),\nServiceVersion: pulumi.String(\"1\"),\nServiceInstanceName: pulumi.String(name),\nResourceGroupId: pulumi.String(_default.Groups[0].Id),\nPaymentType: pulumi.String(\"Permanent\"),\nOperationMetadata: \u0026compute.NestServiceInstanceOperationMetadataArgs{\nOperationStartTime: pulumi.String(\"1681281179000\"),\nOperationEndTime: pulumi.String(\"1681367579000\"),\nResources: defaultInstance.ID().ApplyT(func(id string) (string, error) {\nreturn fmt.Sprintf(` {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"%v\\\"\n ]\n } \n }\n`, id), nil\n}).(pulumi.StringOutput),\n},\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"ServiceInstance\"),\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.compute.NestServiceInstance;\nimport com.pulumi.alicloud.compute.NestServiceInstanceArgs;\nimport com.pulumi.alicloud.compute.inputs.NestServiceInstanceOperationMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultNestServiceInstance = new NestServiceInstance(\"defaultNestServiceInstance\", NestServiceInstanceArgs.builder()\n .serviceId(\"service-dd475e6e468348799f0f\")\n .serviceVersion(\"1\")\n .serviceInstanceName(name)\n .resourceGroupId(default_.groups()[0].id())\n .paymentType(\"Permanent\")\n .operationMetadata(NestServiceInstanceOperationMetadataArgs.builder()\n .operationStartTime(\"1681281179000\")\n .operationEndTime(\"1681367579000\")\n .resources(defaultInstance.id().applyValue(_id -\u003e \"\"\"\n {\n \\\"Type\\\": \\\"ResourceIds\\\",\n \\\"RegionId\\\": \\\"cn-hangzhou\\\",\n \\\"ResourceIds\\\": {\n \\\"ALIYUN::ECS::INSTANCE\\\": [\n \\\"%s\\\"\n ]\n } \n }\n\", _id)))\n .build())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"ServiceInstance\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCompute Nest Service Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:compute/nestServiceInstance:NestServiceInstance example \u003cid\u003e\n```\n\n",
"properties": {
"commodity": {
"$ref": "#/types/alicloud:compute/NestServiceInstanceCommodity:NestServiceInstanceCommodity",
@@ -128993,8 +130981,252 @@
"type": "object"
}
},
+ "alicloud:config/reportTemplate:ReportTemplate": {
+ "description": "Provides a Cloud Config (Config) Report Template resource.\n\nConfig Compliance Report Template.\n\nFor information about Cloud Config (Config) Report Template and how to use it, see [What is Report Template](https://next.api.alibabacloud.com/document/Config/2020-09-07/CreateReportTemplate).\n\n\u003e **NOTE:** Available since v1.266.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.config.ReportTemplate(\"default\", {\n reportGranularity: \"AllInOne\",\n reportScopes: [{\n key: \"RuleId\",\n value: \"cr-xxx\",\n matchType: \"In\",\n }],\n reportFileFormats: \"excel\",\n reportTemplateName: \"example-name\",\n reportTemplateDescription: \"example-desc\",\n subscriptionFrequency: \" \",\n reportLanguage: \"en-US\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.config.ReportTemplate(\"default\",\n report_granularity=\"AllInOne\",\n report_scopes=[{\n \"key\": \"RuleId\",\n \"value\": \"cr-xxx\",\n \"match_type\": \"In\",\n }],\n report_file_formats=\"excel\",\n report_template_name=\"example-name\",\n report_template_description=\"example-desc\",\n subscription_frequency=\" \",\n report_language=\"en-US\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Config.ReportTemplate(\"default\", new()\n {\n ReportGranularity = \"AllInOne\",\n ReportScopes = new[]\n {\n new AliCloud.config.Inputs.ReportTemplateReportScopeArgs\n {\n Key = \"RuleId\",\n Value = \"cr-xxx\",\n MatchType = \"In\",\n },\n },\n ReportFileFormats = \"excel\",\n ReportTemplateName = \"example-name\",\n ReportTemplateDescription = \"example-desc\",\n SubscriptionFrequency = \" \",\n ReportLanguage = \"en-US\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/config\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\tpulumiconfig \"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := config.NewReportTemplate(ctx, \"default\", \u0026config.ReportTemplateArgs{\n\t\t\tReportGranularity: pulumi.String(\"AllInOne\"),\n\t\t\tReportScopes: config.ReportTemplateReportScopeArray{\n\t\t\t\t\u0026config.ReportTemplateReportScopeArgs{\n\t\t\t\t\tKey: pulumi.String(\"RuleId\"),\n\t\t\t\t\tValue: pulumi.String(\"cr-xxx\"),\n\t\t\t\t\tMatchType: pulumi.String(\"In\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tReportFileFormats: pulumi.String(\"excel\"),\n\t\t\tReportTemplateName: pulumi.String(\"example-name\"),\n\t\t\tReportTemplateDescription: pulumi.String(\"example-desc\"),\n\t\t\tSubscriptionFrequency: pulumi.String(\" \"),\n\t\t\tReportLanguage: pulumi.String(\"en-US\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.config.ReportTemplate;\nimport com.pulumi.alicloud.config.ReportTemplateArgs;\nimport com.pulumi.alicloud.config.inputs.ReportTemplateReportScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ReportTemplate(\"default\", ReportTemplateArgs.builder()\n .reportGranularity(\"AllInOne\")\n .reportScopes(ReportTemplateReportScopeArgs.builder()\n .key(\"RuleId\")\n .value(\"cr-xxx\")\n .matchType(\"In\")\n .build())\n .reportFileFormats(\"excel\")\n .reportTemplateName(\"example-name\")\n .reportTemplateDescription(\"example-desc\")\n .subscriptionFrequency(\" \")\n .reportLanguage(\"en-US\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:config:ReportTemplate\n properties:\n reportGranularity: AllInOne\n reportScopes:\n - key: RuleId\n value: cr-xxx\n matchType: In\n reportFileFormats: excel\n reportTemplateName: example-name\n reportTemplateDescription: example-desc\n subscriptionFrequency: ' '\n reportLanguage: en-US\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config (Config) Report Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:config/reportTemplate:ReportTemplate example \u003cid\u003e\n```\n\n",
+ "properties": {
+ "reportFileFormats": {
+ "type": "string",
+ "description": "Report Format\n"
+ },
+ "reportGranularity": {
+ "type": "string",
+ "description": "Report Aggregation Granularity\n"
+ },
+ "reportLanguage": {
+ "type": "string",
+ "description": "This property does not have a description in the spec, please add it before generating code.\n"
+ },
+ "reportScopes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:config/ReportTemplateReportScope:ReportTemplateReportScope"
+ },
+ "description": "Report range, yes and logic between multiple sets of k-v pairs. See \u003cspan pulumi-lang-nodejs=\"`reportScope`\" pulumi-lang-dotnet=\"`ReportScope`\" pulumi-lang-go=\"`reportScope`\" pulumi-lang-python=\"`report_scope`\" pulumi-lang-yaml=\"`reportScope`\" pulumi-lang-java=\"`reportScope`\"\u003e`report_scope`\u003c/span\u003e below.\n"
+ },
+ "reportTemplateDescription": {
+ "type": "string",
+ "description": "Report Template Description\n"
+ },
+ "reportTemplateName": {
+ "type": "string",
+ "description": "Report Template Name\n"
+ },
+ "subscriptionFrequency": {
+ "type": "string",
+ "description": "Report subscription frequency. If this field is not empty, it is a Cron expression in Quartz format triggered by the subscription notification.\n\nThe format is: Seconds, time, day, month, week. The following are examples of commonly used Cron expressions:\n- Execute at 0 o'clock every day: 0 0 0 * *?\n- Every Monday at 15: 30: 0 30 15? * MON\n- Execute at 2 o'clock on the 1st of each month: 0 0 2 1 *?\n\nAmong them:\n-\"*\" Indicates any value\n- What-? Used for day and week fields, indicating that no specific value is specified\n- MON means Monday\n\n\u003e **NOTE:** The trigger time is UTC +8, and the settings of the cron expression can be converted according to the time zone.\n\n\u003e **NOTE:** It can only be triggered according to the cron expression time as much as possible. The cron expression limits the same template to trigger at most one notification per day.\n"
+ }
+ },
+ "required": [
+ "reportTemplateName"
+ ],
+ "inputProperties": {
+ "reportFileFormats": {
+ "type": "string",
+ "description": "Report Format\n"
+ },
+ "reportGranularity": {
+ "type": "string",
+ "description": "Report Aggregation Granularity\n"
+ },
+ "reportLanguage": {
+ "type": "string",
+ "description": "This property does not have a description in the spec, please add it before generating code.\n"
+ },
+ "reportScopes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:config/ReportTemplateReportScope:ReportTemplateReportScope"
+ },
+ "description": "Report range, yes and logic between multiple sets of k-v pairs. See \u003cspan pulumi-lang-nodejs=\"`reportScope`\" pulumi-lang-dotnet=\"`ReportScope`\" pulumi-lang-go=\"`reportScope`\" pulumi-lang-python=\"`report_scope`\" pulumi-lang-yaml=\"`reportScope`\" pulumi-lang-java=\"`reportScope`\"\u003e`report_scope`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "reportTemplateDescription": {
+ "type": "string",
+ "description": "Report Template Description\n"
+ },
+ "reportTemplateName": {
+ "type": "string",
+ "description": "Report Template Name\n"
+ },
+ "subscriptionFrequency": {
+ "type": "string",
+ "description": "Report subscription frequency. If this field is not empty, it is a Cron expression in Quartz format triggered by the subscription notification.\n\nThe format is: Seconds, time, day, month, week. The following are examples of commonly used Cron expressions:\n- Execute at 0 o'clock every day: 0 0 0 * *?\n- Every Monday at 15: 30: 0 30 15? * MON\n- Execute at 2 o'clock on the 1st of each month: 0 0 2 1 *?\n\nAmong them:\n-\"*\" Indicates any value\n- What-? Used for day and week fields, indicating that no specific value is specified\n- MON means Monday\n\n\u003e **NOTE:** The trigger time is UTC +8, and the settings of the cron expression can be converted according to the time zone.\n\n\u003e **NOTE:** It can only be triggered according to the cron expression time as much as possible. The cron expression limits the same template to trigger at most one notification per day.\n"
+ }
+ },
+ "requiredInputs": [
+ "reportTemplateName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering ReportTemplate resources.\n",
+ "properties": {
+ "reportFileFormats": {
+ "type": "string",
+ "description": "Report Format\n"
+ },
+ "reportGranularity": {
+ "type": "string",
+ "description": "Report Aggregation Granularity\n"
+ },
+ "reportLanguage": {
+ "type": "string",
+ "description": "This property does not have a description in the spec, please add it before generating code.\n"
+ },
+ "reportScopes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:config/ReportTemplateReportScope:ReportTemplateReportScope"
+ },
+ "description": "Report range, yes and logic between multiple sets of k-v pairs. See \u003cspan pulumi-lang-nodejs=\"`reportScope`\" pulumi-lang-dotnet=\"`ReportScope`\" pulumi-lang-go=\"`reportScope`\" pulumi-lang-python=\"`report_scope`\" pulumi-lang-yaml=\"`reportScope`\" pulumi-lang-java=\"`reportScope`\"\u003e`report_scope`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "reportTemplateDescription": {
+ "type": "string",
+ "description": "Report Template Description\n"
+ },
+ "reportTemplateName": {
+ "type": "string",
+ "description": "Report Template Name\n"
+ },
+ "subscriptionFrequency": {
+ "type": "string",
+ "description": "Report subscription frequency. If this field is not empty, it is a Cron expression in Quartz format triggered by the subscription notification.\n\nThe format is: Seconds, time, day, month, week. The following are examples of commonly used Cron expressions:\n- Execute at 0 o'clock every day: 0 0 0 * *?\n- Every Monday at 15: 30: 0 30 15? * MON\n- Execute at 2 o'clock on the 1st of each month: 0 0 2 1 *?\n\nAmong them:\n-\"*\" Indicates any value\n- What-? Used for day and week fields, indicating that no specific value is specified\n- MON means Monday\n\n\u003e **NOTE:** The trigger time is UTC +8, and the settings of the cron expression can be converted according to the time zone.\n\n\u003e **NOTE:** It can only be triggered according to the cron expression time as much as possible. The cron expression limits the same template to trigger at most one notification per day.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "alicloud:configaggregate/remediation:Remediation": {
+ "description": "Provides a Cloud Config (Config) Aggregate Remediation resource.\n\nRule remediation in multi-account scenarios.\n\nFor information about Cloud Config (Config) Aggregate Remediation and how to use it, see [What is Aggregate Remediation](https://next.api.alibabacloud.com/document/Config/2020-09-07/CreateAggregateRemediation).\n\n\u003e **NOTE:** Available since v1.267.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst create_agg = new alicloud.cfg.Aggregator(\"create-agg\", {\n aggregatorName: \"rd\",\n description: \"rd\",\n aggregatorType: \"RD\",\n});\nconst create_rule = new alicloud.cfg.AggregateConfigRule(\"create-rule\", {\n sourceOwner: \"ALIYUN\",\n sourceIdentifier: \"required-tags\",\n aggregateConfigRuleName: \"agg-rule-name\",\n configRuleTriggerTypes: \"ConfigurationItemChangeNotification\",\n riskLevel: 1,\n resourceTypesScopes: [\"ACS::OSS::Bucket\"],\n aggregatorId: create_agg.id,\n inputParameters: {\n tag1Key: \"aaa\",\n tag1Value: \"bbb\",\n },\n});\nconst _default = new alicloud.configaggregate.Remediation(\"default\", {\n configRuleId: create_rule.configRuleId,\n remediationTemplateId: \"ACS-TAG-TagResources\",\n remediationSourceType: \"ALIYUN\",\n invokeType: \"MANUAL_EXECUTION\",\n remediationType: \"OOS\",\n aggregatorId: create_agg.id,\n remediationOriginParams: JSON.stringify({\n properties: [\n {\n name: \"regionId\",\n type: \"String\",\n value: \"{regionId}\",\n allowedValues: [],\n description: \"region ID\",\n },\n {\n name: \"tags\",\n type: \"Json\",\n value: \"{\\\"aaa\\\":\\\"bbb\\\"}\",\n allowedValues: [],\n description: \"resource tags (for example,{\\\"k1\\\":\\\"v1\\\",\\\"k2\\\":\\\"v2\\\"}).\",\n },\n {\n name: \"resourceType\",\n type: \"String\",\n value: \"{resourceType}\",\n allowedValues: [],\n description: \"resource type\",\n },\n {\n name: \"resourceIds\",\n type: \"ARRAY\",\n value: \"[{\\\"resources\\\":[]}]\",\n allowedValues: [],\n description: \"Resource ID List\",\n },\n ],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ncreate_agg = alicloud.cfg.Aggregator(\"create-agg\",\n aggregator_name=\"rd\",\n description=\"rd\",\n aggregator_type=\"RD\")\ncreate_rule = alicloud.cfg.AggregateConfigRule(\"create-rule\",\n source_owner=\"ALIYUN\",\n source_identifier=\"required-tags\",\n aggregate_config_rule_name=\"agg-rule-name\",\n config_rule_trigger_types=\"ConfigurationItemChangeNotification\",\n risk_level=1,\n resource_types_scopes=[\"ACS::OSS::Bucket\"],\n aggregator_id=create_agg.id,\n input_parameters={\n \"tag1Key\": \"aaa\",\n \"tag1Value\": \"bbb\",\n })\ndefault = alicloud.configaggregate.Remediation(\"default\",\n config_rule_id=create_rule.config_rule_id,\n remediation_template_id=\"ACS-TAG-TagResources\",\n remediation_source_type=\"ALIYUN\",\n invoke_type=\"MANUAL_EXECUTION\",\n remediation_type=\"OOS\",\n aggregator_id=create_agg.id,\n remediation_origin_params=json.dumps({\n \"properties\": [\n {\n \"name\": \"regionId\",\n \"type\": \"String\",\n \"value\": \"{regionId}\",\n \"allowedValues\": [],\n \"description\": \"region ID\",\n },\n {\n \"name\": \"tags\",\n \"type\": \"Json\",\n \"value\": \"{\\\"aaa\\\":\\\"bbb\\\"}\",\n \"allowedValues\": [],\n \"description\": \"resource tags (for example,{\\\"k1\\\":\\\"v1\\\",\\\"k2\\\":\\\"v2\\\"}).\",\n },\n {\n \"name\": \"resourceType\",\n \"type\": \"String\",\n \"value\": \"{resourceType}\",\n \"allowedValues\": [],\n \"description\": \"resource type\",\n },\n {\n \"name\": \"resourceIds\",\n \"type\": \"ARRAY\",\n \"value\": \"[{\\\"resources\\\":[]}]\",\n \"allowedValues\": [],\n \"description\": \"Resource ID List\",\n },\n ],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var create_agg = new AliCloud.Cfg.Aggregator(\"create-agg\", new()\n {\n AggregatorName = \"rd\",\n Description = \"rd\",\n AggregatorType = \"RD\",\n });\n\n var create_rule = new AliCloud.Cfg.AggregateConfigRule(\"create-rule\", new()\n {\n SourceOwner = \"ALIYUN\",\n SourceIdentifier = \"required-tags\",\n AggregateConfigRuleName = \"agg-rule-name\",\n ConfigRuleTriggerTypes = \"ConfigurationItemChangeNotification\",\n RiskLevel = 1,\n ResourceTypesScopes = new[]\n {\n \"ACS::OSS::Bucket\",\n },\n AggregatorId = create_agg.Id,\n InputParameters = \n {\n { \"tag1Key\", \"aaa\" },\n { \"tag1Value\", \"bbb\" },\n },\n });\n\n var @default = new AliCloud.ConfigAggregate.Remediation(\"default\", new()\n {\n ConfigRuleId = create_rule.ConfigRuleId,\n RemediationTemplateId = \"ACS-TAG-TagResources\",\n RemediationSourceType = \"ALIYUN\",\n InvokeType = \"MANUAL_EXECUTION\",\n RemediationType = \"OOS\",\n AggregatorId = create_agg.Id,\n RemediationOriginParams = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"properties\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"regionId\",\n [\"type\"] = \"String\",\n [\"value\"] = \"{regionId}\",\n [\"allowedValues\"] = new[]\n {\n },\n [\"description\"] = \"region ID\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"tags\",\n [\"type\"] = \"Json\",\n [\"value\"] = \"{\\\"aaa\\\":\\\"bbb\\\"}\",\n [\"allowedValues\"] = new[]\n {\n },\n [\"description\"] = \"resource tags (for example,{\\\"k1\\\":\\\"v1\\\",\\\"k2\\\":\\\"v2\\\"}).\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"resourceType\",\n [\"type\"] = \"String\",\n [\"value\"] = \"{resourceType}\",\n [\"allowedValues\"] = new[]\n {\n },\n [\"description\"] = \"resource type\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"resourceIds\",\n [\"type\"] = \"ARRAY\",\n [\"value\"] = \"[{\\\"resources\\\":[]}]\",\n [\"allowedValues\"] = new[]\n {\n },\n [\"description\"] = \"Resource ID List\",\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cfg\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/configaggregate\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcreate_agg, err := cfg.NewAggregator(ctx, \"create-agg\", \u0026cfg.AggregatorArgs{\n\t\t\tAggregatorName: pulumi.String(\"rd\"),\n\t\t\tDescription: pulumi.String(\"rd\"),\n\t\t\tAggregatorType: pulumi.String(\"RD\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreate_rule, err := cfg.NewAggregateConfigRule(ctx, \"create-rule\", \u0026cfg.AggregateConfigRuleArgs{\n\t\t\tSourceOwner: pulumi.String(\"ALIYUN\"),\n\t\t\tSourceIdentifier: pulumi.String(\"required-tags\"),\n\t\t\tAggregateConfigRuleName: pulumi.String(\"agg-rule-name\"),\n\t\t\tConfigRuleTriggerTypes: pulumi.String(\"ConfigurationItemChangeNotification\"),\n\t\t\tRiskLevel: pulumi.Int(1),\n\t\t\tResourceTypesScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ACS::OSS::Bucket\"),\n\t\t\t},\n\t\t\tAggregatorId: create_agg.ID(),\n\t\t\tInputParameters: pulumi.StringMap{\n\t\t\t\t\"tag1Key\": pulumi.String(\"aaa\"),\n\t\t\t\t\"tag1Value\": pulumi.String(\"bbb\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"properties\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"regionId\",\n\t\t\t\t\t\"type\": \"String\",\n\t\t\t\t\t\"value\": \"{regionId}\",\n\t\t\t\t\t\"allowedValues\": []interface{}{},\n\t\t\t\t\t\"description\": \"region ID\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"tags\",\n\t\t\t\t\t\"type\": \"Json\",\n\t\t\t\t\t\"value\": \"{\\\"aaa\\\":\\\"bbb\\\"}\",\n\t\t\t\t\t\"allowedValues\": []interface{}{},\n\t\t\t\t\t\"description\": \"resource tags (for example,{\\\"k1\\\":\\\"v1\\\",\\\"k2\\\":\\\"v2\\\"}).\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"resourceType\",\n\t\t\t\t\t\"type\": \"String\",\n\t\t\t\t\t\"value\": \"{resourceType}\",\n\t\t\t\t\t\"allowedValues\": []interface{}{},\n\t\t\t\t\t\"description\": \"resource type\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"name\": \"resourceIds\",\n\t\t\t\t\t\"type\": \"ARRAY\",\n\t\t\t\t\t\"value\": \"[{\\\"resources\\\":[]}]\",\n\t\t\t\t\t\"allowedValues\": []interface{}{},\n\t\t\t\t\t\"description\": \"Resource ID List\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = configaggregate.NewRemediation(ctx, \"default\", \u0026configaggregate.RemediationArgs{\n\t\t\tConfigRuleId: create_rule.ConfigRuleId,\n\t\t\tRemediationTemplateId: pulumi.String(\"ACS-TAG-TagResources\"),\n\t\t\tRemediationSourceType: pulumi.String(\"ALIYUN\"),\n\t\t\tInvokeType: pulumi.String(\"MANUAL_EXECUTION\"),\n\t\t\tRemediationType: pulumi.String(\"OOS\"),\n\t\t\tAggregatorId: create_agg.ID(),\n\t\t\tRemediationOriginParams: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cfg.Aggregator;\nimport com.pulumi.alicloud.cfg.AggregatorArgs;\nimport com.pulumi.alicloud.cfg.AggregateConfigRule;\nimport com.pulumi.alicloud.cfg.AggregateConfigRuleArgs;\nimport com.pulumi.alicloud.configaggregate.Remediation;\nimport com.pulumi.alicloud.configaggregate.RemediationArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var create_agg = new Aggregator(\"create-agg\", AggregatorArgs.builder()\n .aggregatorName(\"rd\")\n .description(\"rd\")\n .aggregatorType(\"RD\")\n .build());\n\n var create_rule = new AggregateConfigRule(\"create-rule\", AggregateConfigRuleArgs.builder()\n .sourceOwner(\"ALIYUN\")\n .sourceIdentifier(\"required-tags\")\n .aggregateConfigRuleName(\"agg-rule-name\")\n .configRuleTriggerTypes(\"ConfigurationItemChangeNotification\")\n .riskLevel(1)\n .resourceTypesScopes(\"ACS::OSS::Bucket\")\n .aggregatorId(create_agg.id())\n .inputParameters(Map.ofEntries(\n Map.entry(\"tag1Key\", \"aaa\"),\n Map.entry(\"tag1Value\", \"bbb\")\n ))\n .build());\n\n var default_ = new Remediation(\"default\", RemediationArgs.builder()\n .configRuleId(create_rule.configRuleId())\n .remediationTemplateId(\"ACS-TAG-TagResources\")\n .remediationSourceType(\"ALIYUN\")\n .invokeType(\"MANUAL_EXECUTION\")\n .remediationType(\"OOS\")\n .aggregatorId(create_agg.id())\n .remediationOriginParams(serializeJson(\n jsonObject(\n jsonProperty(\"properties\", jsonArray(\n jsonObject(\n jsonProperty(\"name\", \"regionId\"),\n jsonProperty(\"type\", \"String\"),\n jsonProperty(\"value\", \"{regionId}\"),\n jsonProperty(\"allowedValues\", jsonArray(\n )),\n jsonProperty(\"description\", \"region ID\")\n ), \n jsonObject(\n jsonProperty(\"name\", \"tags\"),\n jsonProperty(\"type\", \"Json\"),\n jsonProperty(\"value\", \"{\\\"aaa\\\":\\\"bbb\\\"}\"),\n jsonProperty(\"allowedValues\", jsonArray(\n )),\n jsonProperty(\"description\", \"resource tags (for example,{\\\"k1\\\":\\\"v1\\\",\\\"k2\\\":\\\"v2\\\"}).\")\n ), \n jsonObject(\n jsonProperty(\"name\", \"resourceType\"),\n jsonProperty(\"type\", \"String\"),\n jsonProperty(\"value\", \"{resourceType}\"),\n jsonProperty(\"allowedValues\", jsonArray(\n )),\n jsonProperty(\"description\", \"resource type\")\n ), \n jsonObject(\n jsonProperty(\"name\", \"resourceIds\"),\n jsonProperty(\"type\", \"ARRAY\"),\n jsonProperty(\"value\", \"[{\\\"resources\\\":[]}]\"),\n jsonProperty(\"allowedValues\", jsonArray(\n )),\n jsonProperty(\"description\", \"Resource ID List\")\n )\n ))\n )))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n create-agg:\n type: alicloud:cfg:Aggregator\n properties:\n aggregatorName: rd\n description: rd\n aggregatorType: RD\n create-rule:\n type: alicloud:cfg:AggregateConfigRule\n properties:\n sourceOwner: ALIYUN\n sourceIdentifier: required-tags\n aggregateConfigRuleName: agg-rule-name\n configRuleTriggerTypes: ConfigurationItemChangeNotification\n riskLevel: '1'\n resourceTypesScopes:\n - ACS::OSS::Bucket\n aggregatorId: ${[\"create-agg\"].id}\n inputParameters:\n tag1Key: aaa\n tag1Value: bbb\n default:\n type: alicloud:configaggregate:Remediation\n properties:\n configRuleId: ${[\"create-rule\"].configRuleId}\n remediationTemplateId: ACS-TAG-TagResources\n remediationSourceType: ALIYUN\n invokeType: MANUAL_EXECUTION\n remediationType: OOS\n aggregatorId: ${[\"create-agg\"].id}\n remediationOriginParams:\n fn::toJSON:\n properties:\n - name: regionId\n type: String\n value: '{regionId}'\n allowedValues: []\n description: region ID\n - name: tags\n type: Json\n value: '{\"aaa\":\"bbb\"}'\n allowedValues: []\n description: resource tags (for example,{\"k1\":\"v1\",\"k2\":\"v2\"}).\n - name: resourceType\n type: String\n value: '{resourceType}'\n allowedValues: []\n description: resource type\n - name: resourceIds\n type: ARRAY\n value: '[{\"resources\":[]}]'\n allowedValues: []\n description: Resource ID List\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud Config (Config) Aggregate Remediation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:configaggregate/remediation:Remediation example \u003caggregator_id\u003e:\u003cremediation_id\u003e\n```\n\n",
+ "properties": {
+ "aggregatorId": {
+ "type": "string",
+ "description": "The account Group ID.\nFor more information about how to obtain the account group ID, see ListAggregators.\n"
+ },
+ "configRuleId": {
+ "type": "string",
+ "description": "The rule ID.\nFor more information about how to obtain the rule ID, see [ListAggregateConfigRules].\n"
+ },
+ "invokeType": {
+ "type": "string",
+ "description": "Correction of execution mode. Value:\n- NON_EXECUTION: Not executed.\n- AUTO_EXECUTION: Automatically executed.\n- MANUAL_EXECUTION: Execute manually.\n- NOT_CONFIG: Not set.\n"
+ },
+ "remediationId": {
+ "type": "string",
+ "description": "Multi-account remediation ID\n"
+ },
+ "remediationOriginParams": {
+ "type": "string",
+ "description": "Correct the parameters of the settings.\nFor more information about how to obtain the parameters of remediation settings, see the parameter 'Template definition' in ListRemediationTemplates '.\n"
+ },
+ "remediationSourceType": {
+ "type": "string",
+ "description": "The source of the template to perform the correction. Value:\n- ALIYUN (default): Official website template.\n- CUSTOM: CUSTOM template.\n- NONE: NONE.\n"
+ },
+ "remediationTemplateId": {
+ "type": "string",
+ "description": "The ID of the correction template.\n"
+ },
+ "remediationType": {
+ "type": "string",
+ "description": "Remediation type. Value:\n- OOS: Operation and maintenance orchestration (Template correction).\n- FC: Function Compute (custom correction).\n"
+ }
+ },
+ "required": [
+ "aggregatorId",
+ "configRuleId",
+ "invokeType",
+ "remediationId",
+ "remediationOriginParams",
+ "remediationTemplateId",
+ "remediationType"
+ ],
+ "inputProperties": {
+ "aggregatorId": {
+ "type": "string",
+ "description": "The account Group ID.\nFor more information about how to obtain the account group ID, see ListAggregators.\n",
+ "willReplaceOnChanges": true
+ },
+ "configRuleId": {
+ "type": "string",
+ "description": "The rule ID.\nFor more information about how to obtain the rule ID, see [ListAggregateConfigRules].\n",
+ "willReplaceOnChanges": true
+ },
+ "invokeType": {
+ "type": "string",
+ "description": "Correction of execution mode. Value:\n- NON_EXECUTION: Not executed.\n- AUTO_EXECUTION: Automatically executed.\n- MANUAL_EXECUTION: Execute manually.\n- NOT_CONFIG: Not set.\n"
+ },
+ "remediationOriginParams": {
+ "type": "string",
+ "description": "Correct the parameters of the settings.\nFor more information about how to obtain the parameters of remediation settings, see the parameter 'Template definition' in ListRemediationTemplates '.\n"
+ },
+ "remediationSourceType": {
+ "type": "string",
+ "description": "The source of the template to perform the correction. Value:\n- ALIYUN (default): Official website template.\n- CUSTOM: CUSTOM template.\n- NONE: NONE.\n",
+ "willReplaceOnChanges": true
+ },
+ "remediationTemplateId": {
+ "type": "string",
+ "description": "The ID of the correction template.\n"
+ },
+ "remediationType": {
+ "type": "string",
+ "description": "Remediation type. Value:\n- OOS: Operation and maintenance orchestration (Template correction).\n- FC: Function Compute (custom correction).\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "requiredInputs": [
+ "aggregatorId",
+ "configRuleId",
+ "invokeType",
+ "remediationOriginParams",
+ "remediationTemplateId",
+ "remediationType"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering Remediation resources.\n",
+ "properties": {
+ "aggregatorId": {
+ "type": "string",
+ "description": "The account Group ID.\nFor more information about how to obtain the account group ID, see ListAggregators.\n",
+ "willReplaceOnChanges": true
+ },
+ "configRuleId": {
+ "type": "string",
+ "description": "The rule ID.\nFor more information about how to obtain the rule ID, see [ListAggregateConfigRules].\n",
+ "willReplaceOnChanges": true
+ },
+ "invokeType": {
+ "type": "string",
+ "description": "Correction of execution mode. Value:\n- NON_EXECUTION: Not executed.\n- AUTO_EXECUTION: Automatically executed.\n- MANUAL_EXECUTION: Execute manually.\n- NOT_CONFIG: Not set.\n"
+ },
+ "remediationId": {
+ "type": "string",
+ "description": "Multi-account remediation ID\n"
+ },
+ "remediationOriginParams": {
+ "type": "string",
+ "description": "Correct the parameters of the settings.\nFor more information about how to obtain the parameters of remediation settings, see the parameter 'Template definition' in ListRemediationTemplates '.\n"
+ },
+ "remediationSourceType": {
+ "type": "string",
+ "description": "The source of the template to perform the correction. Value:\n- ALIYUN (default): Official website template.\n- CUSTOM: CUSTOM template.\n- NONE: NONE.\n",
+ "willReplaceOnChanges": true
+ },
+ "remediationTemplateId": {
+ "type": "string",
+ "description": "The ID of the correction template.\n"
+ },
+ "remediationType": {
+ "type": "string",
+ "description": "Remediation type. Value:\n- OOS: Operation and maintenance orchestration (Template correction).\n- FC: Function Compute (custom correction).\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ }
+ },
"alicloud:cr/chain:Chain": {
- "description": "Provides a CR Chain resource.\n\nFor information about CR Chain and how to use it, see [What is Chain](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchain).\n\n\u003e **NOTE:** Available since v1.161.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst defaultRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n namespace: defaultRegistryEnterpriseNamespace.name,\n name: `${name}-${_default.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n detail: \"this is a public repo\",\n});\nconst defaultChain = new alicloud.cr.Chain(\"default\", {\n chainConfigs: [{\n nodes: [\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"DOCKER_IMAGE_BUILD\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"DOCKER_IMAGE_PUSH\",\n },\n {\n enable: true,\n nodeName: \"VULNERABILITY_SCANNING\",\n nodeConfigs: [{\n denyPolicies: [{\n issueLevel: \"MEDIUM\",\n issueCount: \"1\",\n action: \"BLOCK_DELETE_TAG\",\n logic: \"AND\",\n }],\n }],\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"ACTIVATE_REPLICATION\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"TRIGGER\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: false,\n nodeName: \"SNAPSHOT\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: false,\n nodeName: \"TRIGGER_SNAPSHOT\",\n },\n ],\n routers: [\n {\n froms: [{\n nodeName: \"DOCKER_IMAGE_BUILD\",\n }],\n tos: [{\n nodeName: \"DOCKER_IMAGE_PUSH\",\n }],\n },\n {\n froms: [{\n nodeName: \"DOCKER_IMAGE_PUSH\",\n }],\n tos: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n },\n {\n froms: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n tos: [{\n nodeName: \"ACTIVATE_REPLICATION\",\n }],\n },\n {\n froms: [{\n nodeName: \"ACTIVATE_REPLICATION\",\n }],\n tos: [{\n nodeName: \"TRIGGER\",\n }],\n },\n {\n froms: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n tos: [{\n nodeName: \"SNAPSHOT\",\n }],\n },\n {\n froms: [{\n nodeName: \"SNAPSHOT\",\n }],\n tos: [{\n nodeName: \"TRIGGER_SNAPSHOT\",\n }],\n },\n ],\n }],\n chainName: `${name}-${_default.result}`,\n description: name,\n instanceId: defaultRegistryEnterpriseNamespace.instanceId,\n repoName: defaultRegistryEnterpriseRepo.name,\n repoNamespaceName: defaultRegistryEnterpriseNamespace.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\ndefault_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n namespace=default_registry_enterprise_namespace.name,\n name=f\"{name}-{default['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\",\n detail=\"this is a public repo\")\ndefault_chain = alicloud.cr.Chain(\"default\",\n chain_configs=[{\n \"nodes\": [\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"DOCKER_IMAGE_BUILD\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n },\n {\n \"enable\": True,\n \"node_name\": \"VULNERABILITY_SCANNING\",\n \"node_configs\": [{\n \"deny_policies\": [{\n \"issue_level\": \"MEDIUM\",\n \"issue_count\": \"1\",\n \"action\": \"BLOCK_DELETE_TAG\",\n \"logic\": \"AND\",\n }],\n }],\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"ACTIVATE_REPLICATION\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"TRIGGER\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": False,\n \"node_name\": \"SNAPSHOT\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": False,\n \"node_name\": \"TRIGGER_SNAPSHOT\",\n },\n ],\n \"routers\": [\n {\n \"froms\": [{\n \"node_name\": \"DOCKER_IMAGE_BUILD\",\n }],\n \"tos\": [{\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n }],\n \"tos\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n \"tos\": [{\n \"node_name\": \"ACTIVATE_REPLICATION\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"ACTIVATE_REPLICATION\",\n }],\n \"tos\": [{\n \"node_name\": \"TRIGGER\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n \"tos\": [{\n \"node_name\": \"SNAPSHOT\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"SNAPSHOT\",\n }],\n \"tos\": [{\n \"node_name\": \"TRIGGER_SNAPSHOT\",\n }],\n },\n ],\n }],\n chain_name=f\"{name}-{default['result']}\",\n description=name,\n instance_id=default_registry_enterprise_namespace.instance_id,\n repo_name=default_registry_enterprise_repo.name,\n repo_namespace_name=default_registry_enterprise_namespace.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var defaultRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Namespace = defaultRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{@default.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n Detail = \"this is a public repo\",\n });\n\n var defaultChain = new AliCloud.CR.Chain(\"default\", new()\n {\n ChainConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigArgs\n {\n Nodes = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"DOCKER_IMAGE_BUILD\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n Enable = true,\n NodeName = \"VULNERABILITY_SCANNING\",\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigDenyPolicyArgs\n {\n IssueLevel = \"MEDIUM\",\n IssueCount = \"1\",\n Action = \"BLOCK_DELETE_TAG\",\n Logic = \"AND\",\n },\n },\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"TRIGGER\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = false,\n NodeName = \"SNAPSHOT\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = false,\n NodeName = \"TRIGGER_SNAPSHOT\",\n },\n },\n Routers = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"DOCKER_IMAGE_BUILD\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"TRIGGER\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"SNAPSHOT\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"SNAPSHOT\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"TRIGGER_SNAPSHOT\",\n },\n },\n },\n },\n },\n },\n ChainName = $\"{name}-{@default.Result}\",\n Description = name,\n InstanceId = defaultRegistryEnterpriseNamespace.InstanceId,\n RepoName = defaultRegistryEnterpriseRepo.Name,\n RepoNamespaceName = defaultRegistryEnterpriseNamespace.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"default\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tNamespace: defaultRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t\tDetail: pulumi.String(\"this is a public repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChain(ctx, \"default\", \u0026cr.ChainArgs{\n\t\t\tChainConfigs: cr.ChainChainConfigArray{\n\t\t\t\t\u0026cr.ChainChainConfigArgs{\n\t\t\t\t\tNodes: cr.ChainChainConfigNodeArray{\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_BUILD\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{\n\t\t\t\t\t\t\t\t\t\t\tIssueLevel: pulumi.String(\"MEDIUM\"),\n\t\t\t\t\t\t\t\t\t\t\tIssueCount: pulumi.String(\"1\"),\n\t\t\t\t\t\t\t\t\t\t\tAction: pulumi.String(\"BLOCK_DELETE_TAG\"),\n\t\t\t\t\t\t\t\t\t\t\tLogic: pulumi.String(\"AND\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(false),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(false),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER_SNAPSHOT\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tRouters: cr.ChainChainConfigRouterArray{\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_BUILD\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER_SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tChainName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tInstanceId: defaultRegistryEnterpriseNamespace.InstanceId,\n\t\t\tRepoName: defaultRegistryEnterpriseRepo.Name,\n\t\t\tRepoNamespaceName: defaultRegistryEnterpriseNamespace.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport com.pulumi.alicloud.cr.Chain;\nimport com.pulumi.alicloud.cr.ChainArgs;\nimport com.pulumi.alicloud.cr.inputs.ChainChainConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var defaultRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"defaultRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .namespace(defaultRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .detail(\"this is a public repo\")\n .build());\n\n var defaultChain = new Chain(\"defaultChain\", ChainArgs.builder()\n .chainConfigs(ChainChainConfigArgs.builder()\n .nodes( \n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"DOCKER_IMAGE_BUILD\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .enable(true)\n .nodeName(\"VULNERABILITY_SCANNING\")\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .issueLevel(\"MEDIUM\")\n .issueCount(\"1\")\n .action(\"BLOCK_DELETE_TAG\")\n .logic(\"AND\")\n .build())\n .build())\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"TRIGGER\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(false)\n .nodeName(\"SNAPSHOT\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(false)\n .nodeName(\"TRIGGER_SNAPSHOT\")\n .build())\n .routers( \n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"DOCKER_IMAGE_BUILD\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"TRIGGER\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"SNAPSHOT\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"SNAPSHOT\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"TRIGGER_SNAPSHOT\")\n .build())\n .build())\n .build())\n .chainName(String.format(\"%s-%s\", name,default_.result()))\n .description(name)\n .instanceId(defaultRegistryEnterpriseNamespace.instanceId())\n .repoName(defaultRegistryEnterpriseRepo.name())\n .repoNamespaceName(defaultRegistryEnterpriseNamespace.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n defaultRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n namespace: ${defaultRegistryEnterpriseNamespace.name}\n name: ${name}-${default.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n detail: this is a public repo\n defaultChain:\n type: alicloud:cr:Chain\n name: default\n properties:\n chainConfigs:\n - nodes:\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: DOCKER_IMAGE_BUILD\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: DOCKER_IMAGE_PUSH\n - enable: true\n nodeName: VULNERABILITY_SCANNING\n nodeConfigs:\n - denyPolicies:\n - issueLevel: MEDIUM\n issueCount: 1\n action: BLOCK_DELETE_TAG\n logic: AND\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: ACTIVATE_REPLICATION\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: TRIGGER\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: false\n nodeName: SNAPSHOT\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: false\n nodeName: TRIGGER_SNAPSHOT\n routers:\n - froms:\n - nodeName: DOCKER_IMAGE_BUILD\n tos:\n - nodeName: DOCKER_IMAGE_PUSH\n - froms:\n - nodeName: DOCKER_IMAGE_PUSH\n tos:\n - nodeName: VULNERABILITY_SCANNING\n - froms:\n - nodeName: VULNERABILITY_SCANNING\n tos:\n - nodeName: ACTIVATE_REPLICATION\n - froms:\n - nodeName: ACTIVATE_REPLICATION\n tos:\n - nodeName: TRIGGER\n - froms:\n - nodeName: VULNERABILITY_SCANNING\n tos:\n - nodeName: SNAPSHOT\n - froms:\n - nodeName: SNAPSHOT\n tos:\n - nodeName: TRIGGER_SNAPSHOT\n chainName: ${name}-${default.result}\n description: ${name}\n instanceId: ${defaultRegistryEnterpriseNamespace.instanceId}\n repoName: ${defaultRegistryEnterpriseRepo.name}\n repoNamespaceName: ${defaultRegistryEnterpriseNamespace.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Chain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chain:Chain example \u003cinstance_id\u003e:\u003cchain_id\u003e\n```\n\n",
+ "description": "Provides a CR Chain resource.\n\nFor information about CR Chain and how to use it, see [What is Chain](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchain).\n\n\u003e **NOTE:** Available since v1.161.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst defaultRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n namespace: defaultRegistryEnterpriseNamespace.name,\n name: `${name}-${_default.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n detail: \"this is a public repo\",\n});\nconst defaultChain = new alicloud.cr.Chain(\"default\", {\n chainConfigs: [{\n nodes: [\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"DOCKER_IMAGE_BUILD\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"DOCKER_IMAGE_PUSH\",\n },\n {\n enable: true,\n nodeName: \"VULNERABILITY_SCANNING\",\n nodeConfigs: [{\n denyPolicies: [{\n issueLevel: \"MEDIUM\",\n issueCount: \"1\",\n action: \"BLOCK_DELETE_TAG\",\n logic: \"AND\",\n }],\n }],\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"ACTIVATE_REPLICATION\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: true,\n nodeName: \"TRIGGER\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: false,\n nodeName: \"SNAPSHOT\",\n },\n {\n nodeConfigs: [{\n denyPolicies: [{}],\n }],\n enable: false,\n nodeName: \"TRIGGER_SNAPSHOT\",\n },\n ],\n routers: [\n {\n froms: [{\n nodeName: \"DOCKER_IMAGE_BUILD\",\n }],\n tos: [{\n nodeName: \"DOCKER_IMAGE_PUSH\",\n }],\n },\n {\n froms: [{\n nodeName: \"DOCKER_IMAGE_PUSH\",\n }],\n tos: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n },\n {\n froms: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n tos: [{\n nodeName: \"ACTIVATE_REPLICATION\",\n }],\n },\n {\n froms: [{\n nodeName: \"ACTIVATE_REPLICATION\",\n }],\n tos: [{\n nodeName: \"TRIGGER\",\n }],\n },\n {\n froms: [{\n nodeName: \"VULNERABILITY_SCANNING\",\n }],\n tos: [{\n nodeName: \"SNAPSHOT\",\n }],\n },\n {\n froms: [{\n nodeName: \"SNAPSHOT\",\n }],\n tos: [{\n nodeName: \"TRIGGER_SNAPSHOT\",\n }],\n },\n ],\n }],\n chainName: `${name}-${_default.result}`,\n description: name,\n instanceId: defaultRegistryEnterpriseNamespace.instanceId,\n repoName: defaultRegistryEnterpriseRepo.name,\n repoNamespaceName: defaultRegistryEnterpriseNamespace.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\ndefault_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n namespace=default_registry_enterprise_namespace.name,\n name=f\"{name}-{default['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\",\n detail=\"this is a public repo\")\ndefault_chain = alicloud.cr.Chain(\"default\",\n chain_configs=[{\n \"nodes\": [\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"DOCKER_IMAGE_BUILD\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n },\n {\n \"enable\": True,\n \"node_name\": \"VULNERABILITY_SCANNING\",\n \"node_configs\": [{\n \"deny_policies\": [{\n \"issue_level\": \"MEDIUM\",\n \"issue_count\": \"1\",\n \"action\": \"BLOCK_DELETE_TAG\",\n \"logic\": \"AND\",\n }],\n }],\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"ACTIVATE_REPLICATION\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": True,\n \"node_name\": \"TRIGGER\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": False,\n \"node_name\": \"SNAPSHOT\",\n },\n {\n \"node_configs\": [{\n \"deny_policies\": [{}],\n }],\n \"enable\": False,\n \"node_name\": \"TRIGGER_SNAPSHOT\",\n },\n ],\n \"routers\": [\n {\n \"froms\": [{\n \"node_name\": \"DOCKER_IMAGE_BUILD\",\n }],\n \"tos\": [{\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"DOCKER_IMAGE_PUSH\",\n }],\n \"tos\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n \"tos\": [{\n \"node_name\": \"ACTIVATE_REPLICATION\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"ACTIVATE_REPLICATION\",\n }],\n \"tos\": [{\n \"node_name\": \"TRIGGER\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"VULNERABILITY_SCANNING\",\n }],\n \"tos\": [{\n \"node_name\": \"SNAPSHOT\",\n }],\n },\n {\n \"froms\": [{\n \"node_name\": \"SNAPSHOT\",\n }],\n \"tos\": [{\n \"node_name\": \"TRIGGER_SNAPSHOT\",\n }],\n },\n ],\n }],\n chain_name=f\"{name}-{default['result']}\",\n description=name,\n instance_id=default_registry_enterprise_namespace.instance_id,\n repo_name=default_registry_enterprise_repo.name,\n repo_namespace_name=default_registry_enterprise_namespace.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var defaultRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Namespace = defaultRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{@default.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n Detail = \"this is a public repo\",\n });\n\n var defaultChain = new AliCloud.CR.Chain(\"default\", new()\n {\n ChainConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigArgs\n {\n Nodes = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"DOCKER_IMAGE_BUILD\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n Enable = true,\n NodeName = \"VULNERABILITY_SCANNING\",\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigDenyPolicyArgs\n {\n IssueLevel = \"MEDIUM\",\n IssueCount = \"1\",\n Action = \"BLOCK_DELETE_TAG\",\n Logic = \"AND\",\n },\n },\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = true,\n NodeName = \"TRIGGER\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = false,\n NodeName = \"SNAPSHOT\",\n },\n new AliCloud.CR.Inputs.ChainChainConfigNodeArgs\n {\n NodeConfigs = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigNodeNodeConfigArgs\n {\n DenyPolicies = new[]\n {\n null,\n },\n },\n },\n Enable = false,\n NodeName = \"TRIGGER_SNAPSHOT\",\n },\n },\n Routers = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"DOCKER_IMAGE_BUILD\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"DOCKER_IMAGE_PUSH\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"ACTIVATE_REPLICATION\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"TRIGGER\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"VULNERABILITY_SCANNING\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"SNAPSHOT\",\n },\n },\n },\n new AliCloud.CR.Inputs.ChainChainConfigRouterArgs\n {\n Froms = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterFromArgs\n {\n NodeName = \"SNAPSHOT\",\n },\n },\n Tos = new[]\n {\n new AliCloud.CR.Inputs.ChainChainConfigRouterToArgs\n {\n NodeName = \"TRIGGER_SNAPSHOT\",\n },\n },\n },\n },\n },\n },\n ChainName = $\"{name}-{@default.Result}\",\n Description = name,\n InstanceId = defaultRegistryEnterpriseNamespace.InstanceId,\n RepoName = defaultRegistryEnterpriseRepo.Name,\n RepoNamespaceName = defaultRegistryEnterpriseNamespace.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"default\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tNamespace: defaultRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t\tDetail: pulumi.String(\"this is a public repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChain(ctx, \"default\", \u0026cr.ChainArgs{\n\t\t\tChainConfigs: cr.ChainChainConfigArray{\n\t\t\t\t\u0026cr.ChainChainConfigArgs{\n\t\t\t\t\tNodes: cr.ChainChainConfigNodeArray{\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_BUILD\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{\n\t\t\t\t\t\t\t\t\t\t\tIssueLevel: pulumi.String(\"MEDIUM\"),\n\t\t\t\t\t\t\t\t\t\t\tIssueCount: pulumi.String(\"1\"),\n\t\t\t\t\t\t\t\t\t\t\tAction: pulumi.String(\"BLOCK_DELETE_TAG\"),\n\t\t\t\t\t\t\t\t\t\t\tLogic: pulumi.String(\"AND\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(false),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeArgs{\n\t\t\t\t\t\t\tNodeConfigs: cr.ChainChainConfigNodeNodeConfigArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigArgs{\n\t\t\t\t\t\t\t\t\tDenyPolicies: cr.ChainChainConfigNodeNodeConfigDenyPolicyArray{\n\t\t\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigNodeNodeConfigDenyPolicyArgs{},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnable: pulumi.Bool(false),\n\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER_SNAPSHOT\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tRouters: cr.ChainChainConfigRouterArray{\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_BUILD\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"DOCKER_IMAGE_PUSH\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"ACTIVATE_REPLICATION\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"VULNERABILITY_SCANNING\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterArgs{\n\t\t\t\t\t\t\tFroms: cr.ChainChainConfigRouterFromArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterFromArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTos: cr.ChainChainConfigRouterToArray{\n\t\t\t\t\t\t\t\t\u0026cr.ChainChainConfigRouterToArgs{\n\t\t\t\t\t\t\t\t\tNodeName: pulumi.String(\"TRIGGER_SNAPSHOT\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tChainName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tInstanceId: defaultRegistryEnterpriseNamespace.InstanceId,\n\t\t\tRepoName: defaultRegistryEnterpriseRepo.Name,\n\t\t\tRepoNamespaceName: defaultRegistryEnterpriseNamespace.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport com.pulumi.alicloud.cr.Chain;\nimport com.pulumi.alicloud.cr.ChainArgs;\nimport com.pulumi.alicloud.cr.inputs.ChainChainConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var defaultRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"defaultRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .namespace(defaultRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .detail(\"this is a public repo\")\n .build());\n\n var defaultChain = new Chain(\"defaultChain\", ChainArgs.builder()\n .chainConfigs(ChainChainConfigArgs.builder()\n .nodes( \n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"DOCKER_IMAGE_BUILD\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .enable(true)\n .nodeName(\"VULNERABILITY_SCANNING\")\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .issueLevel(\"MEDIUM\")\n .issueCount(\"1\")\n .action(\"BLOCK_DELETE_TAG\")\n .logic(\"AND\")\n .build())\n .build())\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(true)\n .nodeName(\"TRIGGER\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(false)\n .nodeName(\"SNAPSHOT\")\n .build(),\n ChainChainConfigNodeArgs.builder()\n .nodeConfigs(ChainChainConfigNodeNodeConfigArgs.builder()\n .denyPolicies(ChainChainConfigNodeNodeConfigDenyPolicyArgs.builder()\n .build())\n .build())\n .enable(false)\n .nodeName(\"TRIGGER_SNAPSHOT\")\n .build())\n .routers( \n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"DOCKER_IMAGE_BUILD\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"DOCKER_IMAGE_PUSH\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"ACTIVATE_REPLICATION\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"TRIGGER\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"VULNERABILITY_SCANNING\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"SNAPSHOT\")\n .build())\n .build(),\n ChainChainConfigRouterArgs.builder()\n .froms(ChainChainConfigRouterFromArgs.builder()\n .nodeName(\"SNAPSHOT\")\n .build())\n .tos(ChainChainConfigRouterToArgs.builder()\n .nodeName(\"TRIGGER_SNAPSHOT\")\n .build())\n .build())\n .build())\n .chainName(String.format(\"%s-%s\", name,default_.result()))\n .description(name)\n .instanceId(defaultRegistryEnterpriseNamespace.instanceId())\n .repoName(defaultRegistryEnterpriseRepo.name())\n .repoNamespaceName(defaultRegistryEnterpriseNamespace.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n defaultRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n namespace: ${defaultRegistryEnterpriseNamespace.name}\n name: ${name}-${default.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n detail: this is a public repo\n defaultChain:\n type: alicloud:cr:Chain\n name: default\n properties:\n chainConfigs:\n - nodes:\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: DOCKER_IMAGE_BUILD\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: DOCKER_IMAGE_PUSH\n - enable: true\n nodeName: VULNERABILITY_SCANNING\n nodeConfigs:\n - denyPolicies:\n - issueLevel: MEDIUM\n issueCount: 1\n action: BLOCK_DELETE_TAG\n logic: AND\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: ACTIVATE_REPLICATION\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: true\n nodeName: TRIGGER\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: false\n nodeName: SNAPSHOT\n - nodeConfigs:\n - denyPolicies:\n - {}\n enable: false\n nodeName: TRIGGER_SNAPSHOT\n routers:\n - froms:\n - nodeName: DOCKER_IMAGE_BUILD\n tos:\n - nodeName: DOCKER_IMAGE_PUSH\n - froms:\n - nodeName: DOCKER_IMAGE_PUSH\n tos:\n - nodeName: VULNERABILITY_SCANNING\n - froms:\n - nodeName: VULNERABILITY_SCANNING\n tos:\n - nodeName: ACTIVATE_REPLICATION\n - froms:\n - nodeName: ACTIVATE_REPLICATION\n tos:\n - nodeName: TRIGGER\n - froms:\n - nodeName: VULNERABILITY_SCANNING\n tos:\n - nodeName: SNAPSHOT\n - froms:\n - nodeName: SNAPSHOT\n tos:\n - nodeName: TRIGGER_SNAPSHOT\n chainName: ${name}-${default.result}\n description: ${name}\n instanceId: ${defaultRegistryEnterpriseNamespace.instanceId}\n repoName: ${defaultRegistryEnterpriseRepo.name}\n repoNamespaceName: ${defaultRegistryEnterpriseNamespace.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Chain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chain:Chain example \u003cinstance_id\u003e:\u003cchain_id\u003e\n```\n\n",
"properties": {
"chainConfigs": {
"type": "array",
@@ -129111,7 +131343,7 @@
}
},
"alicloud:cr/chartNamespace:ChartNamespace": {
- "description": "Provides a CR Chart Namespace resource.\n\nFor information about CR Chart Namespace and how to use it, see [What is Chart Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchartnamespace).\n\n\u003e **NOTE:** Available since v1.149.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst example = new alicloud.cr.RegistryEnterpriseInstance(\"example\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst exampleChartNamespace = new alicloud.cr.ChartNamespace(\"example\", {\n instanceId: example.id,\n namespaceName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\nexample = alicloud.cr.RegistryEnterpriseInstance(\"example\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\nexample_chart_namespace = alicloud.cr.ChartNamespace(\"example\",\n instance_id=example.id,\n namespace_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var example = new AliCloud.CR.RegistryEnterpriseInstance(\"example\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartNamespace = new AliCloud.CR.ChartNamespace(\"example\", new()\n {\n InstanceId = example.Id,\n NamespaceName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cr.NewRegistryEnterpriseInstance(ctx, \"example\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChartNamespace(ctx, \"example\", \u0026cr.ChartNamespaceArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tNamespaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.ChartNamespace;\nimport com.pulumi.alicloud.cr.ChartNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var example = new RegistryEnterpriseInstance(\"example\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartNamespace = new ChartNamespace(\"exampleChartNamespace\", ChartNamespaceArgs.builder()\n .instanceId(example.id())\n .namespaceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n example:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n exampleChartNamespace:\n type: alicloud:cr:ChartNamespace\n name: example\n properties:\n instanceId: ${example.id}\n namespaceName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Chart Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chartNamespace:ChartNamespace example \u003cinstance_id\u003e:\u003cnamespace_name\u003e\n```\n\n",
+ "description": "Provides a CR Chart Namespace resource.\n\nFor information about CR Chart Namespace and how to use it, see [What is Chart Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchartnamespace).\n\n\u003e **NOTE:** Available since v1.149.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst example = new alicloud.cr.RegistryEnterpriseInstance(\"example\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst exampleChartNamespace = new alicloud.cr.ChartNamespace(\"example\", {\n instanceId: example.id,\n namespaceName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\nexample = alicloud.cr.RegistryEnterpriseInstance(\"example\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\nexample_chart_namespace = alicloud.cr.ChartNamespace(\"example\",\n instance_id=example.id,\n namespace_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var example = new AliCloud.CR.RegistryEnterpriseInstance(\"example\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartNamespace = new AliCloud.CR.ChartNamespace(\"example\", new()\n {\n InstanceId = example.Id,\n NamespaceName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cr.NewRegistryEnterpriseInstance(ctx, \"example\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChartNamespace(ctx, \"example\", \u0026cr.ChartNamespaceArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tNamespaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.ChartNamespace;\nimport com.pulumi.alicloud.cr.ChartNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var example = new RegistryEnterpriseInstance(\"example\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartNamespace = new ChartNamespace(\"exampleChartNamespace\", ChartNamespaceArgs.builder()\n .instanceId(example.id())\n .namespaceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n example:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n exampleChartNamespace:\n type: alicloud:cr:ChartNamespace\n name: example\n properties:\n instanceId: ${example.id}\n namespaceName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Chart Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chartNamespace:ChartNamespace example \u003cinstance_id\u003e:\u003cnamespace_name\u003e\n```\n\n",
"properties": {
"autoCreateRepo": {
"type": "boolean",
@@ -129186,7 +131418,7 @@
}
},
"alicloud:cr/chartRepository:ChartRepository": {
- "description": "Provides a CR Chart Repository resource.\n\nFor information about CR Chart Repository and how to use it, see [What is Chart Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchartrepository).\n\n\u003e **NOTE:** Available since v1.149.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst example = new alicloud.cr.RegistryEnterpriseInstance(\"example\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst exampleChartNamespace = new alicloud.cr.ChartNamespace(\"example\", {\n instanceId: example.id,\n namespaceName: `${name}-${_default.result}`,\n});\nconst exampleChartRepository = new alicloud.cr.ChartRepository(\"example\", {\n repoNamespaceName: exampleChartNamespace.namespaceName,\n instanceId: exampleChartNamespace.instanceId,\n repoName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\nexample = alicloud.cr.RegistryEnterpriseInstance(\"example\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\nexample_chart_namespace = alicloud.cr.ChartNamespace(\"example\",\n instance_id=example.id,\n namespace_name=f\"{name}-{default['result']}\")\nexample_chart_repository = alicloud.cr.ChartRepository(\"example\",\n repo_namespace_name=example_chart_namespace.namespace_name,\n instance_id=example_chart_namespace.instance_id,\n repo_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var example = new AliCloud.CR.RegistryEnterpriseInstance(\"example\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartNamespace = new AliCloud.CR.ChartNamespace(\"example\", new()\n {\n InstanceId = example.Id,\n NamespaceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartRepository = new AliCloud.CR.ChartRepository(\"example\", new()\n {\n RepoNamespaceName = exampleChartNamespace.NamespaceName,\n InstanceId = exampleChartNamespace.InstanceId,\n RepoName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cr.NewRegistryEnterpriseInstance(ctx, \"example\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleChartNamespace, err := cr.NewChartNamespace(ctx, \"example\", \u0026cr.ChartNamespaceArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tNamespaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChartRepository(ctx, \"example\", \u0026cr.ChartRepositoryArgs{\n\t\t\tRepoNamespaceName: exampleChartNamespace.NamespaceName,\n\t\t\tInstanceId: exampleChartNamespace.InstanceId,\n\t\t\tRepoName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.ChartNamespace;\nimport com.pulumi.alicloud.cr.ChartNamespaceArgs;\nimport com.pulumi.alicloud.cr.ChartRepository;\nimport com.pulumi.alicloud.cr.ChartRepositoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var example = new RegistryEnterpriseInstance(\"example\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartNamespace = new ChartNamespace(\"exampleChartNamespace\", ChartNamespaceArgs.builder()\n .instanceId(example.id())\n .namespaceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartRepository = new ChartRepository(\"exampleChartRepository\", ChartRepositoryArgs.builder()\n .repoNamespaceName(exampleChartNamespace.namespaceName())\n .instanceId(exampleChartNamespace.instanceId())\n .repoName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n example:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n exampleChartNamespace:\n type: alicloud:cr:ChartNamespace\n name: example\n properties:\n instanceId: ${example.id}\n namespaceName: ${name}-${default.result}\n exampleChartRepository:\n type: alicloud:cr:ChartRepository\n name: example\n properties:\n repoNamespaceName: ${exampleChartNamespace.namespaceName}\n instanceId: ${exampleChartNamespace.instanceId}\n repoName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Chart Repository can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chartRepository:ChartRepository example \u003cinstance_id\u003e:\u003crepo_namespace_name\u003e:\u003crepo_name\u003e\n```\n\n",
+ "description": "Provides a CR Chart Repository resource.\n\nFor information about CR Chart Repository and how to use it, see [What is Chart Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createchartrepository).\n\n\u003e **NOTE:** Available since v1.149.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst example = new alicloud.cr.RegistryEnterpriseInstance(\"example\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst exampleChartNamespace = new alicloud.cr.ChartNamespace(\"example\", {\n instanceId: example.id,\n namespaceName: `${name}-${_default.result}`,\n});\nconst exampleChartRepository = new alicloud.cr.ChartRepository(\"example\", {\n repoNamespaceName: exampleChartNamespace.namespaceName,\n instanceId: exampleChartNamespace.instanceId,\n repoName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = random.index.Integer(\"default\",\n min=100000,\n max=999999)\nexample = alicloud.cr.RegistryEnterpriseInstance(\"example\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\nexample_chart_namespace = alicloud.cr.ChartNamespace(\"example\",\n instance_id=example.id,\n namespace_name=f\"{name}-{default['result']}\")\nexample_chart_repository = alicloud.cr.ChartRepository(\"example\",\n repo_namespace_name=example_chart_namespace.namespace_name,\n instance_id=example_chart_namespace.instance_id,\n repo_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var example = new AliCloud.CR.RegistryEnterpriseInstance(\"example\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartNamespace = new AliCloud.CR.ChartNamespace(\"example\", new()\n {\n InstanceId = example.Id,\n NamespaceName = $\"{name}-{@default.Result}\",\n });\n\n var exampleChartRepository = new AliCloud.CR.ChartRepository(\"example\", new()\n {\n RepoNamespaceName = exampleChartNamespace.NamespaceName,\n InstanceId = exampleChartNamespace.InstanceId,\n RepoName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := cr.NewRegistryEnterpriseInstance(ctx, \"example\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleChartNamespace, err := cr.NewChartNamespace(ctx, \"example\", \u0026cr.ChartNamespaceArgs{\n\t\t\tInstanceId: example.ID(),\n\t\t\tNamespaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewChartRepository(ctx, \"example\", \u0026cr.ChartRepositoryArgs{\n\t\t\tRepoNamespaceName: exampleChartNamespace.NamespaceName,\n\t\t\tInstanceId: exampleChartNamespace.InstanceId,\n\t\t\tRepoName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.ChartNamespace;\nimport com.pulumi.alicloud.cr.ChartNamespaceArgs;\nimport com.pulumi.alicloud.cr.ChartRepository;\nimport com.pulumi.alicloud.cr.ChartRepositoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n var example = new RegistryEnterpriseInstance(\"example\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartNamespace = new ChartNamespace(\"exampleChartNamespace\", ChartNamespaceArgs.builder()\n .instanceId(example.id())\n .namespaceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var exampleChartRepository = new ChartRepository(\"exampleChartRepository\", ChartRepositoryArgs.builder()\n .repoNamespaceName(exampleChartNamespace.namespaceName())\n .instanceId(exampleChartNamespace.instanceId())\n .repoName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 100000\n max: 999999\n example:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n exampleChartNamespace:\n type: alicloud:cr:ChartNamespace\n name: example\n properties:\n instanceId: ${example.id}\n namespaceName: ${name}-${default.result}\n exampleChartRepository:\n type: alicloud:cr:ChartRepository\n name: example\n properties:\n repoNamespaceName: ${exampleChartNamespace.namespaceName}\n instanceId: ${exampleChartNamespace.instanceId}\n repoName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Chart Repository can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/chartRepository:ChartRepository example \u003cinstance_id\u003e:\u003crepo_namespace_name\u003e:\u003crepo_name\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -129276,7 +131508,7 @@
}
},
"alicloud:cr/endpointAclPolicy:EndpointAclPolicy": {
- "description": "Provides a CR Endpoint Acl Policy resource.\n\nFor information about CR Endpoint Acl Policy and how to use it, see [What is Endpoint Acl Policy](https://www.alibabacloud.com/help/doc-detail/145275.htm).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst _default = alicloud.cr.getEndpointAclServiceOutput({\n endpointType: \"internet\",\n enable: true,\n instanceId: defaultRegistryEnterpriseInstance.id,\n moduleName: \"Registry\",\n});\nconst defaultEndpointAclPolicy = new alicloud.cr.EndpointAclPolicy(\"default\", {\n instanceId: _default.apply(_default =\u003e _default.instanceId),\n entry: \"192.168.1.0/24\",\n description: name,\n moduleName: \"Registry\",\n endpointType: \"internet\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault = alicloud.cr.get_endpoint_acl_service_output(endpoint_type=\"internet\",\n enable=True,\n instance_id=default_registry_enterprise_instance.id,\n module_name=\"Registry\")\ndefault_endpoint_acl_policy = alicloud.cr.EndpointAclPolicy(\"default\",\n instance_id=default.instance_id,\n entry=\"192.168.1.0/24\",\n description=name,\n module_name=\"Registry\",\n endpoint_type=\"internet\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var @default = AliCloud.CR.GetEndpointAclService.Invoke(new()\n {\n EndpointType = \"internet\",\n Enable = true,\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n ModuleName = \"Registry\",\n });\n\n var defaultEndpointAclPolicy = new AliCloud.CR.EndpointAclPolicy(\"default\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getEndpointAclServiceResult =\u003e getEndpointAclServiceResult.InstanceId)),\n Entry = \"192.168.1.0/24\",\n Description = name,\n ModuleName = \"Registry\",\n EndpointType = \"internet\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000000,\nMax: 99999999,\n})\nif err != nil {\nreturn err\n}\ndefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\nPaymentType: pulumi.String(\"Subscription\"),\nPeriod: pulumi.Int(1),\nRenewalStatus: pulumi.String(\"ManualRenewal\"),\nInstanceType: pulumi.String(\"Advanced\"),\nInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_default := cr.GetEndpointAclServiceOutput(ctx, cr.GetEndpointAclServiceOutputArgs{\nEndpointType: pulumi.String(\"internet\"),\nEnable: pulumi.Bool(true),\nInstanceId: defaultRegistryEnterpriseInstance.ID(),\nModuleName: pulumi.String(\"Registry\"),\n}, nil);\n_, err = cr.NewEndpointAclPolicy(ctx, \"default\", \u0026cr.EndpointAclPolicyArgs{\nInstanceId: pulumi.String(_default.ApplyT(func(_default cr.GetEndpointAclServiceResult) (*string, error) {\nreturn \u0026default.InstanceId, nil\n}).(pulumi.StringPtrOutput)),\nEntry: pulumi.String(\"192.168.1.0/24\"),\nDescription: pulumi.String(name),\nModuleName: pulumi.String(\"Registry\"),\nEndpointType: pulumi.String(\"internet\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.CrFunctions;\nimport com.pulumi.alicloud.cr.inputs.GetEndpointAclServiceArgs;\nimport com.pulumi.alicloud.cr.EndpointAclPolicy;\nimport com.pulumi.alicloud.cr.EndpointAclPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n final var default = CrFunctions.getEndpointAclService(GetEndpointAclServiceArgs.builder()\n .endpointType(\"internet\")\n .enable(true)\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .moduleName(\"Registry\")\n .build());\n\n var defaultEndpointAclPolicy = new EndpointAclPolicy(\"defaultEndpointAclPolicy\", EndpointAclPolicyArgs.builder()\n .instanceId(default_.applyValue(_default_ -\u003e _default_.instanceId()))\n .entry(\"192.168.1.0/24\")\n .description(name)\n .moduleName(\"Registry\")\n .endpointType(\"internet\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${defaultInteger.result}\n defaultEndpointAclPolicy:\n type: alicloud:cr:EndpointAclPolicy\n name: default\n properties:\n instanceId: ${default.instanceId}\n entry: 192.168.1.0/24\n description: ${name}\n moduleName: Registry\n endpointType: internet\nvariables:\n default:\n fn::invoke:\n function: alicloud:cr:getEndpointAclService\n arguments:\n endpointType: internet\n enable: true\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n moduleName: Registry\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Endpoint Acl Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/endpointAclPolicy:EndpointAclPolicy example \u003cinstance_id\u003e:\u003cendpoint_type\u003e:\u003centry\u003e\n```\n\n",
+ "description": "Provides a CR Endpoint Acl Policy resource.\n\nFor information about CR Endpoint Acl Policy and how to use it, see [What is Endpoint Acl Policy](https://www.alibabacloud.com/help/doc-detail/145275.htm).\n\n\u003e **NOTE:** Available since v1.139.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst _default = alicloud.cr.getEndpointAclServiceOutput({\n endpointType: \"internet\",\n enable: true,\n instanceId: defaultRegistryEnterpriseInstance.id,\n moduleName: \"Registry\",\n});\nconst defaultEndpointAclPolicy = new alicloud.cr.EndpointAclPolicy(\"default\", {\n instanceId: _default.apply(_default =\u003e _default.instanceId),\n entry: \"192.168.1.0/24\",\n description: name,\n moduleName: \"Registry\",\n endpointType: \"internet\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault = alicloud.cr.get_endpoint_acl_service_output(endpoint_type=\"internet\",\n enable=True,\n instance_id=default_registry_enterprise_instance.id,\n module_name=\"Registry\")\ndefault_endpoint_acl_policy = alicloud.cr.EndpointAclPolicy(\"default\",\n instance_id=default.instance_id,\n entry=\"192.168.1.0/24\",\n description=name,\n module_name=\"Registry\",\n endpoint_type=\"internet\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var @default = AliCloud.CR.GetEndpointAclService.Invoke(new()\n {\n EndpointType = \"internet\",\n Enable = true,\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n ModuleName = \"Registry\",\n });\n\n var defaultEndpointAclPolicy = new AliCloud.CR.EndpointAclPolicy(\"default\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getEndpointAclServiceResult =\u003e getEndpointAclServiceResult.InstanceId)),\n Entry = \"192.168.1.0/24\",\n Description = name,\n ModuleName = \"Registry\",\n EndpointType = \"internet\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000000,\nMax: 99999999,\n})\nif err != nil {\nreturn err\n}\ndefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\nPaymentType: pulumi.String(\"Subscription\"),\nPeriod: pulumi.Int(1),\nRenewalStatus: pulumi.String(\"ManualRenewal\"),\nInstanceType: pulumi.String(\"Advanced\"),\nInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_default := cr.GetEndpointAclServiceOutput(ctx, cr.GetEndpointAclServiceOutputArgs{\nEndpointType: pulumi.String(\"internet\"),\nEnable: pulumi.Bool(true),\nInstanceId: defaultRegistryEnterpriseInstance.ID(),\nModuleName: pulumi.String(\"Registry\"),\n}, nil);\n_, err = cr.NewEndpointAclPolicy(ctx, \"default\", \u0026cr.EndpointAclPolicyArgs{\nInstanceId: pulumi.String(_default.ApplyT(func(_default cr.GetEndpointAclServiceResult) (*string, error) {\nreturn \u0026default.InstanceId, nil\n}).(pulumi.StringPtrOutput)),\nEntry: pulumi.String(\"192.168.1.0/24\"),\nDescription: pulumi.String(name),\nModuleName: pulumi.String(\"Registry\"),\nEndpointType: pulumi.String(\"internet\"),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.CrFunctions;\nimport com.pulumi.alicloud.cr.inputs.GetEndpointAclServiceArgs;\nimport com.pulumi.alicloud.cr.EndpointAclPolicy;\nimport com.pulumi.alicloud.cr.EndpointAclPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n final var default = CrFunctions.getEndpointAclService(GetEndpointAclServiceArgs.builder()\n .endpointType(\"internet\")\n .enable(true)\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .moduleName(\"Registry\")\n .build());\n\n var defaultEndpointAclPolicy = new EndpointAclPolicy(\"defaultEndpointAclPolicy\", EndpointAclPolicyArgs.builder()\n .instanceId(default_.applyValue(_default_ -\u003e _default_.instanceId()))\n .entry(\"192.168.1.0/24\")\n .description(name)\n .moduleName(\"Registry\")\n .endpointType(\"internet\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${defaultInteger.result}\n defaultEndpointAclPolicy:\n type: alicloud:cr:EndpointAclPolicy\n name: default\n properties:\n instanceId: ${default.instanceId}\n entry: 192.168.1.0/24\n description: ${name}\n moduleName: Registry\n endpointType: internet\nvariables:\n default:\n fn::invoke:\n function: alicloud:cr:getEndpointAclService\n arguments:\n endpointType: internet\n enable: true\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n moduleName: Registry\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Endpoint Acl Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/endpointAclPolicy:EndpointAclPolicy example \u003cinstance_id\u003e:\u003cendpoint_type\u003e:\u003centry\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -129369,7 +131601,7 @@
}
},
"alicloud:cr/namespace:Namespace": {
- "description": "This resource will help you to manager Container Registry namespaces, see [What is Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createnamespace).\n\n\u003e **NOTE:** Available since v1.34.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst example = new alicloud.cr.Namespace(\"example\", {\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\nexample = alicloud.cr.Namespace(\"example\",\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var example = new AliCloud.CR.Namespace(\"example\", new()\n {\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewNamespace(ctx, \"example\", \u0026cr.NamespaceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.Namespace;\nimport com.pulumi.alicloud.cr.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n example:\n type: alicloud:cr:Namespace\n properties:\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Registry namespace can be imported using the namespace, e.g.\n\n```sh\n$ pulumi import alicloud:cr/namespace:Namespace default my-namespace\n```\n\n",
+ "description": "This resource will help you to manager Container Registry namespaces, see [What is Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createnamespace).\n\n\u003e **NOTE:** Available since v1.34.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst example = new alicloud.cr.Namespace(\"example\", {\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\nexample = alicloud.cr.Namespace(\"example\",\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var example = new AliCloud.CR.Namespace(\"example\", new()\n {\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewNamespace(ctx, \"example\", \u0026cr.NamespaceArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.Namespace;\nimport com.pulumi.alicloud.cr.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n example:\n type: alicloud:cr:Namespace\n properties:\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Registry namespace can be imported using the namespace, e.g.\n\n```sh\n$ pulumi import alicloud:cr/namespace:Namespace default my-namespace\n```\n\n",
"properties": {
"autoCreate": {
"type": "boolean",
@@ -129429,7 +131661,7 @@
}
},
"alicloud:cr/registryEnterpriseInstance:RegistryEnterpriseInstance": {
- "description": "Provides a CR Instance resource.\n\nFor information about Container Registry Enterprise Edition instances and how to use it, see [Create a Instance](https://www.alibabacloud.com/help/en/doc-detail/208144.htm)\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"AutoRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=1,\n renewal_status=\"AutoRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"AutoRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"AutoRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 1\n renewalStatus: AutoRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/registryEnterpriseInstance:RegistryEnterpriseInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a CR Instance resource.\n\nFor information about Container Registry Enterprise Edition instances and how to use it, see [Create a Instance](https://www.alibabacloud.com/help/en/doc-detail/208144.htm)\n\n\u003e **NOTE:** Available since v1.124.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"AutoRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=1,\n renewal_status=\"AutoRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"AutoRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"AutoRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 1\n renewalStatus: AutoRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/registryEnterpriseInstance:RegistryEnterpriseInstance example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -129692,7 +131924,7 @@
}
},
"alicloud:cr/repo:Repo": {
- "description": "This resource will help you to manager Container Registry repositories, see [What is Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createrepository).\n\n\u003e **NOTE:** Available since v1.35.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.cr.Namespace(\"example\", {\n name: name,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst exampleRepo = new alicloud.cr.Repo(\"example\", {\n namespace: example.name,\n name: name,\n summary: \"this is summary of my new repo\",\n repoType: \"PRIVATE\",\n detail: \"this is a private repo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.cr.Namespace(\"example\",\n name=name,\n auto_create=False,\n default_visibility=\"PUBLIC\")\nexample_repo = alicloud.cr.Repo(\"example\",\n namespace=example.name,\n name=name,\n summary=\"this is summary of my new repo\",\n repo_type=\"PRIVATE\",\n detail=\"this is a private repo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.CR.Namespace(\"example\", new()\n {\n Name = name,\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var exampleRepo = new AliCloud.CR.Repo(\"example\", new()\n {\n Namespace = example.Name,\n Name = name,\n Summary = \"this is summary of my new repo\",\n RepoType = \"PRIVATE\",\n Detail = \"this is a private repo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cr.NewNamespace(ctx, \"example\", \u0026cr.NamespaceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewRepo(ctx, \"example\", \u0026cr.RepoArgs{\n\t\t\tNamespace: example.Name,\n\t\t\tName: pulumi.String(name),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PRIVATE\"),\n\t\t\tDetail: pulumi.String(\"this is a private repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cr.Namespace;\nimport com.pulumi.alicloud.cr.NamespaceArgs;\nimport com.pulumi.alicloud.cr.Repo;\nimport com.pulumi.alicloud.cr.RepoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .name(name)\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var exampleRepo = new Repo(\"exampleRepo\", RepoArgs.builder()\n .namespace(example.name())\n .name(name)\n .summary(\"this is summary of my new repo\")\n .repoType(\"PRIVATE\")\n .detail(\"this is a private repo\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:cr:Namespace\n properties:\n name: ${name}\n autoCreate: false\n defaultVisibility: PUBLIC\n exampleRepo:\n type: alicloud:cr:Repo\n name: example\n properties:\n namespace: ${example.name}\n name: ${name}\n summary: this is summary of my new repo\n repoType: PRIVATE\n detail: this is a private repo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Registry repository can be imported using the `namespace/repository`, e.g.\n\n```sh\n$ pulumi import alicloud:cr/repo:Repo default `my-namespace/my-repo`\n```\n\n",
+ "description": "This resource will help you to manager Container Registry repositories, see [What is Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createrepository).\n\n\u003e **NOTE:** Available since v1.35.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.cr.Namespace(\"example\", {\n name: name,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst exampleRepo = new alicloud.cr.Repo(\"example\", {\n namespace: example.name,\n name: name,\n summary: \"this is summary of my new repo\",\n repoType: \"PRIVATE\",\n detail: \"this is a private repo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.cr.Namespace(\"example\",\n name=name,\n auto_create=False,\n default_visibility=\"PUBLIC\")\nexample_repo = alicloud.cr.Repo(\"example\",\n namespace=example.name,\n name=name,\n summary=\"this is summary of my new repo\",\n repo_type=\"PRIVATE\",\n detail=\"this is a private repo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.CR.Namespace(\"example\", new()\n {\n Name = name,\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var exampleRepo = new AliCloud.CR.Repo(\"example\", new()\n {\n Namespace = example.Name,\n Name = name,\n Summary = \"this is summary of my new repo\",\n RepoType = \"PRIVATE\",\n Detail = \"this is a private repo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := cr.NewNamespace(ctx, \"example\", \u0026cr.NamespaceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewRepo(ctx, \"example\", \u0026cr.RepoArgs{\n\t\t\tNamespace: example.Name,\n\t\t\tName: pulumi.String(name),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PRIVATE\"),\n\t\t\tDetail: pulumi.String(\"this is a private repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cr.Namespace;\nimport com.pulumi.alicloud.cr.NamespaceArgs;\nimport com.pulumi.alicloud.cr.Repo;\nimport com.pulumi.alicloud.cr.RepoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new Namespace(\"example\", NamespaceArgs.builder()\n .name(name)\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var exampleRepo = new Repo(\"exampleRepo\", RepoArgs.builder()\n .namespace(example.name())\n .name(name)\n .summary(\"this is summary of my new repo\")\n .repoType(\"PRIVATE\")\n .detail(\"this is a private repo\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:cr:Namespace\n properties:\n name: ${name}\n autoCreate: false\n defaultVisibility: PUBLIC\n exampleRepo:\n type: alicloud:cr:Repo\n name: example\n properties:\n namespace: ${example.name}\n name: ${name}\n summary: this is summary of my new repo\n repoType: PRIVATE\n detail: this is a private repo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Registry repository can be imported using the `namespace/repository`, e.g.\n\n```sh\n$ pulumi import alicloud:cr/repo:Repo default `my-namespace/my-repo`\n```\n\n",
"properties": {
"detail": {
"type": "string",
@@ -129788,8 +132020,247 @@
"type": "object"
}
},
+ "alicloud:cr/scanRule:ScanRule": {
+ "description": "Provides a CR Scan Rule resource.\n\nArtifact Scan Rule.\n\nFor information about CR Scan Rule and how to use it, see [What is Scan Rule](https://next.api.alibabacloud.com/document/cr/2018-12-01/CreateScanRule).\n\n\u003e **NOTE:** Available since v1.265.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst default2Aqoce = new alicloud.cr.RegistryEnterpriseInstance(\"default2Aqoce\", {\n defaultOssBucket: \"false\",\n renewalStatus: \"ManualRenewal\",\n period: 1,\n instanceName: \"pl-example-2\",\n paymentType: \"Subscription\",\n instanceType: \"Basic\",\n});\nconst _default = new alicloud.cr.ScanRule(\"default\", {\n repoTagFilterPattern: \".*\",\n scanScope: \"REPO\",\n triggerType: \"MANUAL\",\n scanType: \"VUL\",\n ruleName: name,\n namespaces: [\"aa\"],\n repoNames: [\n \"bb\",\n \"cc\",\n \"dd\",\n \"ee\",\n ],\n instanceId: default2Aqoce.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault2_aqoce = alicloud.cr.RegistryEnterpriseInstance(\"default2Aqoce\",\n default_oss_bucket=\"false\",\n renewal_status=\"ManualRenewal\",\n period=1,\n instance_name=\"pl-example-2\",\n payment_type=\"Subscription\",\n instance_type=\"Basic\")\ndefault = alicloud.cr.ScanRule(\"default\",\n repo_tag_filter_pattern=\".*\",\n scan_scope=\"REPO\",\n trigger_type=\"MANUAL\",\n scan_type=\"VUL\",\n rule_name=name,\n namespaces=[\"aa\"],\n repo_names=[\n \"bb\",\n \"cc\",\n \"dd\",\n \"ee\",\n ],\n instance_id=default2_aqoce.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var default2Aqoce = new AliCloud.CR.RegistryEnterpriseInstance(\"default2Aqoce\", new()\n {\n DefaultOssBucket = \"false\",\n RenewalStatus = \"ManualRenewal\",\n Period = 1,\n InstanceName = \"pl-example-2\",\n PaymentType = \"Subscription\",\n InstanceType = \"Basic\",\n });\n\n var @default = new AliCloud.CR.ScanRule(\"default\", new()\n {\n RepoTagFilterPattern = \".*\",\n ScanScope = \"REPO\",\n TriggerType = \"MANUAL\",\n ScanType = \"VUL\",\n RuleName = name,\n Namespaces = new[]\n {\n \"aa\",\n },\n RepoNames = new[]\n {\n \"bb\",\n \"cc\",\n \"dd\",\n \"ee\",\n },\n InstanceId = default2Aqoce.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefault2Aqoce, err := cr.NewRegistryEnterpriseInstance(ctx, \"default2Aqoce\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tDefaultOssBucket: pulumi.String(\"false\"),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tInstanceName: pulumi.String(\"pl-example-2\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tInstanceType: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewScanRule(ctx, \"default\", \u0026cr.ScanRuleArgs{\n\t\t\tRepoTagFilterPattern: pulumi.String(\".*\"),\n\t\t\tScanScope: pulumi.String(\"REPO\"),\n\t\t\tTriggerType: pulumi.String(\"MANUAL\"),\n\t\t\tScanType: pulumi.String(\"VUL\"),\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tNamespaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aa\"),\n\t\t\t},\n\t\t\tRepoNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"bb\"),\n\t\t\t\tpulumi.String(\"cc\"),\n\t\t\t\tpulumi.String(\"dd\"),\n\t\t\t\tpulumi.String(\"ee\"),\n\t\t\t},\n\t\t\tInstanceId: default2Aqoce.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.ScanRule;\nimport com.pulumi.alicloud.cr.ScanRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default2Aqoce = new RegistryEnterpriseInstance(\"default2Aqoce\", RegistryEnterpriseInstanceArgs.builder()\n .defaultOssBucket(\"false\")\n .renewalStatus(\"ManualRenewal\")\n .period(1)\n .instanceName(\"pl-example-2\")\n .paymentType(\"Subscription\")\n .instanceType(\"Basic\")\n .build());\n\n var default_ = new ScanRule(\"default\", ScanRuleArgs.builder()\n .repoTagFilterPattern(\".*\")\n .scanScope(\"REPO\")\n .triggerType(\"MANUAL\")\n .scanType(\"VUL\")\n .ruleName(name)\n .namespaces(\"aa\")\n .repoNames( \n \"bb\",\n \"cc\",\n \"dd\",\n \"ee\")\n .instanceId(default2Aqoce.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default2Aqoce:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n defaultOssBucket: 'false'\n renewalStatus: ManualRenewal\n period: '1'\n instanceName: pl-example-2\n paymentType: Subscription\n instanceType: Basic\n default:\n type: alicloud:cr:ScanRule\n properties:\n repoTagFilterPattern: .*\n scanScope: REPO\n triggerType: MANUAL\n scanType: VUL\n ruleName: ${name}\n namespaces:\n - aa\n repoNames:\n - bb\n - cc\n - dd\n - ee\n instanceId: ${default2Aqoce.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Scan Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/scanRule:ScanRule example \u003cinstance_id\u003e:\u003cscan_rule_id\u003e\n```\n\n",
+ "properties": {
+ "createTime": {
+ "type": "integer",
+ "description": "Creation time\n"
+ },
+ "instanceId": {
+ "type": "string",
+ "description": "Instance ID\n"
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of namespaces: \n- This parameter must not be empty when the scan scope is NAMESPACE.\n- This parameter must contain exactly one namespace when the scan scope is REPO.\n"
+ },
+ "repoNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Repository list: \n- This parameter must be empty when the scan scope is NAMESPACE.\n- This parameter must not be empty when the scan scope is REPO.\n"
+ },
+ "repoTagFilterPattern": {
+ "type": "string",
+ "description": "Regular expression for matching tags that trigger a scan\n"
+ },
+ "ruleName": {
+ "type": "string",
+ "description": "Event rule name\n"
+ },
+ "scanRuleId": {
+ "type": "string",
+ "description": "Rule ID\n"
+ },
+ "scanScope": {
+ "type": "string",
+ "description": "Scan scope\n"
+ },
+ "scanType": {
+ "type": "string",
+ "description": "Scan type: \n- `VUL`: Artifact vulnerability scan\n- `SBOM`: Artifact content analysis\n\nThe default value of this parameter is `VUL`.\n"
+ },
+ "triggerType": {
+ "type": "string",
+ "description": "Trigger type\n"
+ }
+ },
+ "required": [
+ "createTime",
+ "instanceId",
+ "repoTagFilterPattern",
+ "ruleName",
+ "scanRuleId",
+ "scanScope",
+ "scanType",
+ "triggerType"
+ ],
+ "inputProperties": {
+ "instanceId": {
+ "type": "string",
+ "description": "Instance ID\n",
+ "willReplaceOnChanges": true
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of namespaces: \n- This parameter must not be empty when the scan scope is NAMESPACE.\n- This parameter must contain exactly one namespace when the scan scope is REPO.\n"
+ },
+ "repoNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Repository list: \n- This parameter must be empty when the scan scope is NAMESPACE.\n- This parameter must not be empty when the scan scope is REPO.\n"
+ },
+ "repoTagFilterPattern": {
+ "type": "string",
+ "description": "Regular expression for matching tags that trigger a scan\n"
+ },
+ "ruleName": {
+ "type": "string",
+ "description": "Event rule name\n"
+ },
+ "scanScope": {
+ "type": "string",
+ "description": "Scan scope\n"
+ },
+ "scanType": {
+ "type": "string",
+ "description": "Scan type: \n- `VUL`: Artifact vulnerability scan\n- `SBOM`: Artifact content analysis\n\nThe default value of this parameter is `VUL`.\n",
+ "willReplaceOnChanges": true
+ },
+ "triggerType": {
+ "type": "string",
+ "description": "Trigger type\n"
+ }
+ },
+ "requiredInputs": [
+ "instanceId",
+ "repoTagFilterPattern",
+ "ruleName",
+ "scanScope",
+ "scanType",
+ "triggerType"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering ScanRule resources.\n",
+ "properties": {
+ "createTime": {
+ "type": "integer",
+ "description": "Creation time\n"
+ },
+ "instanceId": {
+ "type": "string",
+ "description": "Instance ID\n",
+ "willReplaceOnChanges": true
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of namespaces: \n- This parameter must not be empty when the scan scope is NAMESPACE.\n- This parameter must contain exactly one namespace when the scan scope is REPO.\n"
+ },
+ "repoNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Repository list: \n- This parameter must be empty when the scan scope is NAMESPACE.\n- This parameter must not be empty when the scan scope is REPO.\n"
+ },
+ "repoTagFilterPattern": {
+ "type": "string",
+ "description": "Regular expression for matching tags that trigger a scan\n"
+ },
+ "ruleName": {
+ "type": "string",
+ "description": "Event rule name\n"
+ },
+ "scanRuleId": {
+ "type": "string",
+ "description": "Rule ID\n"
+ },
+ "scanScope": {
+ "type": "string",
+ "description": "Scan scope\n"
+ },
+ "scanType": {
+ "type": "string",
+ "description": "Scan type: \n- `VUL`: Artifact vulnerability scan\n- `SBOM`: Artifact content analysis\n\nThe default value of this parameter is `VUL`.\n",
+ "willReplaceOnChanges": true
+ },
+ "triggerType": {
+ "type": "string",
+ "description": "Trigger type\n"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "alicloud:cr/storageDomainRoutingRule:StorageDomainRoutingRule": {
+ "description": "Provides a CR Storage Domain Routing Rule resource.\n\nInstance Storage Domain Routing Rule.\n\nFor information about CR Storage Domain Routing Rule and how to use it, see [What is Storage Domain Routing Rule](https://next.api.alibabacloud.com/document/cr/2018-12-01/CreateStorageDomainRoutingRule).\n\n\u003e **NOTE:** Available since v1.265.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"AutoRenewal\",\n instanceType: \"Advanced\",\n instanceName: name,\n});\nconst defaultStorageDomainRoutingRule = new alicloud.cr.StorageDomainRoutingRule(\"default\", {\n routes: [{\n instanceDomain: pulumi.interpolate`${_default.instanceName}-registry-vpc.cn-hangzhou.cr.aliyuncs.com`,\n storageDomain: pulumi.interpolate`https://${_default.id}-registry.oss-cn-hangzhou-internal.aliyuncs.com`,\n endpointType: \"Internet\",\n }],\n instanceId: _default.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=1,\n renewal_status=\"AutoRenewal\",\n instance_type=\"Advanced\",\n instance_name=name)\ndefault_storage_domain_routing_rule = alicloud.cr.StorageDomainRoutingRule(\"default\",\n routes=[{\n \"instance_domain\": default.instance_name.apply(lambda instance_name: f\"{instance_name}-registry-vpc.cn-hangzhou.cr.aliyuncs.com\"),\n \"storage_domain\": default.id.apply(lambda id: f\"https://{id}-registry.oss-cn-hangzhou-internal.aliyuncs.com\"),\n \"endpoint_type\": \"Internet\",\n }],\n instance_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"AutoRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = name,\n });\n\n var defaultStorageDomainRoutingRule = new AliCloud.CR.StorageDomainRoutingRule(\"default\", new()\n {\n Routes = new[]\n {\n new AliCloud.CR.Inputs.StorageDomainRoutingRuleRouteArgs\n {\n InstanceDomain = @default.InstanceName.Apply(instanceName =\u003e $\"{instanceName}-registry-vpc.cn-hangzhou.cr.aliyuncs.com\"),\n StorageDomain = @default.Id.Apply(id =\u003e $\"https://{id}-registry.oss-cn-hangzhou-internal.aliyuncs.com\"),\n EndpointType = \"Internet\",\n },\n },\n InstanceId = @default.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"AutoRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewStorageDomainRoutingRule(ctx, \"default\", \u0026cr.StorageDomainRoutingRuleArgs{\n\t\t\tRoutes: cr.StorageDomainRoutingRuleRouteArray{\n\t\t\t\t\u0026cr.StorageDomainRoutingRuleRouteArgs{\n\t\t\t\t\tInstanceDomain: _default.InstanceName.ApplyT(func(instanceName string) (string, error) {\n\t\t\t\t\t\treturn fmt.Sprintf(\"%v-registry-vpc.cn-hangzhou.cr.aliyuncs.com\", instanceName), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\tStorageDomain: _default.ID().ApplyT(func(id string) (string, error) {\n\t\t\t\t\t\treturn fmt.Sprintf(\"https://%v-registry.oss-cn-hangzhou-internal.aliyuncs.com\", id), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t\tEndpointType: pulumi.String(\"Internet\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tInstanceId: _default.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.StorageDomainRoutingRule;\nimport com.pulumi.alicloud.cr.StorageDomainRoutingRuleArgs;\nimport com.pulumi.alicloud.cr.inputs.StorageDomainRoutingRuleRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new RegistryEnterpriseInstance(\"default\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"AutoRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(name)\n .build());\n\n var defaultStorageDomainRoutingRule = new StorageDomainRoutingRule(\"defaultStorageDomainRoutingRule\", StorageDomainRoutingRuleArgs.builder()\n .routes(StorageDomainRoutingRuleRouteArgs.builder()\n .instanceDomain(default_.instanceName().applyValue(_instanceName -\u003e String.format(\"%s-registry-vpc.cn-hangzhou.cr.aliyuncs.com\", _instanceName)))\n .storageDomain(default_.id().applyValue(_id -\u003e String.format(\"https://%s-registry.oss-cn-hangzhou-internal.aliyuncs.com\", _id)))\n .endpointType(\"Internet\")\n .build())\n .instanceId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 1\n renewalStatus: AutoRenewal\n instanceType: Advanced\n instanceName: ${name}\n defaultStorageDomainRoutingRule:\n type: alicloud:cr:StorageDomainRoutingRule\n name: default\n properties:\n routes:\n - instanceDomain: ${default.instanceName}-registry-vpc.cn-hangzhou.cr.aliyuncs.com\n storageDomain: https://${default.id}-registry.oss-cn-hangzhou-internal.aliyuncs.com\n endpointType: Internet\n instanceId: ${default.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Storage Domain Routing Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/storageDomainRoutingRule:StorageDomainRoutingRule example \u003cinstance_id\u003e:\u003crule_id\u003e\n```\n\n",
+ "properties": {
+ "createTime": {
+ "type": "integer",
+ "description": "The creation time of the resource.\n"
+ },
+ "instanceId": {
+ "type": "string",
+ "description": "The ID of the Container Registry Instance.\n"
+ },
+ "routes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cr/StorageDomainRoutingRuleRoute:StorageDomainRoutingRuleRoute"
+ },
+ "description": "Domain name routing entry See \u003cspan pulumi-lang-nodejs=\"`routes`\" pulumi-lang-dotnet=\"`Routes`\" pulumi-lang-go=\"`routes`\" pulumi-lang-python=\"`routes`\" pulumi-lang-yaml=\"`routes`\" pulumi-lang-java=\"`routes`\"\u003e`routes`\u003c/span\u003e below.\n"
+ },
+ "ruleId": {
+ "type": "string",
+ "description": "The ID of the Rule.\n"
+ }
+ },
+ "required": [
+ "createTime",
+ "instanceId",
+ "routes",
+ "ruleId"
+ ],
+ "inputProperties": {
+ "instanceId": {
+ "type": "string",
+ "description": "The ID of the Container Registry Instance.\n",
+ "willReplaceOnChanges": true
+ },
+ "routes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cr/StorageDomainRoutingRuleRoute:StorageDomainRoutingRuleRoute"
+ },
+ "description": "Domain name routing entry See \u003cspan pulumi-lang-nodejs=\"`routes`\" pulumi-lang-dotnet=\"`Routes`\" pulumi-lang-go=\"`routes`\" pulumi-lang-python=\"`routes`\" pulumi-lang-yaml=\"`routes`\" pulumi-lang-java=\"`routes`\"\u003e`routes`\u003c/span\u003e below.\n"
+ }
+ },
+ "requiredInputs": [
+ "instanceId",
+ "routes"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering StorageDomainRoutingRule resources.\n",
+ "properties": {
+ "createTime": {
+ "type": "integer",
+ "description": "The creation time of the resource.\n"
+ },
+ "instanceId": {
+ "type": "string",
+ "description": "The ID of the Container Registry Instance.\n",
+ "willReplaceOnChanges": true
+ },
+ "routes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cr/StorageDomainRoutingRuleRoute:StorageDomainRoutingRuleRoute"
+ },
+ "description": "Domain name routing entry See \u003cspan pulumi-lang-nodejs=\"`routes`\" pulumi-lang-dotnet=\"`Routes`\" pulumi-lang-go=\"`routes`\" pulumi-lang-python=\"`routes`\" pulumi-lang-yaml=\"`routes`\" pulumi-lang-java=\"`routes`\"\u003e`routes`\u003c/span\u003e below.\n"
+ },
+ "ruleId": {
+ "type": "string",
+ "description": "The ID of the Rule.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
"alicloud:cr/vpcEndpointLinkedVpc:VpcEndpointLinkedVpc": {
- "description": "Provides a CR Vpc Endpoint Linked Vpc resource.\n\nFor information about CR Vpc Endpoint Linked Vpc and how to use it, see [What is Vpc Endpoint Linked Vpc](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createinstancevpcendpointlinkedvpc).\n\n\u003e **NOTE:** Available since v1.199.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst defaultVpcEndpointLinkedVpc = new alicloud.cr.VpcEndpointLinkedVpc(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n moduleName: \"Registry\",\n enableCreateDnsRecordInPvzt: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=100000,\n max=999999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault_vpc_endpoint_linked_vpc = alicloud.cr.VpcEndpointLinkedVpc(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n module_name=\"Registry\",\n enable_create_dns_record_in_pvzt=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultVpcEndpointLinkedVpc = new AliCloud.CR.VpcEndpointLinkedVpc(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n ModuleName = \"Registry\",\n EnableCreateDnsRecordInPvzt = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewVpcEndpointLinkedVpc(ctx, \"default\", \u0026cr.VpcEndpointLinkedVpcArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tModuleName: pulumi.String(\"Registry\"),\n\t\t\tEnableCreateDnsRecordInPvzt: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.VpcEndpointLinkedVpc;\nimport com.pulumi.alicloud.cr.VpcEndpointLinkedVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultVpcEndpointLinkedVpc = new VpcEndpointLinkedVpc(\"defaultVpcEndpointLinkedVpc\", VpcEndpointLinkedVpcArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .moduleName(\"Registry\")\n .enableCreateDnsRecordInPvzt(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 100000\n max: 999999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${defaultInteger.result}\n defaultVpcEndpointLinkedVpc:\n type: alicloud:cr:VpcEndpointLinkedVpc\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n vpcId: ${defaultNetwork.id}\n vswitchId: ${defaultSwitch.id}\n moduleName: Registry\n enableCreateDnsRecordInPvzt: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCR Vpc Endpoint Linked Vpc can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/vpcEndpointLinkedVpc:VpcEndpointLinkedVpc example \u003cinstance_id\u003e:\u003cvpc_id\u003e:\u003cvswitch_id\u003e:\u003cmodule_name\u003e\n```\n\n",
+ "description": "Provides a CR Vpc Endpoint Linked Vpc resource.\n\nFor information about CR Vpc Endpoint Linked Vpc and how to use it, see [What is Vpc Endpoint Linked Vpc](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createinstancevpcendpointlinkedvpc).\n\n\u003e **NOTE:** Available since v1.199.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 100000,\n max: 999999,\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst defaultVpcEndpointLinkedVpc = new alicloud.cr.VpcEndpointLinkedVpc(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n vpcId: defaultNetwork.id,\n vswitchId: defaultSwitch.id,\n moduleName: \"Registry\",\n enableCreateDnsRecordInPvzt: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=100000,\n max=999999)\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault_vpc_endpoint_linked_vpc = alicloud.cr.VpcEndpointLinkedVpc(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n vpc_id=default_network.id,\n vswitch_id=default_switch.id,\n module_name=\"Registry\",\n enable_create_dns_record_in_pvzt=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 100000,\n Max = 999999,\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultVpcEndpointLinkedVpc = new AliCloud.CR.VpcEndpointLinkedVpc(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n VpcId = defaultNetwork.Id,\n VswitchId = defaultSwitch.Id,\n ModuleName = \"Registry\",\n EnableCreateDnsRecordInPvzt = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 100000,\n\t\t\tMax: 999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cr.NewVpcEndpointLinkedVpc(ctx, \"default\", \u0026cr.VpcEndpointLinkedVpcArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tModuleName: pulumi.String(\"Registry\"),\n\t\t\tEnableCreateDnsRecordInPvzt: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cr.VpcEndpointLinkedVpc;\nimport com.pulumi.alicloud.cr.VpcEndpointLinkedVpcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(100000)\n .max(999999)\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultVpcEndpointLinkedVpc = new VpcEndpointLinkedVpc(\"defaultVpcEndpointLinkedVpc\", VpcEndpointLinkedVpcArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .vpcId(defaultNetwork.id())\n .vswitchId(defaultSwitch.id())\n .moduleName(\"Registry\")\n .enableCreateDnsRecordInPvzt(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 100000\n max: 999999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${defaultInteger.result}\n defaultVpcEndpointLinkedVpc:\n type: alicloud:cr:VpcEndpointLinkedVpc\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n vpcId: ${defaultNetwork.id}\n vswitchId: ${defaultSwitch.id}\n moduleName: Registry\n enableCreateDnsRecordInPvzt: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCR Vpc Endpoint Linked Vpc can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cr/vpcEndpointLinkedVpc:VpcEndpointLinkedVpc example \u003cinstance_id\u003e:\u003cvpc_id\u003e:\u003cvswitch_id\u003e:\u003cmodule_name\u003e\n```\n\n",
"properties": {
"enableCreateDnsRecordInPvzt": {
"type": "boolean",
@@ -130026,7 +132497,7 @@
}
},
"alicloud:cs/autoscalingConfig:AutoscalingConfig": {
- "description": "This resource will help you configure auto scaling for the kubernetes cluster, see [What is autoscaling config](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/api-configure-auto-scaling).\n\n\u003e **NOTE:** Available since v1.127.0.\n\n\u003e **NOTE:** From version 1.164.0, support for specifying whether to allow the scale-in of nodes by parameter \u003cspan pulumi-lang-nodejs=\"`scaleDownEnabled`\" pulumi-lang-dotnet=\"`ScaleDownEnabled`\" pulumi-lang-go=\"`scaleDownEnabled`\" pulumi-lang-python=\"`scale_down_enabled`\" pulumi-lang-yaml=\"`scaleDownEnabled`\" pulumi-lang-java=\"`scaleDownEnabled`\"\u003e`scale_down_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.164.0, support for selecting the policy for selecting which node pool to scale by parameter \u003cspan pulumi-lang-nodejs=\"`expander`\" pulumi-lang-dotnet=\"`Expander`\" pulumi-lang-go=\"`expander`\" pulumi-lang-python=\"`expander`\" pulumi-lang-yaml=\"`expander`\" pulumi-lang-java=\"`expander`\"\u003e`expander`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.237.0, support for selecting the type of autoscaler by parameter \u003cspan pulumi-lang-nodejs=\"`scalerType`\" pulumi-lang-dotnet=\"`ScalerType`\" pulumi-lang-go=\"`scalerType`\" pulumi-lang-python=\"`scaler_type`\" pulumi-lang-yaml=\"`scalerType`\" pulumi-lang-java=\"`scalerType`\"\u003e`scaler_type`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.256.0, support for setting the priority of scaling groups by parameter \u003cspan pulumi-lang-nodejs=\"`priorities`\" pulumi-lang-dotnet=\"`Priorities`\" pulumi-lang-go=\"`priorities`\" pulumi-lang-python=\"`priorities`\" pulumi-lang-yaml=\"`priorities`\" pulumi-lang-java=\"`priorities`\"\u003e`priorities`\u003c/span\u003e.\n\n## Example Usage\n\nIf you do not have an existing cluster, you need to create an ACK cluster through\u003cspan pulumi-lang-nodejs=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-dotnet=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-go=\" cs.ManagedKubernetes \" pulumi-lang-python=\" cs.ManagedKubernetes \" pulumi-lang-yaml=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-java=\" alicloud.cs.ManagedKubernetes \"\u003e alicloud.cs.ManagedKubernetes \u003c/span\u003efirst, and then configure automatic scaling.\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool: alicloud.cs.NodePool[] = [];\nfor (const range = {value: 0}; range.value \u003c 3; range.value++) {\n defaultNodePool.push(new alicloud.cs.NodePool(`default-${range.value}`, {\n nodePoolName: std.format({\n input: \"%s-%d\",\n args: [\n name,\n range.value,\n ],\n }).then(invoke =\u003e invoke.result),\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_essd\",\n systemDiskSize: 40,\n imageType: \"AliyunLinux3\",\n scalingConfig: {\n enable: true,\n minSize: 0,\n maxSize: 10,\n },\n }));\n}\nconst defaultAutoscalingConfig = new alicloud.cs.AutoscalingConfig(\"default\", {\n clusterId: defaultManagedKubernetes.id,\n coolDownDuration: \"10m\",\n unneededDuration: \"10m\",\n utilizationThreshold: \"0.5\",\n gpuUtilizationThreshold: \"0.5\",\n scanInterval: \"30s\",\n scaleDownEnabled: true,\n expander: \"priority\",\n skipNodesWithSystemPods: true,\n skipNodesWithLocalStorage: false,\n daemonsetEvictionForNodes: false,\n maxGracefulTerminationSec: 14400,\n minReplicaCount: 0,\n recycleNodeDeletionEnabled: false,\n scaleUpFromZero: true,\n scalerType: \"cluster-autoscaler\",\n priorities: {\n \"10\": std.joinOutput({\n separator: \",\",\n input: [\n defaultNodePool[0].scalingGroupId,\n defaultNodePool[1].scalingGroupId,\n ],\n }).apply(invoke =\u003e invoke.result),\n \"20\": defaultNodePool[2].scalingGroupId,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\",\n system_disk_category=\"cloud_essd\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = []\nfor range in [{\"value\": i} for i in range(0, 3)]:\n default_node_pool.append(alicloud.cs.NodePool(f\"default-{range['value']}\",\n node_pool_name=std.format(input=\"%s-%d\",\n args=[\n name,\n range[\"value\"],\n ]).result,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_essd\",\n system_disk_size=40,\n image_type=\"AliyunLinux3\",\n scaling_config={\n \"enable\": True,\n \"min_size\": 0,\n \"max_size\": 10,\n }))\ndefault_autoscaling_config = alicloud.cs.AutoscalingConfig(\"default\",\n cluster_id=default_managed_kubernetes.id,\n cool_down_duration=\"10m\",\n unneeded_duration=\"10m\",\n utilization_threshold=\"0.5\",\n gpu_utilization_threshold=\"0.5\",\n scan_interval=\"30s\",\n scale_down_enabled=True,\n expander=\"priority\",\n skip_nodes_with_system_pods=True,\n skip_nodes_with_local_storage=False,\n daemonset_eviction_for_nodes=False,\n max_graceful_termination_sec=14400,\n min_replica_count=0,\n recycle_node_deletion_enabled=False,\n scale_up_from_zero=True,\n scaler_type=\"cluster-autoscaler\",\n priorities={\n \"10\": std.join_output(separator=\",\",\n input=[\n default_node_pool[0].scaling_group_id,\n default_node_pool[1].scaling_group_id,\n ]).apply(lambda invoke: invoke.result),\n \"20\": default_node_pool[2].scaling_group_id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new List\u003cAliCloud.CS.NodePool\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 3; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultNodePool.Add(new AliCloud.CS.NodePool($\"default-{range.Value}\", new()\n {\n NodePoolName = Std.Format.Invoke(new()\n {\n Input = \"%s-%d\",\n Args = new[]\n {\n name,\n range.Value,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_essd\",\n SystemDiskSize = 40,\n ImageType = \"AliyunLinux3\",\n ScalingConfig = new AliCloud.CS.Inputs.NodePoolScalingConfigArgs\n {\n Enable = true,\n MinSize = 0,\n MaxSize = 10,\n },\n }));\n }\n var defaultAutoscalingConfig = new AliCloud.CS.AutoscalingConfig(\"default\", new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n CoolDownDuration = \"10m\",\n UnneededDuration = \"10m\",\n UtilizationThreshold = \"0.5\",\n GpuUtilizationThreshold = \"0.5\",\n ScanInterval = \"30s\",\n ScaleDownEnabled = true,\n Expander = \"priority\",\n SkipNodesWithSystemPods = true,\n SkipNodesWithLocalStorage = false,\n DaemonsetEvictionForNodes = false,\n MaxGracefulTerminationSec = 14400,\n MinReplicaCount = 0,\n RecycleNodeDeletionEnabled = false,\n ScaleUpFromZero = true,\n ScalerType = \"cluster-autoscaler\",\n Priorities = \n {\n { \"10\", Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = new[]\n {\n defaultNodePool[0].ScalingGroupId,\n defaultNodePool[1].ScalingGroupId,\n },\n }).Apply(invoke =\u003e invoke.Result) },\n { \"20\", defaultNodePool[2].ScalingGroupId },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultNodePool []*cs.NodePool\n\t\tfor index := 0; index \u003c 3; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := cs.NewNodePool(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cs.NodePoolArgs{\n\t\t\t\tNodePoolName: pulumi.String(invokeFormat2.Result),\n\t\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\tdefaultSwitch.ID(),\n\t\t\t\t},\n\t\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t\t},\n\t\t\t\tSystemDiskCategory: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\t\tImageType: pulumi.String(\"AliyunLinux3\"),\n\t\t\t\tScalingConfig: \u0026cs.NodePoolScalingConfigArgs{\n\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\tMinSize: pulumi.Int(0),\n\t\t\t\t\tMaxSize: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultNodePool = append(defaultNodePool, __res)\n\t\t}\n\t\t_, err = cs.NewAutoscalingConfig(ctx, \"default\", \u0026cs.AutoscalingConfigArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tCoolDownDuration: pulumi.String(\"10m\"),\n\t\t\tUnneededDuration: pulumi.String(\"10m\"),\n\t\t\tUtilizationThreshold: pulumi.String(\"0.5\"),\n\t\t\tGpuUtilizationThreshold: pulumi.String(\"0.5\"),\n\t\t\tScanInterval: pulumi.String(\"30s\"),\n\t\t\tScaleDownEnabled: pulumi.Bool(true),\n\t\t\tExpander: pulumi.String(\"priority\"),\n\t\t\tSkipNodesWithSystemPods: pulumi.Bool(true),\n\t\t\tSkipNodesWithLocalStorage: pulumi.Bool(false),\n\t\t\tDaemonsetEvictionForNodes: pulumi.Bool(false),\n\t\t\tMaxGracefulTerminationSec: pulumi.Int(14400),\n\t\t\tMinReplicaCount: pulumi.Int(0),\n\t\t\tRecycleNodeDeletionEnabled: pulumi.Bool(false),\n\t\t\tScaleUpFromZero: pulumi.Bool(true),\n\t\t\tScalerType: pulumi.String(\"cluster-autoscaler\"),\n\t\t\tPriorities: pulumi.StringMap{\n\t\t\t\t\"10\": pulumi.String(std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\t\tSeparator: pulumi.String(\",\"),\n\t\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\t\tdefaultNodePool[0].ScalingGroupId,\n\t\t\t\t\t\tdefaultNodePool[1].ScalingGroupId,\n\t\t\t\t\t},\n\t\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\t\treturn invoke.Result, nil\n\t\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\t\t\"20\": defaultNodePool[2].ScalingGroupId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolScalingConfigArgs;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.cs.AutoscalingConfig;\nimport com.pulumi.alicloud.cs.AutoscalingConfigArgs;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n for (var i = 0; i \u003c 3; i++) {\n new NodePool(\"defaultNodePool-\" + i, NodePoolArgs.builder()\n .nodePoolName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-%d\")\n .args( \n name,\n range.value())\n .build()).result())\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .systemDiskSize(40)\n .imageType(\"AliyunLinux3\")\n .scalingConfig(NodePoolScalingConfigArgs.builder()\n .enable(true)\n .minSize(0)\n .maxSize(10)\n .build())\n .build());\n\n \n}\n var defaultAutoscalingConfig = new AutoscalingConfig(\"defaultAutoscalingConfig\", AutoscalingConfigArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .coolDownDuration(\"10m\")\n .unneededDuration(\"10m\")\n .utilizationThreshold(\"0.5\")\n .gpuUtilizationThreshold(\"0.5\")\n .scanInterval(\"30s\")\n .scaleDownEnabled(true)\n .expander(\"priority\")\n .skipNodesWithSystemPods(true)\n .skipNodesWithLocalStorage(false)\n .daemonsetEvictionForNodes(false)\n .maxGracefulTerminationSec(14400)\n .minReplicaCount(0)\n .recycleNodeDeletionEnabled(false)\n .scaleUpFromZero(true)\n .scalerType(\"cluster-autoscaler\")\n .priorities(Map.ofEntries(\n Map.entry(\"10\", StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input( \n defaultNodePool[0].scalingGroupId(),\n defaultNodePool[1].scalingGroupId())\n .build()).applyValue(_invoke -\u003e _invoke.result())),\n Map.entry(\"20\", defaultNodePool[2].scalingGroupId())\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-%d'\n args:\n - ${name}\n - ${range.value}\n return: result\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_essd\n systemDiskSize: 40\n imageType: AliyunLinux3\n scalingConfig:\n enable: true\n minSize: 0\n maxSize: 10\n options: {}\n defaultAutoscalingConfig:\n type: alicloud:cs:AutoscalingConfig\n name: default\n properties:\n clusterId: ${defaultManagedKubernetes.id}\n coolDownDuration: 10m\n unneededDuration: 10m\n utilizationThreshold: '0.5'\n gpuUtilizationThreshold: '0.5'\n scanInterval: 30s\n scaleDownEnabled: true\n expander: priority\n skipNodesWithSystemPods: true\n skipNodesWithLocalStorage: false\n daemonsetEvictionForNodes: false\n maxGracefulTerminationSec: 14400\n minReplicaCount: 0\n recycleNodeDeletionEnabled: false\n scaleUpFromZero: true\n scalerType: cluster-autoscaler\n priorities:\n '10':\n fn::invoke:\n function: std:join\n arguments:\n separator: ','\n input:\n - ${defaultNodePool[0].scalingGroupId}\n - ${defaultNodePool[1].scalingGroupId}\n return: result\n '20': ${defaultNodePool[2].scalingGroupId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n systemDiskCategory: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "This resource will help you configure auto scaling for the kubernetes cluster, see [What is autoscaling config](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/api-configure-auto-scaling).\n\n\u003e **NOTE:** Available since v1.127.0.\n\n\u003e **NOTE:** From version 1.164.0, support for specifying whether to allow the scale-in of nodes by parameter \u003cspan pulumi-lang-nodejs=\"`scaleDownEnabled`\" pulumi-lang-dotnet=\"`ScaleDownEnabled`\" pulumi-lang-go=\"`scaleDownEnabled`\" pulumi-lang-python=\"`scale_down_enabled`\" pulumi-lang-yaml=\"`scaleDownEnabled`\" pulumi-lang-java=\"`scaleDownEnabled`\"\u003e`scale_down_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.164.0, support for selecting the policy for selecting which node pool to scale by parameter \u003cspan pulumi-lang-nodejs=\"`expander`\" pulumi-lang-dotnet=\"`Expander`\" pulumi-lang-go=\"`expander`\" pulumi-lang-python=\"`expander`\" pulumi-lang-yaml=\"`expander`\" pulumi-lang-java=\"`expander`\"\u003e`expander`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.237.0, support for selecting the type of autoscaler by parameter \u003cspan pulumi-lang-nodejs=\"`scalerType`\" pulumi-lang-dotnet=\"`ScalerType`\" pulumi-lang-go=\"`scalerType`\" pulumi-lang-python=\"`scaler_type`\" pulumi-lang-yaml=\"`scalerType`\" pulumi-lang-java=\"`scalerType`\"\u003e`scaler_type`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.256.0, support for setting the priority of scaling groups by parameter \u003cspan pulumi-lang-nodejs=\"`priorities`\" pulumi-lang-dotnet=\"`Priorities`\" pulumi-lang-go=\"`priorities`\" pulumi-lang-python=\"`priorities`\" pulumi-lang-yaml=\"`priorities`\" pulumi-lang-java=\"`priorities`\"\u003e`priorities`\u003c/span\u003e.\n\n## Example Usage\n\nIf you do not have an existing cluster, you need to create an ACK cluster through\u003cspan pulumi-lang-nodejs=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-dotnet=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-go=\" cs.ManagedKubernetes \" pulumi-lang-python=\" cs.ManagedKubernetes \" pulumi-lang-yaml=\" alicloud.cs.ManagedKubernetes \" pulumi-lang-java=\" alicloud.cs.ManagedKubernetes \"\u003e alicloud.cs.ManagedKubernetes \u003c/span\u003efirst, and then configure automatic scaling.\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool: alicloud.cs.NodePool[] = [];\nfor (const range = {value: 0}; range.value \u003c 3; range.value++) {\n defaultNodePool.push(new alicloud.cs.NodePool(`default-${range.value}`, {\n nodePoolName: std.format({\n input: \"%s-%d\",\n args: [\n name,\n range.value,\n ],\n }).then(invoke =\u003e invoke.result),\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_essd\",\n systemDiskSize: 40,\n imageType: \"AliyunLinux3\",\n scalingConfig: {\n enable: true,\n minSize: 0,\n maxSize: 10,\n },\n }));\n}\nconst defaultAutoscalingConfig = new alicloud.cs.AutoscalingConfig(\"default\", {\n clusterId: defaultManagedKubernetes.id,\n coolDownDuration: \"10m\",\n unneededDuration: \"10m\",\n utilizationThreshold: \"0.5\",\n gpuUtilizationThreshold: \"0.5\",\n scanInterval: \"30s\",\n scaleDownEnabled: true,\n expander: \"priority\",\n skipNodesWithSystemPods: true,\n skipNodesWithLocalStorage: false,\n daemonsetEvictionForNodes: false,\n maxGracefulTerminationSec: 14400,\n minReplicaCount: 0,\n recycleNodeDeletionEnabled: false,\n scaleUpFromZero: true,\n scalerType: \"cluster-autoscaler\",\n priorities: {\n \"10\": std.joinOutput({\n separator: \",\",\n input: [\n defaultNodePool[0].scalingGroupId,\n defaultNodePool[1].scalingGroupId,\n ],\n }).apply(invoke =\u003e invoke.result),\n \"20\": defaultNodePool[2].scalingGroupId,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\",\n system_disk_category=\"cloud_essd\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = []\nfor range in [{\"value\": i} for i in range(0, 3)]:\n default_node_pool.append(alicloud.cs.NodePool(f\"default-{range['value']}\",\n node_pool_name=std.format(input=\"%s-%d\",\n args=[\n name,\n range[\"value\"],\n ]).result,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_essd\",\n system_disk_size=40,\n image_type=\"AliyunLinux3\",\n scaling_config={\n \"enable\": True,\n \"min_size\": 0,\n \"max_size\": 10,\n }))\ndefault_autoscaling_config = alicloud.cs.AutoscalingConfig(\"default\",\n cluster_id=default_managed_kubernetes.id,\n cool_down_duration=\"10m\",\n unneeded_duration=\"10m\",\n utilization_threshold=\"0.5\",\n gpu_utilization_threshold=\"0.5\",\n scan_interval=\"30s\",\n scale_down_enabled=True,\n expander=\"priority\",\n skip_nodes_with_system_pods=True,\n skip_nodes_with_local_storage=False,\n daemonset_eviction_for_nodes=False,\n max_graceful_termination_sec=14400,\n min_replica_count=0,\n recycle_node_deletion_enabled=False,\n scale_up_from_zero=True,\n scaler_type=\"cluster-autoscaler\",\n priorities={\n \"10\": std.join_output(separator=\",\",\n input=[\n default_node_pool[0].scaling_group_id,\n default_node_pool[1].scaling_group_id,\n ]).apply(lambda invoke: invoke.result),\n \"20\": default_node_pool[2].scaling_group_id,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new List\u003cAliCloud.CS.NodePool\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 3; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultNodePool.Add(new AliCloud.CS.NodePool($\"default-{range.Value}\", new()\n {\n NodePoolName = Std.Format.Invoke(new()\n {\n Input = \"%s-%d\",\n Args = new[]\n {\n name,\n range.Value,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_essd\",\n SystemDiskSize = 40,\n ImageType = \"AliyunLinux3\",\n ScalingConfig = new AliCloud.CS.Inputs.NodePoolScalingConfigArgs\n {\n Enable = true,\n MinSize = 0,\n MaxSize = 10,\n },\n }));\n }\n var defaultAutoscalingConfig = new AliCloud.CS.AutoscalingConfig(\"default\", new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n CoolDownDuration = \"10m\",\n UnneededDuration = \"10m\",\n UtilizationThreshold = \"0.5\",\n GpuUtilizationThreshold = \"0.5\",\n ScanInterval = \"30s\",\n ScaleDownEnabled = true,\n Expander = \"priority\",\n SkipNodesWithSystemPods = true,\n SkipNodesWithLocalStorage = false,\n DaemonsetEvictionForNodes = false,\n MaxGracefulTerminationSec = 14400,\n MinReplicaCount = 0,\n RecycleNodeDeletionEnabled = false,\n ScaleUpFromZero = true,\n ScalerType = \"cluster-autoscaler\",\n Priorities = \n {\n { \"10\", Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = new[]\n {\n defaultNodePool[0].ScalingGroupId,\n defaultNodePool[1].ScalingGroupId,\n },\n }).Apply(invoke =\u003e invoke.Result) },\n { \"20\", defaultNodePool[2].ScalingGroupId },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultNodePool []*cs.NodePool\n\t\tfor index := 0; index \u003c 3; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := cs.NewNodePool(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026cs.NodePoolArgs{\n\t\t\t\tNodePoolName: pulumi.String(invokeFormat2.Result),\n\t\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\t\tdefaultSwitch.ID(),\n\t\t\t\t},\n\t\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t\t},\n\t\t\t\tSystemDiskCategory: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\t\tImageType: pulumi.String(\"AliyunLinux3\"),\n\t\t\t\tScalingConfig: \u0026cs.NodePoolScalingConfigArgs{\n\t\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\t\tMinSize: pulumi.Int(0),\n\t\t\t\t\tMaxSize: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultNodePool = append(defaultNodePool, __res)\n\t\t}\n\t\t_, err = cs.NewAutoscalingConfig(ctx, \"default\", \u0026cs.AutoscalingConfigArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tCoolDownDuration: pulumi.String(\"10m\"),\n\t\t\tUnneededDuration: pulumi.String(\"10m\"),\n\t\t\tUtilizationThreshold: pulumi.String(\"0.5\"),\n\t\t\tGpuUtilizationThreshold: pulumi.String(\"0.5\"),\n\t\t\tScanInterval: pulumi.String(\"30s\"),\n\t\t\tScaleDownEnabled: pulumi.Bool(true),\n\t\t\tExpander: pulumi.String(\"priority\"),\n\t\t\tSkipNodesWithSystemPods: pulumi.Bool(true),\n\t\t\tSkipNodesWithLocalStorage: pulumi.Bool(false),\n\t\t\tDaemonsetEvictionForNodes: pulumi.Bool(false),\n\t\t\tMaxGracefulTerminationSec: pulumi.Int(14400),\n\t\t\tMinReplicaCount: pulumi.Int(0),\n\t\t\tRecycleNodeDeletionEnabled: pulumi.Bool(false),\n\t\t\tScaleUpFromZero: pulumi.Bool(true),\n\t\t\tScalerType: pulumi.String(\"cluster-autoscaler\"),\n\t\t\tPriorities: pulumi.StringMap{\n\t\t\t\t\"10\": pulumi.String(std.JoinOutput(ctx, std.JoinOutputArgs{\n\t\t\t\t\tSeparator: pulumi.String(\",\"),\n\t\t\t\t\tInput: pulumi.StringArray{\n\t\t\t\t\t\tdefaultNodePool[0].ScalingGroupId,\n\t\t\t\t\t\tdefaultNodePool[1].ScalingGroupId,\n\t\t\t\t\t},\n\t\t\t\t}, nil).ApplyT(func(invoke std.JoinResult) (*string, error) {\n\t\t\t\t\treturn invoke.Result, nil\n\t\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\t\t\"20\": defaultNodePool[2].ScalingGroupId,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolScalingConfigArgs;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.cs.AutoscalingConfig;\nimport com.pulumi.alicloud.cs.AutoscalingConfigArgs;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n for (var i = 0; i \u003c 3; i++) {\n new NodePool(\"defaultNodePool-\" + i, NodePoolArgs.builder()\n .nodePoolName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-%d\")\n .args( \n name,\n range.value())\n .build()).result())\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .systemDiskSize(40)\n .imageType(\"AliyunLinux3\")\n .scalingConfig(NodePoolScalingConfigArgs.builder()\n .enable(true)\n .minSize(0)\n .maxSize(10)\n .build())\n .build());\n\n \n}\n var defaultAutoscalingConfig = new AutoscalingConfig(\"defaultAutoscalingConfig\", AutoscalingConfigArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .coolDownDuration(\"10m\")\n .unneededDuration(\"10m\")\n .utilizationThreshold(\"0.5\")\n .gpuUtilizationThreshold(\"0.5\")\n .scanInterval(\"30s\")\n .scaleDownEnabled(true)\n .expander(\"priority\")\n .skipNodesWithSystemPods(true)\n .skipNodesWithLocalStorage(false)\n .daemonsetEvictionForNodes(false)\n .maxGracefulTerminationSec(14400)\n .minReplicaCount(0)\n .recycleNodeDeletionEnabled(false)\n .scaleUpFromZero(true)\n .scalerType(\"cluster-autoscaler\")\n .priorities(Map.ofEntries(\n Map.entry(\"10\", StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input( \n defaultNodePool[0].scalingGroupId(),\n defaultNodePool[1].scalingGroupId())\n .build()).applyValue(_invoke -\u003e _invoke.result())),\n Map.entry(\"20\", defaultNodePool[2].scalingGroupId())\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-%d'\n args:\n - ${name}\n - ${range.value}\n return: result\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_essd\n systemDiskSize: 40\n imageType: AliyunLinux3\n scalingConfig:\n enable: true\n minSize: 0\n maxSize: 10\n options: {}\n defaultAutoscalingConfig:\n type: alicloud:cs:AutoscalingConfig\n name: default\n properties:\n clusterId: ${defaultManagedKubernetes.id}\n coolDownDuration: 10m\n unneededDuration: 10m\n utilizationThreshold: '0.5'\n gpuUtilizationThreshold: '0.5'\n scanInterval: 30s\n scaleDownEnabled: true\n expander: priority\n skipNodesWithSystemPods: true\n skipNodesWithLocalStorage: false\n daemonsetEvictionForNodes: false\n maxGracefulTerminationSec: 14400\n minReplicaCount: 0\n recycleNodeDeletionEnabled: false\n scaleUpFromZero: true\n scalerType: cluster-autoscaler\n priorities:\n '10':\n fn::invoke:\n function: std:join\n arguments:\n separator: ','\n input:\n - ${defaultNodePool[0].scalingGroupId}\n - ${defaultNodePool[1].scalingGroupId}\n return: result\n '20': ${defaultNodePool[2].scalingGroupId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n systemDiskCategory: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"clusterId": {
"type": "string",
@@ -130468,7 +132939,7 @@
}
},
"alicloud:cs/edgeKubernetes:EdgeKubernetes": {
- "description": "This resource will help you to manage a Edge Kubernetes Cluster in Alibaba Cloud Kubernetes Service, see [What is edge kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-an-ack-edge-cluster).\n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** The provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** The provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** Available since v1.103.0.\n\n\u003e **NOTE:** From version 1.185.0+, support new fields \u003cspan pulumi-lang-nodejs=\"`clusterSpec`\" pulumi-lang-dotnet=\"`ClusterSpec`\" pulumi-lang-go=\"`clusterSpec`\" pulumi-lang-python=\"`cluster_spec`\" pulumi-lang-yaml=\"`clusterSpec`\" pulumi-lang-java=\"`clusterSpec`\"\u003e`cluster_spec`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`loadBalancerSpec`\" pulumi-lang-dotnet=\"`LoadBalancerSpec`\" pulumi-lang-go=\"`loadBalancerSpec`\" pulumi-lang-python=\"`load_balancer_spec`\" pulumi-lang-yaml=\"`loadBalancerSpec`\" pulumi-lang-java=\"`loadBalancerSpec`\"\u003e`load_balancer_spec`\u003c/span\u003e.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Master\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultEdgeKubernetes = new alicloud.cs.EdgeKubernetes(\"default\", {\n namePrefix: name,\n workerVswitchIds: [defaultSwitch.id],\n workerInstanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n version: \"1.26.3-aliyun.1\",\n workerNumber: 1,\n password: \"Test12345\",\n podCidr: \"10.99.0.0/16\",\n serviceCidr: \"172.16.0.0/16\",\n workerInstanceChargeType: \"PostPaid\",\n newNatGateway: true,\n nodeCidrMask: 24,\n installCloudMonitor: true,\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n skipSetCertificateAuthority: true,\n workerDataDisks: [{\n category: \"cloud_ssd\",\n size: \"200\",\n encrypted: \"false\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Master\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_edge_kubernetes = alicloud.cs.EdgeKubernetes(\"default\",\n name_prefix=name,\n worker_vswitch_ids=[default_switch.id],\n worker_instance_types=[default_get_instance_types.instance_types[0].id],\n version=\"1.26.3-aliyun.1\",\n worker_number=1,\n password=\"Test12345\",\n pod_cidr=\"10.99.0.0/16\",\n service_cidr=\"172.16.0.0/16\",\n worker_instance_charge_type=\"PostPaid\",\n new_nat_gateway=True,\n node_cidr_mask=24,\n install_cloud_monitor=True,\n slb_internet_enabled=True,\n is_enterprise_security_group=True,\n skip_set_certificate_authority=True,\n worker_data_disks=[{\n \"category\": \"cloud_ssd\",\n \"size\": \"200\",\n \"encrypted\": \"false\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Master\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultEdgeKubernetes = new AliCloud.CS.EdgeKubernetes(\"default\", new()\n {\n NamePrefix = name,\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n WorkerInstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n Version = \"1.26.3-aliyun.1\",\n WorkerNumber = 1,\n Password = \"Test12345\",\n PodCidr = \"10.99.0.0/16\",\n ServiceCidr = \"172.16.0.0/16\",\n WorkerInstanceChargeType = \"PostPaid\",\n NewNatGateway = true,\n NodeCidrMask = 24,\n InstallCloudMonitor = true,\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n SkipSetCertificateAuthority = true,\n WorkerDataDisks = new[]\n {\n new AliCloud.CS.Inputs.EdgeKubernetesWorkerDataDiskArgs\n {\n Category = \"cloud_ssd\",\n Size = \"200\",\n Encrypted = \"false\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Master\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewEdgeKubernetes(ctx, \"default\", \u0026cs.EdgeKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tWorkerInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tVersion: pulumi.String(\"1.26.3-aliyun.1\"),\n\t\t\tWorkerNumber: pulumi.Int(1),\n\t\t\tPassword: pulumi.String(\"Test12345\"),\n\t\t\tPodCidr: pulumi.String(\"10.99.0.0/16\"),\n\t\t\tServiceCidr: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tWorkerInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tNodeCidrMask: pulumi.Int(24),\n\t\t\tInstallCloudMonitor: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tWorkerDataDisks: cs.EdgeKubernetesWorkerDataDiskArray{\n\t\t\t\t\u0026cs.EdgeKubernetesWorkerDataDiskArgs{\n\t\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\t\tSize: pulumi.String(\"200\"),\n\t\t\t\t\tEncrypted: pulumi.String(\"false\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.EdgeKubernetes;\nimport com.pulumi.alicloud.cs.EdgeKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.EdgeKubernetesWorkerDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Master\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultEdgeKubernetes = new EdgeKubernetes(\"defaultEdgeKubernetes\", EdgeKubernetesArgs.builder()\n .namePrefix(name)\n .workerVswitchIds(defaultSwitch.id())\n .workerInstanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .version(\"1.26.3-aliyun.1\")\n .workerNumber(1)\n .password(\"Test12345\")\n .podCidr(\"10.99.0.0/16\")\n .serviceCidr(\"172.16.0.0/16\")\n .workerInstanceChargeType(\"PostPaid\")\n .newNatGateway(true)\n .nodeCidrMask(24)\n .installCloudMonitor(true)\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .skipSetCertificateAuthority(true)\n .workerDataDisks(EdgeKubernetesWorkerDataDiskArgs.builder()\n .category(\"cloud_ssd\")\n .size(\"200\")\n .encrypted(\"false\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultEdgeKubernetes:\n type: alicloud:cs:EdgeKubernetes\n name: default\n properties:\n namePrefix: ${name}\n workerVswitchIds:\n - ${defaultSwitch.id}\n workerInstanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n version: 1.26.3-aliyun.1\n workerNumber: 1\n password: Test12345\n podCidr: 10.99.0.0/16\n serviceCidr: 172.16.0.0/16\n workerInstanceChargeType: PostPaid\n newNatGateway: true\n nodeCidrMask: 24\n installCloudMonitor: true\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n skipSetCertificateAuthority: true\n workerDataDisks:\n - category: cloud_ssd\n size: '200'\n encrypted: 'false'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Master\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nYou could create a professional kubernetes edge cluster now.\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Master\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultEdgeKubernetes = new alicloud.cs.EdgeKubernetes(\"default\", {\n namePrefix: name,\n workerVswitchIds: [defaultSwitch.id],\n workerInstanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n clusterSpec: \"ack.pro.small\",\n workerNumber: 1,\n password: \"Test12345\",\n podCidr: \"10.99.0.0/16\",\n serviceCidr: \"172.16.0.0/16\",\n workerInstanceChargeType: \"PostPaid\",\n newNatGateway: true,\n nodeCidrMask: 24,\n loadBalancerSpec: \"slb.s2.small\",\n installCloudMonitor: true,\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n skipSetCertificateAuthority: true,\n workerDataDisks: [{\n category: \"cloud_ssd\",\n size: \"200\",\n encrypted: \"false\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Master\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_edge_kubernetes = alicloud.cs.EdgeKubernetes(\"default\",\n name_prefix=name,\n worker_vswitch_ids=[default_switch.id],\n worker_instance_types=[default_get_instance_types.instance_types[0].id],\n cluster_spec=\"ack.pro.small\",\n worker_number=1,\n password=\"Test12345\",\n pod_cidr=\"10.99.0.0/16\",\n service_cidr=\"172.16.0.0/16\",\n worker_instance_charge_type=\"PostPaid\",\n new_nat_gateway=True,\n node_cidr_mask=24,\n load_balancer_spec=\"slb.s2.small\",\n install_cloud_monitor=True,\n slb_internet_enabled=True,\n is_enterprise_security_group=True,\n skip_set_certificate_authority=True,\n worker_data_disks=[{\n \"category\": \"cloud_ssd\",\n \"size\": \"200\",\n \"encrypted\": \"false\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Master\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultEdgeKubernetes = new AliCloud.CS.EdgeKubernetes(\"default\", new()\n {\n NamePrefix = name,\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n WorkerInstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n ClusterSpec = \"ack.pro.small\",\n WorkerNumber = 1,\n Password = \"Test12345\",\n PodCidr = \"10.99.0.0/16\",\n ServiceCidr = \"172.16.0.0/16\",\n WorkerInstanceChargeType = \"PostPaid\",\n NewNatGateway = true,\n NodeCidrMask = 24,\n LoadBalancerSpec = \"slb.s2.small\",\n InstallCloudMonitor = true,\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n SkipSetCertificateAuthority = true,\n WorkerDataDisks = new[]\n {\n new AliCloud.CS.Inputs.EdgeKubernetesWorkerDataDiskArgs\n {\n Category = \"cloud_ssd\",\n Size = \"200\",\n Encrypted = \"false\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Master\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewEdgeKubernetes(ctx, \"default\", \u0026cs.EdgeKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tWorkerInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerNumber: pulumi.Int(1),\n\t\t\tPassword: pulumi.String(\"Test12345\"),\n\t\t\tPodCidr: pulumi.String(\"10.99.0.0/16\"),\n\t\t\tServiceCidr: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tWorkerInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tNodeCidrMask: pulumi.Int(24),\n\t\t\tLoadBalancerSpec: pulumi.String(\"slb.s2.small\"),\n\t\t\tInstallCloudMonitor: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tWorkerDataDisks: cs.EdgeKubernetesWorkerDataDiskArray{\n\t\t\t\t\u0026cs.EdgeKubernetesWorkerDataDiskArgs{\n\t\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\t\tSize: pulumi.String(\"200\"),\n\t\t\t\t\tEncrypted: pulumi.String(\"false\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.EdgeKubernetes;\nimport com.pulumi.alicloud.cs.EdgeKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.EdgeKubernetesWorkerDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Master\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultEdgeKubernetes = new EdgeKubernetes(\"defaultEdgeKubernetes\", EdgeKubernetesArgs.builder()\n .namePrefix(name)\n .workerVswitchIds(defaultSwitch.id())\n .workerInstanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .clusterSpec(\"ack.pro.small\")\n .workerNumber(1)\n .password(\"Test12345\")\n .podCidr(\"10.99.0.0/16\")\n .serviceCidr(\"172.16.0.0/16\")\n .workerInstanceChargeType(\"PostPaid\")\n .newNatGateway(true)\n .nodeCidrMask(24)\n .loadBalancerSpec(\"slb.s2.small\")\n .installCloudMonitor(true)\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .skipSetCertificateAuthority(true)\n .workerDataDisks(EdgeKubernetesWorkerDataDiskArgs.builder()\n .category(\"cloud_ssd\")\n .size(\"200\")\n .encrypted(\"false\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultEdgeKubernetes:\n type: alicloud:cs:EdgeKubernetes\n name: default\n properties:\n namePrefix: ${name}\n workerVswitchIds:\n - ${defaultSwitch.id}\n workerInstanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n clusterSpec: ack.pro.small\n workerNumber: 1\n password: Test12345\n podCidr: 10.99.0.0/16\n serviceCidr: 172.16.0.0/16\n workerInstanceChargeType: PostPaid\n newNatGateway: true\n nodeCidrMask: 24\n loadBalancerSpec: slb.s2.small\n installCloudMonitor: true\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n skipSetCertificateAuthority: true\n workerDataDisks:\n - category: cloud_ssd\n size: '200'\n encrypted: 'false'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Master\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nKubernetes edge cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/edgeKubernetes:EdgeKubernetes main cluster-id\n```\n\n",
+ "description": "This resource will help you to manage a Edge Kubernetes Cluster in Alibaba Cloud Kubernetes Service, see [What is edge kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-an-ack-edge-cluster).\n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** The provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** The provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** Available since v1.103.0.\n\n\u003e **NOTE:** From version 1.185.0+, support new fields \u003cspan pulumi-lang-nodejs=\"`clusterSpec`\" pulumi-lang-dotnet=\"`ClusterSpec`\" pulumi-lang-go=\"`clusterSpec`\" pulumi-lang-python=\"`cluster_spec`\" pulumi-lang-yaml=\"`clusterSpec`\" pulumi-lang-java=\"`clusterSpec`\"\u003e`cluster_spec`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`loadBalancerSpec`\" pulumi-lang-dotnet=\"`LoadBalancerSpec`\" pulumi-lang-go=\"`loadBalancerSpec`\" pulumi-lang-python=\"`load_balancer_spec`\" pulumi-lang-yaml=\"`loadBalancerSpec`\" pulumi-lang-java=\"`loadBalancerSpec`\"\u003e`load_balancer_spec`\u003c/span\u003e.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Master\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultEdgeKubernetes = new alicloud.cs.EdgeKubernetes(\"default\", {\n namePrefix: name,\n workerVswitchIds: [defaultSwitch.id],\n workerInstanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n version: \"1.26.3-aliyun.1\",\n workerNumber: 1,\n password: \"Test12345\",\n podCidr: \"10.99.0.0/16\",\n serviceCidr: \"172.16.0.0/16\",\n workerInstanceChargeType: \"PostPaid\",\n newNatGateway: true,\n nodeCidrMask: 24,\n installCloudMonitor: true,\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n skipSetCertificateAuthority: true,\n workerDataDisks: [{\n category: \"cloud_ssd\",\n size: \"200\",\n encrypted: \"false\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Master\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_edge_kubernetes = alicloud.cs.EdgeKubernetes(\"default\",\n name_prefix=name,\n worker_vswitch_ids=[default_switch.id],\n worker_instance_types=[default_get_instance_types.instance_types[0].id],\n version=\"1.26.3-aliyun.1\",\n worker_number=1,\n password=\"Test12345\",\n pod_cidr=\"10.99.0.0/16\",\n service_cidr=\"172.16.0.0/16\",\n worker_instance_charge_type=\"PostPaid\",\n new_nat_gateway=True,\n node_cidr_mask=24,\n install_cloud_monitor=True,\n slb_internet_enabled=True,\n is_enterprise_security_group=True,\n skip_set_certificate_authority=True,\n worker_data_disks=[{\n \"category\": \"cloud_ssd\",\n \"size\": \"200\",\n \"encrypted\": \"false\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Master\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultEdgeKubernetes = new AliCloud.CS.EdgeKubernetes(\"default\", new()\n {\n NamePrefix = name,\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n WorkerInstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n Version = \"1.26.3-aliyun.1\",\n WorkerNumber = 1,\n Password = \"Test12345\",\n PodCidr = \"10.99.0.0/16\",\n ServiceCidr = \"172.16.0.0/16\",\n WorkerInstanceChargeType = \"PostPaid\",\n NewNatGateway = true,\n NodeCidrMask = 24,\n InstallCloudMonitor = true,\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n SkipSetCertificateAuthority = true,\n WorkerDataDisks = new[]\n {\n new AliCloud.CS.Inputs.EdgeKubernetesWorkerDataDiskArgs\n {\n Category = \"cloud_ssd\",\n Size = \"200\",\n Encrypted = \"false\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Master\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewEdgeKubernetes(ctx, \"default\", \u0026cs.EdgeKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tWorkerInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tVersion: pulumi.String(\"1.26.3-aliyun.1\"),\n\t\t\tWorkerNumber: pulumi.Int(1),\n\t\t\tPassword: pulumi.String(\"Test12345\"),\n\t\t\tPodCidr: pulumi.String(\"10.99.0.0/16\"),\n\t\t\tServiceCidr: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tWorkerInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tNodeCidrMask: pulumi.Int(24),\n\t\t\tInstallCloudMonitor: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tWorkerDataDisks: cs.EdgeKubernetesWorkerDataDiskArray{\n\t\t\t\t\u0026cs.EdgeKubernetesWorkerDataDiskArgs{\n\t\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\t\tSize: pulumi.String(\"200\"),\n\t\t\t\t\tEncrypted: pulumi.String(\"false\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.EdgeKubernetes;\nimport com.pulumi.alicloud.cs.EdgeKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.EdgeKubernetesWorkerDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Master\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultEdgeKubernetes = new EdgeKubernetes(\"defaultEdgeKubernetes\", EdgeKubernetesArgs.builder()\n .namePrefix(name)\n .workerVswitchIds(defaultSwitch.id())\n .workerInstanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .version(\"1.26.3-aliyun.1\")\n .workerNumber(1)\n .password(\"Test12345\")\n .podCidr(\"10.99.0.0/16\")\n .serviceCidr(\"172.16.0.0/16\")\n .workerInstanceChargeType(\"PostPaid\")\n .newNatGateway(true)\n .nodeCidrMask(24)\n .installCloudMonitor(true)\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .skipSetCertificateAuthority(true)\n .workerDataDisks(EdgeKubernetesWorkerDataDiskArgs.builder()\n .category(\"cloud_ssd\")\n .size(\"200\")\n .encrypted(\"false\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultEdgeKubernetes:\n type: alicloud:cs:EdgeKubernetes\n name: default\n properties:\n namePrefix: ${name}\n workerVswitchIds:\n - ${defaultSwitch.id}\n workerInstanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n version: 1.26.3-aliyun.1\n workerNumber: 1\n password: Test12345\n podCidr: 10.99.0.0/16\n serviceCidr: 172.16.0.0/16\n workerInstanceChargeType: PostPaid\n newNatGateway: true\n nodeCidrMask: 24\n installCloudMonitor: true\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n skipSetCertificateAuthority: true\n workerDataDisks:\n - category: cloud_ssd\n size: '200'\n encrypted: 'false'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Master\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nYou could create a professional kubernetes edge cluster now.\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Master\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultEdgeKubernetes = new alicloud.cs.EdgeKubernetes(\"default\", {\n namePrefix: name,\n workerVswitchIds: [defaultSwitch.id],\n workerInstanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n clusterSpec: \"ack.pro.small\",\n workerNumber: 1,\n password: \"Test12345\",\n podCidr: \"10.99.0.0/16\",\n serviceCidr: \"172.16.0.0/16\",\n workerInstanceChargeType: \"PostPaid\",\n newNatGateway: true,\n nodeCidrMask: 24,\n loadBalancerSpec: \"slb.s2.small\",\n installCloudMonitor: true,\n slbInternetEnabled: true,\n isEnterpriseSecurityGroup: true,\n skipSetCertificateAuthority: true,\n workerDataDisks: [{\n category: \"cloud_ssd\",\n size: \"200\",\n encrypted: \"false\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Master\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_edge_kubernetes = alicloud.cs.EdgeKubernetes(\"default\",\n name_prefix=name,\n worker_vswitch_ids=[default_switch.id],\n worker_instance_types=[default_get_instance_types.instance_types[0].id],\n cluster_spec=\"ack.pro.small\",\n worker_number=1,\n password=\"Test12345\",\n pod_cidr=\"10.99.0.0/16\",\n service_cidr=\"172.16.0.0/16\",\n worker_instance_charge_type=\"PostPaid\",\n new_nat_gateway=True,\n node_cidr_mask=24,\n load_balancer_spec=\"slb.s2.small\",\n install_cloud_monitor=True,\n slb_internet_enabled=True,\n is_enterprise_security_group=True,\n skip_set_certificate_authority=True,\n worker_data_disks=[{\n \"category\": \"cloud_ssd\",\n \"size\": \"200\",\n \"encrypted\": \"false\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Master\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultEdgeKubernetes = new AliCloud.CS.EdgeKubernetes(\"default\", new()\n {\n NamePrefix = name,\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n WorkerInstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n ClusterSpec = \"ack.pro.small\",\n WorkerNumber = 1,\n Password = \"Test12345\",\n PodCidr = \"10.99.0.0/16\",\n ServiceCidr = \"172.16.0.0/16\",\n WorkerInstanceChargeType = \"PostPaid\",\n NewNatGateway = true,\n NodeCidrMask = 24,\n LoadBalancerSpec = \"slb.s2.small\",\n InstallCloudMonitor = true,\n SlbInternetEnabled = true,\n IsEnterpriseSecurityGroup = true,\n SkipSetCertificateAuthority = true,\n WorkerDataDisks = new[]\n {\n new AliCloud.CS.Inputs.EdgeKubernetesWorkerDataDiskArgs\n {\n Category = \"cloud_ssd\",\n Size = \"200\",\n Encrypted = \"false\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Master\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewEdgeKubernetes(ctx, \"default\", \u0026cs.EdgeKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tWorkerInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerNumber: pulumi.Int(1),\n\t\t\tPassword: pulumi.String(\"Test12345\"),\n\t\t\tPodCidr: pulumi.String(\"10.99.0.0/16\"),\n\t\t\tServiceCidr: pulumi.String(\"172.16.0.0/16\"),\n\t\t\tWorkerInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tNodeCidrMask: pulumi.Int(24),\n\t\t\tLoadBalancerSpec: pulumi.String(\"slb.s2.small\"),\n\t\t\tInstallCloudMonitor: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tWorkerDataDisks: cs.EdgeKubernetesWorkerDataDiskArray{\n\t\t\t\t\u0026cs.EdgeKubernetesWorkerDataDiskArgs{\n\t\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\t\tSize: pulumi.String(\"200\"),\n\t\t\t\t\tEncrypted: pulumi.String(\"false\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.EdgeKubernetes;\nimport com.pulumi.alicloud.cs.EdgeKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.EdgeKubernetesWorkerDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Master\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultEdgeKubernetes = new EdgeKubernetes(\"defaultEdgeKubernetes\", EdgeKubernetesArgs.builder()\n .namePrefix(name)\n .workerVswitchIds(defaultSwitch.id())\n .workerInstanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .clusterSpec(\"ack.pro.small\")\n .workerNumber(1)\n .password(\"Test12345\")\n .podCidr(\"10.99.0.0/16\")\n .serviceCidr(\"172.16.0.0/16\")\n .workerInstanceChargeType(\"PostPaid\")\n .newNatGateway(true)\n .nodeCidrMask(24)\n .loadBalancerSpec(\"slb.s2.small\")\n .installCloudMonitor(true)\n .slbInternetEnabled(true)\n .isEnterpriseSecurityGroup(true)\n .skipSetCertificateAuthority(true)\n .workerDataDisks(EdgeKubernetesWorkerDataDiskArgs.builder()\n .category(\"cloud_ssd\")\n .size(\"200\")\n .encrypted(\"false\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultEdgeKubernetes:\n type: alicloud:cs:EdgeKubernetes\n name: default\n properties:\n namePrefix: ${name}\n workerVswitchIds:\n - ${defaultSwitch.id}\n workerInstanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n clusterSpec: ack.pro.small\n workerNumber: 1\n password: Test12345\n podCidr: 10.99.0.0/16\n serviceCidr: 172.16.0.0/16\n workerInstanceChargeType: PostPaid\n newNatGateway: true\n nodeCidrMask: 24\n loadBalancerSpec: slb.s2.small\n installCloudMonitor: true\n slbInternetEnabled: true\n isEnterpriseSecurityGroup: true\n skipSetCertificateAuthority: true\n workerDataDisks:\n - category: cloud_ssd\n size: '200'\n encrypted: 'false'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Master\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nKubernetes edge cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/edgeKubernetes:EdgeKubernetes main cluster-id\n```\n\n",
"properties": {
"addons": {
"type": "array",
@@ -131134,7 +133605,7 @@
}
},
"alicloud:cs/kubernetes:Kubernetes": {
- "description": "This resource will help you to manage a Kubernetes Cluster in Alibaba Cloud Kubernetes Service, see [What is kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-an-ask-cluster-1).\n\n\u003e **NOTE:** From August 21, 2024, Container Service for Kubernetes (ACK) discontinues the creation of ACK dedicated clusters, see [Product announcement](https://www.alibabacloud.com/help/en/ack/product-overview/product-announcement-announcement-on-stopping-new-ack-dedicated-cluster) for more details.\n\n\u003e **NOTE:** Available since v1.9.0.\n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Each kubernetes cluster contains 3 master nodes and those number cannot be changed at now.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** From version 1.9.4, the provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** From version 1.16.0, the provider supports Multiple Availability Zones Kubernetes Cluster. To create a cluster of this kind, you must specify 3 or 5 items in \u003cspan pulumi-lang-nodejs=\"`masterVswitchIds`\" pulumi-lang-dotnet=\"`MasterVswitchIds`\" pulumi-lang-go=\"`masterVswitchIds`\" pulumi-lang-python=\"`master_vswitch_ids`\" pulumi-lang-yaml=\"`masterVswitchIds`\" pulumi-lang-java=\"`masterVswitchIds`\"\u003e`master_vswitch_ids`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`masterInstanceTypes`\" pulumi-lang-dotnet=\"`MasterInstanceTypes`\" pulumi-lang-go=\"`masterInstanceTypes`\" pulumi-lang-python=\"`master_instance_types`\" pulumi-lang-yaml=\"`masterInstanceTypes`\" pulumi-lang-java=\"`masterInstanceTypes`\"\u003e`master_instance_types`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.20.0, the provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.75.0, Some parameters have been removed from resource,You can check them below and re-import the cluster if necessary.\n\n\u003e **NOTE:** From version 1.101.0+, We supported the `professional managed clusters(ack-pro)`, You can create a pro cluster by setting the the value of \u003cspan pulumi-lang-nodejs=\"`clusterSpec`\" pulumi-lang-dotnet=\"`ClusterSpec`\" pulumi-lang-go=\"`clusterSpec`\" pulumi-lang-python=\"`cluster_spec`\" pulumi-lang-yaml=\"`clusterSpec`\" pulumi-lang-java=\"`clusterSpec`\"\u003e`cluster_spec`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.177.0+, \u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerVswitchIds`\" pulumi-lang-dotnet=\"`WorkerVswitchIds`\" pulumi-lang-go=\"`workerVswitchIds`\" pulumi-lang-python=\"`worker_vswitch_ids`\" pulumi-lang-yaml=\"`workerVswitchIds`\" pulumi-lang-java=\"`workerVswitchIds`\"\u003e`worker_vswitch_ids`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e are deprecated.\nWe Suggest you using resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n\u003e **NOTE:** From version 1.212.0, \u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerVswitchIds`\" pulumi-lang-dotnet=\"`WorkerVswitchIds`\" pulumi-lang-go=\"`workerVswitchIds`\" pulumi-lang-python=\"`worker_vswitch_ids`\" pulumi-lang-yaml=\"`workerVswitchIds`\" pulumi-lang-java=\"`workerVswitchIds`\"\u003e`worker_vswitch_ids`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kubeConfig`\" pulumi-lang-dotnet=\"`KubeConfig`\" pulumi-lang-go=\"`kubeConfig`\" pulumi-lang-python=\"`kube_config`\" pulumi-lang-yaml=\"`kubeConfig`\" pulumi-lang-java=\"`kubeConfig`\"\u003e`kube_config`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e are removed.\nPlease use resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-kubernetes-example\";\n// Existing vpc id used to create several vswitches and other resources.\nconst vpcId = config.get(\"vpcId\") || \"\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of existing vswitch id.\nconst vswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n \"10.3.0.0/16\",\n];\n// List of existing vswitch ids for terway.\nconst terwayVswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nconst terwayVswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchCidrs\") || [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n \"10.6.0.0/16\",\n];\nconst clusterAddons = config.getObject\u003cArray\u003c{config?: Record\u003cstring, string\u003e, name?: string}\u003e\u003e(\"clusterAddons\") || [\n {\n config: {},\n name: \"terway-eniip\",\n },\n {\n config: {},\n name: \"csi-plugin\",\n },\n {\n config: {},\n name: \"csi-provisioner\",\n },\n {\n config: {\n IngressDashboardEnabled: \"true\",\n },\n name: \"logtail-ds\",\n },\n {\n config: {\n IngressSlbNetworkType: \"internet\",\n },\n name: \"nginx-ingress-controller\",\n },\n {\n config: {},\n name: \"arms-prometheus\",\n },\n {\n config: {\n sls_project_name: \"\",\n },\n name: \"ack-node-problem-detector\",\n },\n];\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\n// If there is not specifying vpc_id, the module will launch a new vpc\nconst vpc: alicloud.vpc.Network[] = [];\nfor (const range = {value: 0}; range.value \u003c (vpcId == \"\" ? 1 : 0); range.value++) {\n vpc.push(new alicloud.vpc.Network(`vpc-${range.value}`, {cidrBlock: vpcCidr}));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst vswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (vswitchIds.length \u003e 0 ? 0 : vswitchCidrs.length); range.value++) {\n vswitches.push(new alicloud.vpc.Switch(`vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: pulumi.all([enhanced, enhanced.then(enhanced =\u003e enhanced.zones).length]).apply(([enhanced, length]) =\u003e enhanced.zones[range.value \u003c length ? range.value : 0].zoneId),\n }));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst terwayVswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (terwayVswitchIds.length \u003e 0 ? 0 : terwayVswitchCidrs.length); range.value++) {\n terwayVswitches.push(new alicloud.vpc.Switch(`terway_vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: terwayVswitchCidrs[range.value],\n zoneId: pulumi.all([enhanced, enhanced.then(enhanced =\u003e enhanced.zones).length]).apply(([enhanced, length]) =\u003e enhanced.zones[range.value \u003c length ? range.value : 0].zoneId),\n }));\n}\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst cloudEssd = (new Array(3)).map((_, i) =\u003e i).map(__index =\u003e (alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: _arg0_.zones[__index \u003c _arg1_ ? __index : 0].zoneId,\n cpuCoreCount: 4,\n memorySize: 8,\n systemDiskCategory: \"cloud_essd\",\n})));\nconst defaultKubernetes = new alicloud.cs.Kubernetes(\"default\", {\n addons: clusterAddons.map((v, k) =\u003e ({key: k, value: v})).map(entry =\u003e ({\n name: std.lookup({\n map: entry.value,\n key: \"name\",\n \"default\": clusterAddons,\n }).then(invoke =\u003e invoke.result),\n config: JSON.stringify(std.lookup({\n map: entry.value,\n key: \"config\",\n \"default\": clusterAddons,\n }).then(invoke =\u003e invoke.result)),\n })),\n masterVswitchIds: vswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: vswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : vswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: vswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n podVswitchIds: terwayVswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: terwayVswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : terwayVswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: terwayVswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n masterInstanceTypes: [\n cloudEssd[0].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n cloudEssd[1].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n cloudEssd[2].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n ],\n masterDiskCategory: \"cloud_essd\",\n password: \"Yourpassword1234\",\n serviceCidr: \"172.18.0.0/16\",\n installCloudMonitor: true,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n deletionProtection: false,\n timezone: \"Asia/Shanghai\",\n osType: \"Linux\",\n platform: \"AliyunLinux3\",\n clusterDomain: \"cluster.local\",\n proxyMode: \"ipvs\",\n customSan: \"www.terraform.io\",\n newNatGateway: true,\n skipSetCertificateAuthority: true,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-kubernetes-example\"\n# Existing vpc id used to create several vswitches and other resources.\nvpc_id = config.get(\"vpcId\")\nif vpc_id is None:\n vpc_id = \"\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of existing vswitch id.\nvswitch_ids = config.get_object(\"vswitchIds\")\nif vswitch_ids is None:\n vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n \"10.3.0.0/16\",\n ]\n# List of existing vswitch ids for terway.\nterway_vswitch_ids = config.get_object(\"terwayVswitchIds\")\nif terway_vswitch_ids is None:\n terway_vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nterway_vswitch_cidrs = config.get_object(\"terwayVswitchCidrs\")\nif terway_vswitch_cidrs is None:\n terway_vswitch_cidrs = [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n \"10.6.0.0/16\",\n ]\ncluster_addons = config.get_object(\"clusterAddons\")\nif cluster_addons is None:\n cluster_addons = [\n {\n \"config\": {},\n \"name\": \"terway-eniip\",\n },\n {\n \"config\": {},\n \"name\": \"csi-plugin\",\n },\n {\n \"config\": {},\n \"name\": \"csi-provisioner\",\n },\n {\n \"config\": {\n \"IngressDashboardEnabled\": \"true\",\n },\n \"name\": \"logtail-ds\",\n },\n {\n \"config\": {\n \"IngressSlbNetworkType\": \"internet\",\n },\n \"name\": \"nginx-ingress-controller\",\n },\n {\n \"config\": {},\n \"name\": \"arms-prometheus\",\n },\n {\n \"config\": {\n \"sls_project_name\": \"\",\n },\n \"name\": \"ack-node-problem-detector\",\n },\n ]\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\n# If there is not specifying vpc_id, the module will launch a new vpc\nvpc = []\nfor range in [{\"value\": i} for i in range(0, 1 if vpc_id == else 0)]:\n vpc.append(alicloud.vpc.Network(f\"vpc-{range['value']}\", cidr_block=vpc_cidr))\n# According to the vswitch cidr blocks to launch several vswitches\nvswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(vswitch_ids) \u003e 0 else len(vswitch_cidrs))]:\n vswitches.append(alicloud.vpc.Switch(f\"vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=len(enhanced.zones).apply(lambda length: enhanced.zones[range[\"value\"] if range[\"value\"] \u003c length else 0]).apply(lambda obj: obj.zone_id)))\n# According to the vswitch cidr blocks to launch several vswitches\nterway_vswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(terway_vswitch_ids) \u003e 0 else len(terway_vswitch_cidrs))]:\n terway_vswitches.append(alicloud.vpc.Switch(f\"terway_vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=terway_vswitch_cidrs[range[\"value\"]],\n zone_id=len(enhanced.zones).apply(lambda length: enhanced.zones[range[\"value\"] if range[\"value\"] \u003c length else 0]).apply(lambda obj: obj.zone_id)))\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ncloud_essd = [alicloud.ecs.get_instance_types_output(availability_zone=_arg0_.zone_id,\n cpu_core_count=4,\n memory_size=8,\n system_disk_category=\"cloud_essd\") for __index in range(3)]\ndefault_kubernetes = alicloud.cs.Kubernetes(\"default\",\n addons=[{\n \"name\": std.lookup(map=entry[\"value\"],\n key=\"name\",\n default=cluster_addons).result,\n \"config\": json.dumps(std.lookup(map=entry[\"value\"],\n key=\"config\",\n default=cluster_addons).result),\n } for entry in [{\"key\": k, \"value\": v} for k, v in cluster_addons]],\n master_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=vswitch_ids).result).result if len(vswitch_ids) \u003e 0 else [] if len(vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n pod_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) \u003e 0 else [] if len(terway_vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n master_instance_types=[\n cloud_essd[0].instance_types[0].id,\n cloud_essd[1].instance_types[0].id,\n cloud_essd[2].instance_types[0].id,\n ],\n master_disk_category=\"cloud_essd\",\n password=\"Yourpassword1234\",\n service_cidr=\"172.18.0.0/16\",\n install_cloud_monitor=True,\n resource_group_id=default.groups[0].id,\n deletion_protection=False,\n timezone=\"Asia/Shanghai\",\n os_type=\"Linux\",\n platform=\"AliyunLinux3\",\n cluster_domain=\"cluster.local\",\n proxy_mode=\"ipvs\",\n custom_san=\"www.terraform.io\",\n new_nat_gateway=True,\n skip_set_certificate_authority=True)\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nKubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/kubernetes:Kubernetes main cluster-id\n```\n\n",
+ "description": "This resource will help you to manage a Kubernetes Cluster in Alibaba Cloud Kubernetes Service, see [What is kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-an-ask-cluster-1).\n\n\u003e **NOTE:** From August 21, 2024, Container Service for Kubernetes (ACK) discontinues the creation of ACK dedicated clusters, see [Product announcement](https://www.alibabacloud.com/help/en/ack/product-overview/product-announcement-announcement-on-stopping-new-ack-dedicated-cluster) for more details.\n\n\u003e **NOTE:** Available since v1.9.0.\n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Each kubernetes cluster contains 3 master nodes and those number cannot be changed at now.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** From version 1.9.4, the provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** From version 1.16.0, the provider supports Multiple Availability Zones Kubernetes Cluster. To create a cluster of this kind, you must specify 3 or 5 items in \u003cspan pulumi-lang-nodejs=\"`masterVswitchIds`\" pulumi-lang-dotnet=\"`MasterVswitchIds`\" pulumi-lang-go=\"`masterVswitchIds`\" pulumi-lang-python=\"`master_vswitch_ids`\" pulumi-lang-yaml=\"`masterVswitchIds`\" pulumi-lang-java=\"`masterVswitchIds`\"\u003e`master_vswitch_ids`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`masterInstanceTypes`\" pulumi-lang-dotnet=\"`MasterInstanceTypes`\" pulumi-lang-go=\"`masterInstanceTypes`\" pulumi-lang-python=\"`master_instance_types`\" pulumi-lang-yaml=\"`masterInstanceTypes`\" pulumi-lang-java=\"`masterInstanceTypes`\"\u003e`master_instance_types`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.20.0, the provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.75.0, Some parameters have been removed from resource,You can check them below and re-import the cluster if necessary.\n\n\u003e **NOTE:** From version 1.101.0+, We supported the `professional managed clusters(ack-pro)`, You can create a pro cluster by setting the the value of \u003cspan pulumi-lang-nodejs=\"`clusterSpec`\" pulumi-lang-dotnet=\"`ClusterSpec`\" pulumi-lang-go=\"`clusterSpec`\" pulumi-lang-python=\"`cluster_spec`\" pulumi-lang-yaml=\"`clusterSpec`\" pulumi-lang-java=\"`clusterSpec`\"\u003e`cluster_spec`\u003c/span\u003e.\n\n\u003e **NOTE:** From version 1.177.0+, \u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerVswitchIds`\" pulumi-lang-dotnet=\"`WorkerVswitchIds`\" pulumi-lang-go=\"`workerVswitchIds`\" pulumi-lang-python=\"`worker_vswitch_ids`\" pulumi-lang-yaml=\"`workerVswitchIds`\" pulumi-lang-java=\"`workerVswitchIds`\"\u003e`worker_vswitch_ids`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e are deprecated.\nWe Suggest you using resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n\u003e **NOTE:** From version 1.212.0, \u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerVswitchIds`\" pulumi-lang-dotnet=\"`WorkerVswitchIds`\" pulumi-lang-go=\"`workerVswitchIds`\" pulumi-lang-python=\"`worker_vswitch_ids`\" pulumi-lang-yaml=\"`workerVswitchIds`\" pulumi-lang-java=\"`workerVswitchIds`\"\u003e`worker_vswitch_ids`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kubeConfig`\" pulumi-lang-dotnet=\"`KubeConfig`\" pulumi-lang-go=\"`kubeConfig`\" pulumi-lang-python=\"`kube_config`\" pulumi-lang-yaml=\"`kubeConfig`\" pulumi-lang-java=\"`kubeConfig`\"\u003e`kube_config`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e are removed.\nPlease use resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-kubernetes-example\";\n// Existing vpc id used to create several vswitches and other resources.\nconst vpcId = config.get(\"vpcId\") || \"\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of existing vswitch id.\nconst vswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n \"10.3.0.0/16\",\n];\n// List of existing vswitch ids for terway.\nconst terwayVswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nconst terwayVswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchCidrs\") || [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n \"10.6.0.0/16\",\n];\nconst clusterAddons = config.getObject\u003cArray\u003c{config?: Record\u003cstring, string\u003e, name?: string}\u003e\u003e(\"clusterAddons\") || [\n {\n config: {},\n name: \"terway-eniip\",\n },\n {\n config: {},\n name: \"csi-plugin\",\n },\n {\n config: {},\n name: \"csi-provisioner\",\n },\n {\n config: {\n IngressDashboardEnabled: \"true\",\n },\n name: \"logtail-ds\",\n },\n {\n config: {\n IngressSlbNetworkType: \"internet\",\n },\n name: \"nginx-ingress-controller\",\n },\n {\n config: {},\n name: \"arms-prometheus\",\n },\n {\n config: {\n sls_project_name: \"\",\n },\n name: \"ack-node-problem-detector\",\n },\n];\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\n// If there is not specifying vpc_id, the module will launch a new vpc\nconst vpc: alicloud.vpc.Network[] = [];\nfor (const range = {value: 0}; range.value \u003c (vpcId == \"\" ? 1 : 0); range.value++) {\n vpc.push(new alicloud.vpc.Network(`vpc-${range.value}`, {cidrBlock: vpcCidr}));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst vswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (vswitchIds.length \u003e 0 ? 0 : vswitchCidrs.length); range.value++) {\n vswitches.push(new alicloud.vpc.Switch(`vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: pulumi.all([enhanced, enhanced.then(enhanced =\u003e enhanced.zones).length]).apply(([enhanced, length]) =\u003e enhanced.zones[range.value \u003c length ? range.value : 0].zoneId),\n }));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst terwayVswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (terwayVswitchIds.length \u003e 0 ? 0 : terwayVswitchCidrs.length); range.value++) {\n terwayVswitches.push(new alicloud.vpc.Switch(`terway_vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: terwayVswitchCidrs[range.value],\n zoneId: pulumi.all([enhanced, enhanced.then(enhanced =\u003e enhanced.zones).length]).apply(([enhanced, length]) =\u003e enhanced.zones[range.value \u003c length ? range.value : 0].zoneId),\n }));\n}\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst cloudEssd = (new Array(3)).map((_, i) =\u003e i).map(__index =\u003e (alicloud.ecs.getInstanceTypesOutput({\n availabilityZone: _arg0_.zones[__index \u003c _arg1_ ? __index : 0].zoneId,\n cpuCoreCount: 4,\n memorySize: 8,\n systemDiskCategory: \"cloud_essd\",\n})));\nconst defaultKubernetes = new alicloud.cs.Kubernetes(\"default\", {\n addons: clusterAddons.map((v, k) =\u003e ({key: k, value: v})).map(entry =\u003e ({\n name: std.lookup({\n map: entry.value,\n key: \"name\",\n \"default\": clusterAddons,\n }).then(invoke =\u003e invoke.result),\n config: JSON.stringify(std.lookup({\n map: entry.value,\n key: \"config\",\n \"default\": clusterAddons,\n }).then(invoke =\u003e invoke.result)),\n })),\n masterVswitchIds: vswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: vswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : vswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: vswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n podVswitchIds: terwayVswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: terwayVswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : terwayVswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: terwayVswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n masterInstanceTypes: [\n cloudEssd[0].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n cloudEssd[1].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n cloudEssd[2].apply(cloudEssd =\u003e cloudEssd.instanceTypes?.[0]?.id),\n ],\n masterDiskCategory: \"cloud_essd\",\n password: \"Yourpassword1234\",\n serviceCidr: \"172.18.0.0/16\",\n installCloudMonitor: true,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n deletionProtection: false,\n timezone: \"Asia/Shanghai\",\n osType: \"Linux\",\n platform: \"AliyunLinux3\",\n clusterDomain: \"cluster.local\",\n proxyMode: \"ipvs\",\n customSan: \"www.terraform.io\",\n newNatGateway: true,\n skipSetCertificateAuthority: true,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-kubernetes-example\"\n# Existing vpc id used to create several vswitches and other resources.\nvpc_id = config.get(\"vpcId\")\nif vpc_id is None:\n vpc_id = \"\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of existing vswitch id.\nvswitch_ids = config.get_object(\"vswitchIds\")\nif vswitch_ids is None:\n vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n \"10.3.0.0/16\",\n ]\n# List of existing vswitch ids for terway.\nterway_vswitch_ids = config.get_object(\"terwayVswitchIds\")\nif terway_vswitch_ids is None:\n terway_vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nterway_vswitch_cidrs = config.get_object(\"terwayVswitchCidrs\")\nif terway_vswitch_cidrs is None:\n terway_vswitch_cidrs = [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n \"10.6.0.0/16\",\n ]\ncluster_addons = config.get_object(\"clusterAddons\")\nif cluster_addons is None:\n cluster_addons = [\n {\n \"config\": {},\n \"name\": \"terway-eniip\",\n },\n {\n \"config\": {},\n \"name\": \"csi-plugin\",\n },\n {\n \"config\": {},\n \"name\": \"csi-provisioner\",\n },\n {\n \"config\": {\n \"IngressDashboardEnabled\": \"true\",\n },\n \"name\": \"logtail-ds\",\n },\n {\n \"config\": {\n \"IngressSlbNetworkType\": \"internet\",\n },\n \"name\": \"nginx-ingress-controller\",\n },\n {\n \"config\": {},\n \"name\": \"arms-prometheus\",\n },\n {\n \"config\": {\n \"sls_project_name\": \"\",\n },\n \"name\": \"ack-node-problem-detector\",\n },\n ]\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\n# If there is not specifying vpc_id, the module will launch a new vpc\nvpc = []\nfor range in [{\"value\": i} for i in range(0, 1 if vpc_id == else 0)]:\n vpc.append(alicloud.vpc.Network(f\"vpc-{range['value']}\", cidr_block=vpc_cidr))\n# According to the vswitch cidr blocks to launch several vswitches\nvswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(vswitch_ids) \u003e 0 else len(vswitch_cidrs))]:\n vswitches.append(alicloud.vpc.Switch(f\"vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=len(enhanced.zones).apply(lambda length: enhanced.zones[range[\"value\"] if range[\"value\"] \u003c length else 0]).apply(lambda obj: obj.zone_id)))\n# According to the vswitch cidr blocks to launch several vswitches\nterway_vswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(terway_vswitch_ids) \u003e 0 else len(terway_vswitch_cidrs))]:\n terway_vswitches.append(alicloud.vpc.Switch(f\"terway_vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=terway_vswitch_cidrs[range[\"value\"]],\n zone_id=len(enhanced.zones).apply(lambda length: enhanced.zones[range[\"value\"] if range[\"value\"] \u003c length else 0]).apply(lambda obj: obj.zone_id)))\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ncloud_essd = [alicloud.ecs.get_instance_types_output(availability_zone=_arg0_.zone_id,\n cpu_core_count=4,\n memory_size=8,\n system_disk_category=\"cloud_essd\") for __index in range(3)]\ndefault_kubernetes = alicloud.cs.Kubernetes(\"default\",\n addons=[{\n \"name\": std.lookup(map=entry[\"value\"],\n key=\"name\",\n default=cluster_addons).result,\n \"config\": json.dumps(std.lookup(map=entry[\"value\"],\n key=\"config\",\n default=cluster_addons).result),\n } for entry in [{\"key\": k, \"value\": v} for k, v in cluster_addons]],\n master_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=vswitch_ids).result).result if len(vswitch_ids) \u003e 0 else [] if len(vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n pod_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) \u003e 0 else [] if len(terway_vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n master_instance_types=[\n cloud_essd[0].instance_types[0].id,\n cloud_essd[1].instance_types[0].id,\n cloud_essd[2].instance_types[0].id,\n ],\n master_disk_category=\"cloud_essd\",\n password=\"Yourpassword1234\",\n service_cidr=\"172.18.0.0/16\",\n install_cloud_monitor=True,\n resource_group_id=default.groups[0].id,\n deletion_protection=False,\n timezone=\"Asia/Shanghai\",\n os_type=\"Linux\",\n platform=\"AliyunLinux3\",\n cluster_domain=\"cluster.local\",\n proxy_mode=\"ipvs\",\n custom_san=\"www.terraform.io\",\n new_nat_gateway=True,\n skip_set_certificate_authority=True)\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nKubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/kubernetes:Kubernetes main cluster-id\n```\n\n",
"properties": {
"addons": {
"type": "array",
@@ -132035,7 +134506,7 @@
}
},
"alicloud:cs/kubernetesAddon:KubernetesAddon": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: false,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n addons: [{\n name: \"logtail-ds\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n disabled: false,\n }],\n});\n// data source provides the information of available addons\nconst defaultGetKubernetesAddons = alicloud.cs.getKubernetesAddonsOutput({\n clusterId: defaultManagedKubernetes.id,\n nameRegex: \"logtail-ds\",\n});\n// Manage addon resource\nconst logtail_ds = new alicloud.cs.KubernetesAddon(\"logtail-ds\", {\n clusterId: defaultManagedKubernetes.id,\n name: \"logtail-ds\",\n version: \"v1.6.0.0-aliyun\",\n config: JSON.stringify({}),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=False,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True,\n addons=[{\n \"name\": \"logtail-ds\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n \"disabled\": False,\n }])\n# data source provides the information of available addons\ndefault_get_kubernetes_addons = alicloud.cs.get_kubernetes_addons_output(cluster_id=default_managed_kubernetes.id,\n name_regex=\"logtail-ds\")\n# Manage addon resource\nlogtail_ds = alicloud.cs.KubernetesAddon(\"logtail-ds\",\n cluster_id=default_managed_kubernetes.id,\n name=\"logtail-ds\",\n version=\"v1.6.0.0-aliyun\",\n config=json.dumps({}))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = false,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"logtail-ds\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n Disabled = false,\n },\n },\n });\n\n // data source provides the information of available addons\n var defaultGetKubernetesAddons = AliCloud.CS.GetKubernetesAddons.Invoke(new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n NameRegex = \"logtail-ds\",\n });\n\n // Manage addon resource\n var logtail_ds = new AliCloud.CS.KubernetesAddon(\"logtail-ds\", new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n Name = \"logtail-ds\",\n Version = \"v1.6.0.0-aliyun\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"IngressDashboardEnabled\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(false),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tAddons: cs.ManagedKubernetesAddonArray{\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"logtail-ds\"),\n\t\t\t\t\tConfig: pulumi.String(json0),\n\t\t\t\t\tDisabled: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// data source provides the information of available addons\n\t\t_ = cs.GetKubernetesAddonsOutput(ctx, cs.GetKubernetesAddonsOutputArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tNameRegex: pulumi.String(\"logtail-ds\"),\n\t\t}, nil)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t// Manage addon resource\n\t\t_, err = cs.NewKubernetesAddon(ctx, \"logtail-ds\", \u0026cs.KubernetesAddonArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tName: pulumi.String(\"logtail-ds\"),\n\t\t\tVersion: pulumi.String(\"v1.6.0.0-aliyun\"),\n\t\t\tConfig: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.CsFunctions;\nimport com.pulumi.alicloud.cs.inputs.GetKubernetesAddonsArgs;\nimport com.pulumi.alicloud.cs.KubernetesAddon;\nimport com.pulumi.alicloud.cs.KubernetesAddonArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(false)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .addons(ManagedKubernetesAddonArgs.builder()\n .name(\"logtail-ds\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .disabled(false)\n .build())\n .build());\n\n // data source provides the information of available addons\n final var defaultGetKubernetesAddons = CsFunctions.getKubernetesAddons(GetKubernetesAddonsArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .nameRegex(\"logtail-ds\")\n .build());\n\n // Manage addon resource\n var logtail_ds = new KubernetesAddon(\"logtail-ds\", KubernetesAddonArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .name(\"logtail-ds\")\n .version(\"v1.6.0.0-aliyun\")\n .config(serializeJson(\n jsonObject(\n\n )))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: false\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true # By defining the addons attribute in cluster resource, it indicates that the addon will be installed when creating a cluster\n addons:\n - name: logtail-ds\n config:\n fn::toJSON:\n IngressDashboardEnabled: 'true'\n disabled: false\n # Manage addon resource\n logtail-ds:\n type: alicloud:cs:KubernetesAddon\n properties:\n clusterId: ${defaultManagedKubernetes.id}\n name: logtail-ds\n version: v1.6.0.0-aliyun\n config:\n fn::toJSON: {}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n # data source provides the information of available addons\n defaultGetKubernetesAddons:\n fn::invoke:\n function: alicloud:cs:getKubernetesAddons\n arguments:\n clusterId: ${defaultManagedKubernetes.id}\n nameRegex: logtail-ds\n```\n\u003c!--End PulumiCodeChooser --\u003e\n**Installing of addon**\nWhen 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:\n* 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.\n* If the addon already exists in the cluster and its version is different from the specified version, the addon will be upgraded.\n* If the addon does not exist in the cluster, it will be installed.\n\n## Import\n\nCluster addon can be imported by cluster id and addon name. Then write the addon.tf file according to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/kubernetesAddon:KubernetesAddon my_addon \u003ccluster_id\u003e:\u003caddon_name\u003e\n```\n\n",
+ "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: false,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n addons: [{\n name: \"logtail-ds\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n disabled: false,\n }],\n});\n// data source provides the information of available addons\nconst defaultGetKubernetesAddons = alicloud.cs.getKubernetesAddonsOutput({\n clusterId: defaultManagedKubernetes.id,\n nameRegex: \"logtail-ds\",\n});\n// Manage addon resource\nconst logtail_ds = new alicloud.cs.KubernetesAddon(\"logtail-ds\", {\n clusterId: defaultManagedKubernetes.id,\n name: \"logtail-ds\",\n version: \"v1.6.0.0-aliyun\",\n config: JSON.stringify({}),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=False,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True,\n addons=[{\n \"name\": \"logtail-ds\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n \"disabled\": False,\n }])\n# data source provides the information of available addons\ndefault_get_kubernetes_addons = alicloud.cs.get_kubernetes_addons_output(cluster_id=default_managed_kubernetes.id,\n name_regex=\"logtail-ds\")\n# Manage addon resource\nlogtail_ds = alicloud.cs.KubernetesAddon(\"logtail-ds\",\n cluster_id=default_managed_kubernetes.id,\n name=\"logtail-ds\",\n version=\"v1.6.0.0-aliyun\",\n config=json.dumps({}))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = false,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"logtail-ds\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n Disabled = false,\n },\n },\n });\n\n // data source provides the information of available addons\n var defaultGetKubernetesAddons = AliCloud.CS.GetKubernetesAddons.Invoke(new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n NameRegex = \"logtail-ds\",\n });\n\n // Manage addon resource\n var logtail_ds = new AliCloud.CS.KubernetesAddon(\"logtail-ds\", new()\n {\n ClusterId = defaultManagedKubernetes.Id,\n Name = \"logtail-ds\",\n Version = \"v1.6.0.0-aliyun\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"IngressDashboardEnabled\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(false),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tAddons: cs.ManagedKubernetesAddonArray{\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"logtail-ds\"),\n\t\t\t\t\tConfig: pulumi.String(json0),\n\t\t\t\t\tDisabled: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// data source provides the information of available addons\n\t\t_ = cs.GetKubernetesAddonsOutput(ctx, cs.GetKubernetesAddonsOutputArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tNameRegex: pulumi.String(\"logtail-ds\"),\n\t\t}, nil)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t// Manage addon resource\n\t\t_, err = cs.NewKubernetesAddon(ctx, \"logtail-ds\", \u0026cs.KubernetesAddonArgs{\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tName: pulumi.String(\"logtail-ds\"),\n\t\t\tVersion: pulumi.String(\"v1.6.0.0-aliyun\"),\n\t\t\tConfig: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.CsFunctions;\nimport com.pulumi.alicloud.cs.inputs.GetKubernetesAddonsArgs;\nimport com.pulumi.alicloud.cs.KubernetesAddon;\nimport com.pulumi.alicloud.cs.KubernetesAddonArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(false)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .addons(ManagedKubernetesAddonArgs.builder()\n .name(\"logtail-ds\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .disabled(false)\n .build())\n .build());\n\n // data source provides the information of available addons\n final var defaultGetKubernetesAddons = CsFunctions.getKubernetesAddons(GetKubernetesAddonsArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .nameRegex(\"logtail-ds\")\n .build());\n\n // Manage addon resource\n var logtail_ds = new KubernetesAddon(\"logtail-ds\", KubernetesAddonArgs.builder()\n .clusterId(defaultManagedKubernetes.id())\n .name(\"logtail-ds\")\n .version(\"v1.6.0.0-aliyun\")\n .config(serializeJson(\n jsonObject(\n\n )))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: false\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true # By defining the addons attribute in cluster resource, it indicates that the addon will be installed when creating a cluster\n addons:\n - name: logtail-ds\n config:\n fn::toJSON:\n IngressDashboardEnabled: 'true'\n disabled: false\n # Manage addon resource\n logtail-ds:\n type: alicloud:cs:KubernetesAddon\n properties:\n clusterId: ${defaultManagedKubernetes.id}\n name: logtail-ds\n version: v1.6.0.0-aliyun\n config:\n fn::toJSON: {}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n # data source provides the information of available addons\n defaultGetKubernetesAddons:\n fn::invoke:\n function: alicloud:cs:getKubernetesAddons\n arguments:\n clusterId: ${defaultManagedKubernetes.id}\n nameRegex: logtail-ds\n```\n\u003c!--End PulumiCodeChooser --\u003e\n**Installing of addon**\nWhen 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:\n* 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.\n* If the addon already exists in the cluster and its version is different from the specified version, the addon will be upgraded.\n* If the addon does not exist in the cluster, it will be installed.\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCluster addon can be imported by cluster id and addon name. Then write the addon.tf file according to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/kubernetesAddon:KubernetesAddon my_addon \u003ccluster_id\u003e:\u003caddon_name\u003e\n```\n\n",
"properties": {
"canUpgrade": {
"type": "boolean",
@@ -132253,7 +134724,7 @@
}
},
"alicloud:cs/kubernetesPermission:KubernetesPermission": {
- "description": "This resource will help you implement RBAC authorization for the kubernetes cluster, see [What is kubernetes permissions](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/api-grantpermissions).\n\n\u003e **NOTE:** Please make sure that the target RAM user has been granted a RAM policy with at least read-only permission of the target cluster in the RAM console. Otherwise, the `ErrorRamPolicyConfig` error will be returned. \nFor more information about how to authorize a RAM user by attaching RAM policies, see [Create a custom RAM policy](https://www.alibabacloud.com/help/doc-detail/86485.htm).\n\n\u003e **NOTE:** If you call this operation as a RAM user, make sure that this RAM user has the permissions to grant other RAM users the permissions to manage ACK clusters. Otherwise, the `StatusForbidden` or `ForbiddenGrantPermissions` errors will be returned. For more information, see [Use a RAM user to grant RBAC permissions to other RAM users](https://www.alibabacloud.com/help/faq-detail/119035.htm).\n\n\u003e **NOTE:** This operation overwrites the permissions that have been granted to the specified RAM user. When you call this operation, make sure that the required permissions are included.\n\n\u003e **NOTE:** Available since v1.122.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n];\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\nconst podCidr = config.get(\"podCidr\") || \"172.16.0.0/16\";\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst _default = alicloud.cs.getKubernetesVersion({\n clusterType: \"ManagedKubernetes\",\n});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {cidrBlock: vpcCidr});\n// According to the vswitch cidr blocks to launch several vswitches\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c vswitchCidrs.length; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: vpc.id,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\n// Create a new RAM cluster.\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: _default.then(_default =\u003e _default.metadatas?.[0]?.version),\n workerVswitchIds: std.joinOutput({\n separator: \",\",\n input: defaultSwitch.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n newNatGateway: false,\n podCidr: podCidr,\n serviceCidr: serviceCidr,\n slbInternetEnabled: false,\n});\n// Create a new RAM user.\nconst user = new alicloud.ram.User(\"user\", {name: `${name}-${defaultInteger.result}`});\n// Create a cluster permission for user.\nconst defaultKubernetesPermission = new alicloud.cs.KubernetesPermission(\"default\", {\n uid: user.id,\n permissions: [{\n cluster: defaultManagedKubernetes.id,\n roleType: \"cluster\",\n roleName: \"admin\",\n namespace: \"\",\n isCustom: false,\n isRamRole: false,\n }],\n});\nconst attach = new alicloud.cs.KubernetesPermission(\"attach\", {\n uid: user.id,\n permissions: [{\n cluster: defaultManagedKubernetes.id,\n roleType: \"namespace\",\n roleName: \"cs:dev\",\n namespace: \"default\",\n isCustom: true,\n isRamRole: false,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n ]\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\npod_cidr = config.get(\"podCidr\")\nif pod_cidr is None:\n pod_cidr = \"172.16.0.0/16\"\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ndefault = alicloud.cs.get_kubernetes_version(cluster_type=\"ManagedKubernetes\")\nvpc = alicloud.vpc.Network(\"vpc\", cidr_block=vpc_cidr)\n# According to the vswitch cidr blocks to launch several vswitches\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, len(vswitch_cidrs))]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=vpc.id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\n# Create a new RAM cluster.\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=default.metadatas[0].version,\n worker_vswitch_ids=std.join_output(separator=\",\",\n input=[__item.id for __item in default_switch]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n new_nat_gateway=False,\n pod_cidr=pod_cidr,\n service_cidr=service_cidr,\n slb_internet_enabled=False)\n# Create a new RAM user.\nuser = alicloud.ram.User(\"user\", name=f\"{name}-{default_integer['result']}\")\n# Create a cluster permission for user.\ndefault_kubernetes_permission = alicloud.cs.KubernetesPermission(\"default\",\n uid=user.id,\n permissions=[{\n \"cluster\": default_managed_kubernetes.id,\n \"role_type\": \"cluster\",\n \"role_name\": \"admin\",\n \"namespace\": \"\",\n \"is_custom\": False,\n \"is_ram_role\": False,\n }])\nattach = alicloud.cs.KubernetesPermission(\"attach\",\n uid=user.id,\n permissions=[{\n \"cluster\": default_managed_kubernetes.id,\n \"role_type\": \"namespace\",\n \"role_name\": \"cs:dev\",\n \"namespace\": \"default\",\n \"is_custom\": True,\n \"is_ram_role\": False,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n // The cidr block used to launch a new vpc when 'vpc_id' is not specified.\n var vpcCidr = config.Get(\"vpcCidr\") ?? \"10.0.0.0/8\";\n // List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\n var vswitchCidrs = config.GetObject\u003cstring[]\u003e(\"vswitchCidrs\") ?? new[]\n {\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n };\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\n var podCidr = config.Get(\"podCidr\") ?? \"172.16.0.0/16\";\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var @default = AliCloud.CS.GetKubernetesVersion.Invoke(new()\n {\n ClusterType = \"ManagedKubernetes\",\n });\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = vpcCidr,\n });\n\n // According to the vswitch cidr blocks to launch several vswitches\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c vswitchCidrs.Length; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = vswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n // Create a new RAM cluster.\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = @default.Apply(@default =\u003e @default.Apply(getKubernetesVersionResult =\u003e getKubernetesVersionResult.Metadatas[0]?.Version)),\n WorkerVswitchIds = Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = defaultSwitch.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n NewNatGateway = false,\n PodCidr = podCidr,\n ServiceCidr = serviceCidr,\n SlbInternetEnabled = false,\n });\n\n // Create a new RAM user.\n var user = new AliCloud.Ram.User(\"user\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n });\n\n // Create a cluster permission for user.\n var defaultKubernetesPermission = new AliCloud.CS.KubernetesPermission(\"default\", new()\n {\n Uid = user.Id,\n Permissions = new[]\n {\n new AliCloud.CS.Inputs.KubernetesPermissionPermissionArgs\n {\n Cluster = defaultManagedKubernetes.Id,\n RoleType = \"cluster\",\n RoleName = \"admin\",\n Namespace = \"\",\n IsCustom = false,\n IsRamRole = false,\n },\n },\n });\n\n var attach = new AliCloud.CS.KubernetesPermission(\"attach\", new()\n {\n Uid = user.Id,\n Permissions = new[]\n {\n new AliCloud.CS.Inputs.KubernetesPermissionPermissionArgs\n {\n Cluster = defaultManagedKubernetes.Id,\n RoleType = \"namespace\",\n RoleName = \"cs:dev\",\n Namespace = \"default\",\n IsCustom = true,\n IsRamRole = false,\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.cs.CsFunctions;\nimport com.pulumi.alicloud.cs.inputs.GetKubernetesVersionArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.std.inputs.SplitArgs;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.cs.KubernetesPermission;\nimport com.pulumi.alicloud.cs.KubernetesPermissionArgs;\nimport com.pulumi.alicloud.cs.inputs.KubernetesPermissionPermissionArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var vpcCidr = config.get(\"vpcCidr\").orElse(\"10.0.0.0/8\");\n final var vswitchCidrs = config.get(\"vswitchCidrs\").orElse(List.of( \n \"10.1.0.0/16\",\n \"10.2.0.0/16\"));\n final var podCidr = config.get(\"podCidr\").orElse(\"172.16.0.0/16\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n final var default = CsFunctions.getKubernetesVersion(GetKubernetesVersionArgs.builder()\n .clusterType(\"ManagedKubernetes\")\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(vpcCidr)\n .build());\n\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c vswitchCidrs.length(); i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(vswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n // Create a new RAM cluster.\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(default_.metadatas()[0].version())\n .workerVswitchIds(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(defaultSwitch.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .newNatGateway(false)\n .podCidr(podCidr)\n .serviceCidr(serviceCidr)\n .slbInternetEnabled(false)\n .build());\n\n // Create a new RAM user.\n var user = new User(\"user\", UserArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n // Create a cluster permission for user.\n var defaultKubernetesPermission = new KubernetesPermission(\"defaultKubernetesPermission\", KubernetesPermissionArgs.builder()\n .uid(user.id())\n .permissions(KubernetesPermissionPermissionArgs.builder()\n .cluster(defaultManagedKubernetes.id())\n .roleType(\"cluster\")\n .roleName(\"admin\")\n .namespace(\"\")\n .isCustom(false)\n .isRamRole(false)\n .build())\n .build());\n\n var attach = new KubernetesPermission(\"attach\", KubernetesPermissionArgs.builder()\n .uid(user.id())\n .permissions(KubernetesPermissionPermissionArgs.builder()\n .cluster(defaultManagedKubernetes.id())\n .roleType(\"namespace\")\n .roleName(\"cs:dev\")\n .namespace(\"default\")\n .isCustom(true)\n .isRamRole(false)\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "This resource will help you implement RBAC authorization for the kubernetes cluster, see [What is kubernetes permissions](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/api-grantpermissions).\n\n\u003e **NOTE:** Please make sure that the target RAM user has been granted a RAM policy with at least read-only permission of the target cluster in the RAM console. Otherwise, the `ErrorRamPolicyConfig` error will be returned. \nFor more information about how to authorize a RAM user by attaching RAM policies, see [Create a custom RAM policy](https://www.alibabacloud.com/help/doc-detail/86485.htm).\n\n\u003e **NOTE:** If you call this operation as a RAM user, make sure that this RAM user has the permissions to grant other RAM users the permissions to manage ACK clusters. Otherwise, the `StatusForbidden` or `ForbiddenGrantPermissions` errors will be returned. For more information, see [Use a RAM user to grant RBAC permissions to other RAM users](https://www.alibabacloud.com/help/faq-detail/119035.htm).\n\n\u003e **NOTE:** This operation overwrites the permissions that have been granted to the specified RAM user. When you call this operation, make sure that the required permissions are included.\n\n\u003e **NOTE:** Available since v1.122.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n];\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\nconst podCidr = config.get(\"podCidr\") || \"172.16.0.0/16\";\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst _default = alicloud.cs.getKubernetesVersion({\n clusterType: \"ManagedKubernetes\",\n});\nconst vpc = new alicloud.vpc.Network(\"vpc\", {cidrBlock: vpcCidr});\n// According to the vswitch cidr blocks to launch several vswitches\nconst defaultSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c vswitchCidrs.length; range.value++) {\n defaultSwitch.push(new alicloud.vpc.Switch(`default-${range.value}`, {\n vpcId: vpc.id,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\n// Create a new RAM cluster.\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n clusterSpec: \"ack.pro.small\",\n version: _default.then(_default =\u003e _default.metadatas?.[0]?.version),\n workerVswitchIds: std.joinOutput({\n separator: \",\",\n input: defaultSwitch.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n newNatGateway: false,\n podCidr: podCidr,\n serviceCidr: serviceCidr,\n slbInternetEnabled: false,\n});\n// Create a new RAM user.\nconst user = new alicloud.ram.User(\"user\", {name: `${name}-${defaultInteger.result}`});\n// Create a cluster permission for user.\nconst defaultKubernetesPermission = new alicloud.cs.KubernetesPermission(\"default\", {\n uid: user.id,\n permissions: [{\n cluster: defaultManagedKubernetes.id,\n roleType: \"cluster\",\n roleName: \"admin\",\n namespace: \"\",\n isCustom: false,\n isRamRole: false,\n }],\n});\nconst attach = new alicloud.cs.KubernetesPermission(\"attach\", {\n uid: user.id,\n permissions: [{\n cluster: defaultManagedKubernetes.id,\n roleType: \"namespace\",\n roleName: \"cs:dev\",\n namespace: \"default\",\n isCustom: true,\n isRamRole: false,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n ]\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\npod_cidr = config.get(\"podCidr\")\nif pod_cidr is None:\n pod_cidr = \"172.16.0.0/16\"\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ndefault = alicloud.cs.get_kubernetes_version(cluster_type=\"ManagedKubernetes\")\nvpc = alicloud.vpc.Network(\"vpc\", cidr_block=vpc_cidr)\n# According to the vswitch cidr blocks to launch several vswitches\ndefault_switch = []\nfor range in [{\"value\": i} for i in range(0, len(vswitch_cidrs))]:\n default_switch.append(alicloud.vpc.Switch(f\"default-{range['value']}\",\n vpc_id=vpc.id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\n# Create a new RAM cluster.\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n cluster_spec=\"ack.pro.small\",\n version=default.metadatas[0].version,\n worker_vswitch_ids=std.join_output(separator=\",\",\n input=[__item.id for __item in default_switch]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n new_nat_gateway=False,\n pod_cidr=pod_cidr,\n service_cidr=service_cidr,\n slb_internet_enabled=False)\n# Create a new RAM user.\nuser = alicloud.ram.User(\"user\", name=f\"{name}-{default_integer['result']}\")\n# Create a cluster permission for user.\ndefault_kubernetes_permission = alicloud.cs.KubernetesPermission(\"default\",\n uid=user.id,\n permissions=[{\n \"cluster\": default_managed_kubernetes.id,\n \"role_type\": \"cluster\",\n \"role_name\": \"admin\",\n \"namespace\": \"\",\n \"is_custom\": False,\n \"is_ram_role\": False,\n }])\nattach = alicloud.cs.KubernetesPermission(\"attach\",\n uid=user.id,\n permissions=[{\n \"cluster\": default_managed_kubernetes.id,\n \"role_type\": \"namespace\",\n \"role_name\": \"cs:dev\",\n \"namespace\": \"default\",\n \"is_custom\": True,\n \"is_ram_role\": False,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n // The cidr block used to launch a new vpc when 'vpc_id' is not specified.\n var vpcCidr = config.Get(\"vpcCidr\") ?? \"10.0.0.0/8\";\n // List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\n var vswitchCidrs = config.GetObject\u003cstring[]\u003e(\"vswitchCidrs\") ?? new[]\n {\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n };\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.\n var podCidr = config.Get(\"podCidr\") ?? \"172.16.0.0/16\";\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var @default = AliCloud.CS.GetKubernetesVersion.Invoke(new()\n {\n ClusterType = \"ManagedKubernetes\",\n });\n\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n CidrBlock = vpcCidr,\n });\n\n // According to the vswitch cidr blocks to launch several vswitches\n var defaultSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c vswitchCidrs.Length; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultSwitch.Add(new AliCloud.Vpc.Switch($\"default-{range.Value}\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = vswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n // Create a new RAM cluster.\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Version = @default.Apply(@default =\u003e @default.Apply(getKubernetesVersionResult =\u003e getKubernetesVersionResult.Metadatas[0]?.Version)),\n WorkerVswitchIds = Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = defaultSwitch.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n NewNatGateway = false,\n PodCidr = podCidr,\n ServiceCidr = serviceCidr,\n SlbInternetEnabled = false,\n });\n\n // Create a new RAM user.\n var user = new AliCloud.Ram.User(\"user\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n });\n\n // Create a cluster permission for user.\n var defaultKubernetesPermission = new AliCloud.CS.KubernetesPermission(\"default\", new()\n {\n Uid = user.Id,\n Permissions = new[]\n {\n new AliCloud.CS.Inputs.KubernetesPermissionPermissionArgs\n {\n Cluster = defaultManagedKubernetes.Id,\n RoleType = \"cluster\",\n RoleName = \"admin\",\n Namespace = \"\",\n IsCustom = false,\n IsRamRole = false,\n },\n },\n });\n\n var attach = new AliCloud.CS.KubernetesPermission(\"attach\", new()\n {\n Uid = user.Id,\n Permissions = new[]\n {\n new AliCloud.CS.Inputs.KubernetesPermissionPermissionArgs\n {\n Cluster = defaultManagedKubernetes.Id,\n RoleType = \"namespace\",\n RoleName = \"cs:dev\",\n Namespace = \"default\",\n IsCustom = true,\n IsRamRole = false,\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.cs.CsFunctions;\nimport com.pulumi.alicloud.cs.inputs.GetKubernetesVersionArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.std.inputs.SplitArgs;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.cs.KubernetesPermission;\nimport com.pulumi.alicloud.cs.KubernetesPermissionArgs;\nimport com.pulumi.alicloud.cs.inputs.KubernetesPermissionPermissionArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var vpcCidr = config.get(\"vpcCidr\").orElse(\"10.0.0.0/8\");\n final var vswitchCidrs = config.get(\"vswitchCidrs\").orElse(List.of( \n \"10.1.0.0/16\",\n \"10.2.0.0/16\"));\n final var podCidr = config.get(\"podCidr\").orElse(\"172.16.0.0/16\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n final var default = CsFunctions.getKubernetesVersion(GetKubernetesVersionArgs.builder()\n .clusterType(\"ManagedKubernetes\")\n .build());\n\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .cidrBlock(vpcCidr)\n .build());\n\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c vswitchCidrs.length(); i++) {\n new Switch(\"defaultSwitch-\" + i, SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(vswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n // Create a new RAM cluster.\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterSpec(\"ack.pro.small\")\n .version(default_.metadatas()[0].version())\n .workerVswitchIds(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(defaultSwitch.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .newNatGateway(false)\n .podCidr(podCidr)\n .serviceCidr(serviceCidr)\n .slbInternetEnabled(false)\n .build());\n\n // Create a new RAM user.\n var user = new User(\"user\", UserArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n // Create a cluster permission for user.\n var defaultKubernetesPermission = new KubernetesPermission(\"defaultKubernetesPermission\", KubernetesPermissionArgs.builder()\n .uid(user.id())\n .permissions(KubernetesPermissionPermissionArgs.builder()\n .cluster(defaultManagedKubernetes.id())\n .roleType(\"cluster\")\n .roleName(\"admin\")\n .namespace(\"\")\n .isCustom(false)\n .isRamRole(false)\n .build())\n .build());\n\n var attach = new KubernetesPermission(\"attach\", KubernetesPermissionArgs.builder()\n .uid(user.id())\n .permissions(KubernetesPermissionPermissionArgs.builder()\n .cluster(defaultManagedKubernetes.id())\n .roleType(\"namespace\")\n .roleName(\"cs:dev\")\n .namespace(\"default\")\n .isCustom(true)\n .isRamRole(false)\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"permissions": {
"type": "array",
@@ -132306,8 +134777,120 @@
"type": "object"
}
},
+ "alicloud:cs/kubernetesPolicyInstance:KubernetesPolicyInstance": {
+ "description": "Provides a Container Service for Kubernetes (ACK) Policy Instance resource.\n\nFor information about Container Service for Kubernetes (ACK) Policy Instance and how to use it, see [What is Policy Instance](https://next.api.alibabacloud.com/document/CS/2015-12-15/DeployPolicyInstance).\n\n\u003e **NOTE:** Available since v1.266.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n];\nconst clusterName = config.get(\"clusterName\") || \"example-create-cluster\";\nconst podCidr = config.get(\"podCidr\") || \"172.16.0.0/16\";\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\nconst policyName = config.get(\"policyName\") || \"ACKPSPHostNetworkingPorts\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst createVPC = new alicloud.vpc.Network(\"CreateVPC\", {cidrBlock: vpcCidr});\n// According to the vswitch cidr blocks to launch several vswitches\nconst createVSwitch: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c vswitchCidrs.length; range.value++) {\n createVSwitch.push(new alicloud.vpc.Switch(`CreateVSwitch-${range.value}`, {\n vpcId: createVPC.id,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\nconst createCluster = new alicloud.cs.ManagedKubernetes(\"CreateCluster\", {\n name: `${clusterName}-${_default.result}`,\n clusterSpec: \"ack.pro.small\",\n profile: \"Default\",\n vswitchIds: std.joinOutput({\n separator: \",\",\n input: createVSwitch.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n podCidr: podCidr,\n serviceCidr: serviceCidr,\n isEnterpriseSecurityGroup: true,\n ipStack: \"ipv4\",\n proxyMode: \"ipvs\",\n deletionProtection: false,\n addons: [\n {\n name: \"gatekeeper\",\n },\n {\n name: \"loongcollector\",\n },\n {\n name: \"policy-template-controller\",\n },\n ],\n operationPolicy: {\n clusterAutoUpgrade: {\n enabled: false,\n },\n },\n maintenanceWindow: {\n enable: false,\n },\n});\nconst defaultKubernetesPolicyInstance = new alicloud.cs.KubernetesPolicyInstance(\"default\", {\n clusterId: createCluster.id,\n policyName: policyName,\n action: \"deny\",\n namespaces: [\"test\"],\n parameters: {\n hostNetwork: \"true\",\n min: \"20\",\n max: \"200\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n ]\ncluster_name = config.get(\"clusterName\")\nif cluster_name is None:\n cluster_name = \"example-create-cluster\"\npod_cidr = config.get(\"podCidr\")\nif pod_cidr is None:\n pod_cidr = \"172.16.0.0/16\"\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\npolicy_name = config.get(\"policyName\")\nif policy_name is None:\n policy_name = \"ACKPSPHostNetworkingPorts\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ncreate_vpc = alicloud.vpc.Network(\"CreateVPC\", cidr_block=vpc_cidr)\n# According to the vswitch cidr blocks to launch several vswitches\ncreate_v_switch = []\nfor range in [{\"value\": i} for i in range(0, len(vswitch_cidrs))]:\n create_v_switch.append(alicloud.vpc.Switch(f\"CreateVSwitch-{range['value']}\",\n vpc_id=create_vpc.id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\ncreate_cluster = alicloud.cs.ManagedKubernetes(\"CreateCluster\",\n name=f\"{cluster_name}-{default['result']}\",\n cluster_spec=\"ack.pro.small\",\n profile=\"Default\",\n vswitch_ids=std.join_output(separator=\",\",\n input=[__item.id for __item in create_v_switch]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n pod_cidr=pod_cidr,\n service_cidr=service_cidr,\n is_enterprise_security_group=True,\n ip_stack=\"ipv4\",\n proxy_mode=\"ipvs\",\n deletion_protection=False,\n addons=[\n {\n \"name\": \"gatekeeper\",\n },\n {\n \"name\": \"loongcollector\",\n },\n {\n \"name\": \"policy-template-controller\",\n },\n ],\n operation_policy={\n \"cluster_auto_upgrade\": {\n \"enabled\": False,\n },\n },\n maintenance_window={\n \"enable\": False,\n })\ndefault_kubernetes_policy_instance = alicloud.cs.KubernetesPolicyInstance(\"default\",\n cluster_id=create_cluster.id,\n policy_name=policy_name,\n action=\"deny\",\n namespaces=[\"test\"],\n parameters={\n \"hostNetwork\": \"true\",\n \"min\": \"20\",\n \"max\": \"200\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var vpcCidr = config.Get(\"vpcCidr\") ?? \"10.0.0.0/8\";\n var vswitchCidrs = config.GetObject\u003cstring[]\u003e(\"vswitchCidrs\") ?? new[]\n {\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n };\n var clusterName = config.Get(\"clusterName\") ?? \"example-create-cluster\";\n var podCidr = config.Get(\"podCidr\") ?? \"172.16.0.0/16\";\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n var policyName = config.Get(\"policyName\") ?? \"ACKPSPHostNetworkingPorts\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var createVPC = new AliCloud.Vpc.Network(\"CreateVPC\", new()\n {\n CidrBlock = vpcCidr,\n });\n\n // According to the vswitch cidr blocks to launch several vswitches\n var createVSwitch = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c vswitchCidrs.Length; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n createVSwitch.Add(new AliCloud.Vpc.Switch($\"CreateVSwitch-{range.Value}\", new()\n {\n VpcId = createVPC.Id,\n CidrBlock = vswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n var createCluster = new AliCloud.CS.ManagedKubernetes(\"CreateCluster\", new()\n {\n Name = $\"{clusterName}-{@default.Result}\",\n ClusterSpec = \"ack.pro.small\",\n Profile = \"Default\",\n VswitchIds = Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = createVSwitch.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n PodCidr = podCidr,\n ServiceCidr = serviceCidr,\n IsEnterpriseSecurityGroup = true,\n IpStack = \"ipv4\",\n ProxyMode = \"ipvs\",\n DeletionProtection = false,\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"gatekeeper\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"loongcollector\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"policy-template-controller\",\n },\n },\n OperationPolicy = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyArgs\n {\n ClusterAutoUpgrade = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs\n {\n Enabled = false,\n },\n },\n MaintenanceWindow = new AliCloud.CS.Inputs.ManagedKubernetesMaintenanceWindowArgs\n {\n Enable = false,\n },\n });\n\n var defaultKubernetesPolicyInstance = new AliCloud.CS.KubernetesPolicyInstance(\"default\", new()\n {\n ClusterId = createCluster.Id,\n PolicyName = policyName,\n Action = \"deny\",\n Namespaces = new[]\n {\n \"test\",\n },\n Parameters = \n {\n { \"hostNetwork\", \"true\" },\n { \"min\", \"20\" },\n { \"max\", \"200\" },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesMaintenanceWindowArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.std.inputs.SplitArgs;\nimport com.pulumi.alicloud.cs.KubernetesPolicyInstance;\nimport com.pulumi.alicloud.cs.KubernetesPolicyInstanceArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var vpcCidr = config.get(\"vpcCidr\").orElse(\"10.0.0.0/8\");\n final var vswitchCidrs = config.get(\"vswitchCidrs\").orElse(List.of( \n \"10.1.0.0/16\",\n \"10.2.0.0/16\"));\n final var clusterName = config.get(\"clusterName\").orElse(\"example-create-cluster\");\n final var podCidr = config.get(\"podCidr\").orElse(\"172.16.0.0/16\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var policyName = config.get(\"policyName\").orElse(\"ACKPSPHostNetworkingPorts\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var createVPC = new Network(\"createVPC\", NetworkArgs.builder()\n .cidrBlock(vpcCidr)\n .build());\n\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c vswitchCidrs.length(); i++) {\n new Switch(\"createVSwitch-\" + i, SwitchArgs.builder()\n .vpcId(createVPC.id())\n .cidrBlock(vswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n var createCluster = new ManagedKubernetes(\"createCluster\", ManagedKubernetesArgs.builder()\n .name(String.format(\"%s-%s\", clusterName,default_.result()))\n .clusterSpec(\"ack.pro.small\")\n .profile(\"Default\")\n .vswitchIds(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(createVSwitch.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .podCidr(podCidr)\n .serviceCidr(serviceCidr)\n .isEnterpriseSecurityGroup(true)\n .ipStack(\"ipv4\")\n .proxyMode(\"ipvs\")\n .deletionProtection(false)\n .addons( \n ManagedKubernetesAddonArgs.builder()\n .name(\"gatekeeper\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"loongcollector\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"policy-template-controller\")\n .build())\n .operationPolicy(ManagedKubernetesOperationPolicyArgs.builder()\n .clusterAutoUpgrade(ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs.builder()\n .enabled(false)\n .build())\n .build())\n .maintenanceWindow(ManagedKubernetesMaintenanceWindowArgs.builder()\n .enable(false)\n .build())\n .build());\n\n var defaultKubernetesPolicyInstance = new KubernetesPolicyInstance(\"defaultKubernetesPolicyInstance\", KubernetesPolicyInstanceArgs.builder()\n .clusterId(createCluster.id())\n .policyName(policyName)\n .action(\"deny\")\n .namespaces(\"test\")\n .parameters(Map.ofEntries(\n Map.entry(\"hostNetwork\", \"true\"),\n Map.entry(\"min\", \"20\"),\n Map.entry(\"max\", \"200\")\n ))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Service for Kubernetes (ACK) Policy Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/kubernetesPolicyInstance:KubernetesPolicyInstance example \u003ccluster_id\u003e:\u003cpolicy_name\u003e:\u003cinstance_name\u003e\n```\n\n",
+ "properties": {
+ "action": {
+ "type": "string",
+ "description": "Policy Governance Implementation Actions\n"
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "Target cluster ID\n"
+ },
+ "instanceName": {
+ "type": "string",
+ "description": "Rule Instance Name\n"
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Limits the namespace of the policy implementation. Empty indicates all namespaces.\n"
+ },
+ "parameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The parameter configuration of the current rule instance. For more information about the parameters supported by each policy rule, see [Container Security Policy Rule Base Description](https://www.alibabacloud.com/help/doc-detail/359819.html).\n"
+ },
+ "policyName": {
+ "type": "string",
+ "description": "Policy Name\n"
+ }
+ },
+ "required": [
+ "clusterId",
+ "instanceName",
+ "policyName"
+ ],
+ "inputProperties": {
+ "action": {
+ "type": "string",
+ "description": "Policy Governance Implementation Actions\n"
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "Target cluster ID\n",
+ "willReplaceOnChanges": true
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Limits the namespace of the policy implementation. Empty indicates all namespaces.\n"
+ },
+ "parameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The parameter configuration of the current rule instance. For more information about the parameters supported by each policy rule, see [Container Security Policy Rule Base Description](https://www.alibabacloud.com/help/doc-detail/359819.html).\n"
+ },
+ "policyName": {
+ "type": "string",
+ "description": "Policy Name\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "requiredInputs": [
+ "clusterId",
+ "policyName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering KubernetesPolicyInstance resources.\n",
+ "properties": {
+ "action": {
+ "type": "string",
+ "description": "Policy Governance Implementation Actions\n"
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "Target cluster ID\n",
+ "willReplaceOnChanges": true
+ },
+ "instanceName": {
+ "type": "string",
+ "description": "Rule Instance Name\n"
+ },
+ "namespaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Limits the namespace of the policy implementation. Empty indicates all namespaces.\n"
+ },
+ "parameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The parameter configuration of the current rule instance. For more information about the parameters supported by each policy rule, see [Container Security Policy Rule Base Description](https://www.alibabacloud.com/help/doc-detail/359819.html).\n"
+ },
+ "policyName": {
+ "type": "string",
+ "description": "Policy Name\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ }
+ },
"alicloud:cs/managedKubernetes:ManagedKubernetes": {
- "description": "This resource will help you to manage a ManagedKubernetes Cluster in Alibaba Cloud Kubernetes Service. \n\n\u003e **NOTE:** Available since v1.26.0.\n\n\u003e **NOTE:** It is recommended to create a cluster with zero worker nodes, and then use a node pool to manage the cluster nodes. \n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** From version 1.9.4, the provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** From version 1.20.0, the provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.72.0, Some parameters have been removed from resource,You can check them below and re-import the cluster if necessary.\n\n\u003e **NOTE:** From version 1.120.0, Support for cluster migration from Standard cluster to professional.\n\n\u003e **NOTE:** From version 1.177.0, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`enableSsh`\" pulumi-lang-dotnet=\"`EnableSsh`\" pulumi-lang-go=\"`enableSsh`\" pulumi-lang-python=\"`enable_ssh`\" pulumi-lang-yaml=\"`enableSsh`\" pulumi-lang-java=\"`enableSsh`\"\u003e`enable_ssh`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`rdsInstances`\" pulumi-lang-dotnet=\"`RdsInstances`\" pulumi-lang-go=\"`rdsInstances`\" pulumi-lang-python=\"`rds_instances`\" pulumi-lang-yaml=\"`rdsInstances`\" pulumi-lang-java=\"`rdsInstances`\"\u003e`rds_instances`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`keyName`\" pulumi-lang-dotnet=\"`KeyName`\" pulumi-lang-go=\"`keyName`\" pulumi-lang-python=\"`key_name`\" pulumi-lang-yaml=\"`keyName`\" pulumi-lang-java=\"`keyName`\"\u003e`key_name`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptionContext`\" pulumi-lang-dotnet=\"`KmsEncryptionContext`\" pulumi-lang-go=\"`kmsEncryptionContext`\" pulumi-lang-python=\"`kms_encryption_context`\" pulumi-lang-yaml=\"`kmsEncryptionContext`\" pulumi-lang-java=\"`kmsEncryptionContext`\"\u003e`kms_encryption_context`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodeNameMode`\" pulumi-lang-dotnet=\"`NodeNameMode`\" pulumi-lang-go=\"`nodeNameMode`\" pulumi-lang-python=\"`node_name_mode`\" pulumi-lang-yaml=\"`nodeNameMode`\" pulumi-lang-java=\"`nodeNameMode`\"\u003e`node_name_mode`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`osType`\" pulumi-lang-dotnet=\"`OsType`\" pulumi-lang-go=\"`osType`\" pulumi-lang-python=\"`os_type`\" pulumi-lang-yaml=\"`osType`\" pulumi-lang-java=\"`osType`\"\u003e`os_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`imageId`\" pulumi-lang-dotnet=\"`ImageId`\" pulumi-lang-go=\"`imageId`\" pulumi-lang-python=\"`image_id`\" pulumi-lang-yaml=\"`imageId`\" pulumi-lang-java=\"`imageId`\"\u003e`image_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`installCloudMonitor`\" pulumi-lang-dotnet=\"`InstallCloudMonitor`\" pulumi-lang-go=\"`installCloudMonitor`\" pulumi-lang-python=\"`install_cloud_monitor`\" pulumi-lang-yaml=\"`installCloudMonitor`\" pulumi-lang-java=\"`installCloudMonitor`\"\u003e`install_cloud_monitor`\u003c/span\u003e are deprecated.\nWe Suggest you using resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n\u003e **NOTE:** From version 1.212.0, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`enableSsh`\" pulumi-lang-dotnet=\"`EnableSsh`\" pulumi-lang-go=\"`enableSsh`\" pulumi-lang-python=\"`enable_ssh`\" pulumi-lang-yaml=\"`enableSsh`\" pulumi-lang-java=\"`enableSsh`\"\u003e`enable_ssh`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`rdsInstances`\" pulumi-lang-dotnet=\"`RdsInstances`\" pulumi-lang-go=\"`rdsInstances`\" pulumi-lang-python=\"`rds_instances`\" pulumi-lang-yaml=\"`rdsInstances`\" pulumi-lang-java=\"`rdsInstances`\"\u003e`rds_instances`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`keyName`\" pulumi-lang-dotnet=\"`KeyName`\" pulumi-lang-go=\"`keyName`\" pulumi-lang-python=\"`key_name`\" pulumi-lang-yaml=\"`keyName`\" pulumi-lang-java=\"`keyName`\"\u003e`key_name`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptionContext`\" pulumi-lang-dotnet=\"`KmsEncryptionContext`\" pulumi-lang-go=\"`kmsEncryptionContext`\" pulumi-lang-python=\"`kms_encryption_context`\" pulumi-lang-yaml=\"`kmsEncryptionContext`\" pulumi-lang-java=\"`kmsEncryptionContext`\"\u003e`kms_encryption_context`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodeNameMode`\" pulumi-lang-dotnet=\"`NodeNameMode`\" pulumi-lang-go=\"`nodeNameMode`\" pulumi-lang-python=\"`node_name_mode`\" pulumi-lang-yaml=\"`nodeNameMode`\" pulumi-lang-java=\"`nodeNameMode`\"\u003e`node_name_mode`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`osType`\" pulumi-lang-dotnet=\"`OsType`\" pulumi-lang-go=\"`osType`\" pulumi-lang-python=\"`os_type`\" pulumi-lang-yaml=\"`osType`\" pulumi-lang-java=\"`osType`\"\u003e`os_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`imageId`\" pulumi-lang-dotnet=\"`ImageId`\" pulumi-lang-go=\"`imageId`\" pulumi-lang-python=\"`image_id`\" pulumi-lang-yaml=\"`imageId`\" pulumi-lang-java=\"`imageId`\"\u003e`image_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`installCloudMonitor`\" pulumi-lang-dotnet=\"`InstallCloudMonitor`\" pulumi-lang-go=\"`installCloudMonitor`\" pulumi-lang-python=\"`install_cloud_monitor`\" pulumi-lang-yaml=\"`installCloudMonitor`\" pulumi-lang-java=\"`installCloudMonitor`\"\u003e`install_cloud_monitor`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kubeConfig`\" pulumi-lang-dotnet=\"`KubeConfig`\" pulumi-lang-go=\"`kubeConfig`\" pulumi-lang-python=\"`kube_config`\" pulumi-lang-yaml=\"`kubeConfig`\" pulumi-lang-java=\"`kubeConfig`\"\u003e`kube_config`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e are removed.\nPlease use resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n## Example Usage\n\nACK cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\n// Existing vpc id used to create several vswitches and other resources.\nconst vpcId = config.get(\"vpcId\") || \"\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of existing vswitch id.\nconst vswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n];\n// Proxy mode is option of kube-proxy.\nconst proxyMode = config.get(\"proxyMode\") || \"ipvs\";\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\n// List of existing vswitch ids for terway.\nconst terwayVswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nconst terwayVswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchCidrs\") || [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n];\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\n// If there is not specifying vpc_id, the module will launch a new vpc\nconst vpc: alicloud.vpc.Network[] = [];\nfor (const range = {value: 0}; range.value \u003c (vpcId == \"\" ? 1 : 0); range.value++) {\n vpc.push(new alicloud.vpc.Network(`vpc-${range.value}`, {cidrBlock: vpcCidr}));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst vswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (vswitchIds.length \u003e 0 ? 0 : vswitchCidrs.length); range.value++) {\n vswitches.push(new alicloud.vpc.Switch(`vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst terwayVswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (terwayVswitchIds.length \u003e 0 ? 0 : terwayVswitchCidrs.length); range.value++) {\n terwayVswitches.push(new alicloud.vpc.Switch(`terway_vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: terwayVswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\nconst k8s = new alicloud.cs.ManagedKubernetes(\"k8s\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n vswitchIds: vswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: vswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : vswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: vswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n podVswitchIds: terwayVswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: terwayVswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : terwayVswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: terwayVswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n newNatGateway: true,\n proxyMode: proxyMode,\n serviceCidr: serviceCidr,\n skipSetCertificateAuthority: true,\n addons: [\n {\n name: \"terway-eniip\",\n },\n {\n name: \"csi-plugin\",\n },\n {\n name: \"csi-provisioner\",\n },\n {\n name: \"logtail-ds\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n },\n {\n name: \"nginx-ingress-controller\",\n config: JSON.stringify({\n IngressSlbNetworkType: \"internet\",\n }),\n },\n {\n name: \"arms-prometheus\",\n },\n {\n name: \"ack-node-problem-detector\",\n config: JSON.stringify({}),\n },\n ],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\n# Existing vpc id used to create several vswitches and other resources.\nvpc_id = config.get(\"vpcId\")\nif vpc_id is None:\n vpc_id = \"\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of existing vswitch id.\nvswitch_ids = config.get_object(\"vswitchIds\")\nif vswitch_ids is None:\n vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n ]\n# Proxy mode is option of kube-proxy.\nproxy_mode = config.get(\"proxyMode\")\nif proxy_mode is None:\n proxy_mode = \"ipvs\"\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\n# List of existing vswitch ids for terway.\nterway_vswitch_ids = config.get_object(\"terwayVswitchIds\")\nif terway_vswitch_ids is None:\n terway_vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nterway_vswitch_cidrs = config.get_object(\"terwayVswitchCidrs\")\nif terway_vswitch_cidrs is None:\n terway_vswitch_cidrs = [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n ]\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\n# If there is not specifying vpc_id, the module will launch a new vpc\nvpc = []\nfor range in [{\"value\": i} for i in range(0, 1 if vpc_id == else 0)]:\n vpc.append(alicloud.vpc.Network(f\"vpc-{range['value']}\", cidr_block=vpc_cidr))\n# According to the vswitch cidr blocks to launch several vswitches\nvswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(vswitch_ids) \u003e 0 else len(vswitch_cidrs))]:\n vswitches.append(alicloud.vpc.Switch(f\"vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\n# According to the vswitch cidr blocks to launch several vswitches\nterway_vswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(terway_vswitch_ids) \u003e 0 else len(terway_vswitch_cidrs))]:\n terway_vswitches.append(alicloud.vpc.Switch(f\"terway_vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=terway_vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\nk8s = alicloud.cs.ManagedKubernetes(\"k8s\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=vswitch_ids).result).result if len(vswitch_ids) \u003e 0 else [] if len(vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n pod_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) \u003e 0 else [] if len(terway_vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n new_nat_gateway=True,\n proxy_mode=proxy_mode,\n service_cidr=service_cidr,\n skip_set_certificate_authority=True,\n addons=[\n {\n \"name\": \"terway-eniip\",\n },\n {\n \"name\": \"csi-plugin\",\n },\n {\n \"name\": \"csi-provisioner\",\n },\n {\n \"name\": \"logtail-ds\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n },\n {\n \"name\": \"nginx-ingress-controller\",\n \"config\": json.dumps({\n \"IngressSlbNetworkType\": \"internet\",\n }),\n },\n {\n \"name\": \"arms-prometheus\",\n },\n {\n \"name\": \"ack-node-problem-detector\",\n \"config\": json.dumps({}),\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n // Existing vpc id used to create several vswitches and other resources.\n var vpcId = config.Get(\"vpcId\") ?? \"\";\n // The cidr block used to launch a new vpc when 'vpc_id' is not specified.\n var vpcCidr = config.Get(\"vpcCidr\") ?? \"10.0.0.0/8\";\n // List of existing vswitch id.\n var vswitchIds = config.GetObject\u003cstring[]\u003e(\"vswitchIds\") ?? new[] {};\n // List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\n var vswitchCidrs = config.GetObject\u003cstring[]\u003e(\"vswitchCidrs\") ?? new[]\n {\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n };\n // Proxy mode is option of kube-proxy.\n var proxyMode = config.Get(\"proxyMode\") ?? \"ipvs\";\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n // List of existing vswitch ids for terway.\n var terwayVswitchIds = config.GetObject\u003cstring[]\u003e(\"terwayVswitchIds\") ?? new[] {};\n // List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\n var terwayVswitchCidrs = config.GetObject\u003cstring[]\u003e(\"terwayVswitchCidrs\") ?? new[]\n {\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n };\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n // If there is not specifying vpc_id, the module will launch a new vpc\n var vpc = new List\u003cAliCloud.Vpc.Network\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (vpcId == \"\" ? 1 : 0); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n vpc.Add(new AliCloud.Vpc.Network($\"vpc-{range.Value}\", new()\n {\n CidrBlock = vpcCidr,\n }));\n }\n // According to the vswitch cidr blocks to launch several vswitches\n var vswitches = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (vswitchIds.Length \u003e 0 ? 0 : vswitchCidrs.Length); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n vswitches.Add(new AliCloud.Vpc.Switch($\"vswitches-{range.Value}\", new()\n {\n VpcId = vpcId == \"\" ? Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = vpc.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e invoke.Result) : vpcId,\n CidrBlock = vswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n // According to the vswitch cidr blocks to launch several vswitches\n var terwayVswitches = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (terwayVswitchIds.Length \u003e 0 ? 0 : terwayVswitchCidrs.Length); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n terwayVswitches.Add(new AliCloud.Vpc.Switch($\"terway_vswitches-{range.Value}\", new()\n {\n VpcId = vpcId == \"\" ? Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = vpc.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e invoke.Result) : vpcId,\n CidrBlock = terwayVswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n var k8s = new AliCloud.CS.ManagedKubernetes(\"k8s\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n VswitchIds = vswitchIds.Length \u003e 0 ? Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = vswitchIds,\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result) : vswitchCidrs.Length \u003c 1 ? new[] {} : Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = vswitches.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n PodVswitchIds = terwayVswitchIds.Length \u003e 0 ? Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = terwayVswitchIds,\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result) : terwayVswitchCidrs.Length \u003c 1 ? new[] {} : Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = terwayVswitches.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n NewNatGateway = true,\n ProxyMode = proxyMode,\n ServiceCidr = serviceCidr,\n SkipSetCertificateAuthority = true,\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-eniip\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-plugin\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-provisioner\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"logtail-ds\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"nginx-ingress-controller\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressSlbNetworkType\"] = \"internet\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"arms-prometheus\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-node-problem-detector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n }),\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport com.pulumi.std.inputs.SplitArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var vpcId = config.get(\"vpcId\").orElse(\"\");\n final var vpcCidr = config.get(\"vpcCidr\").orElse(\"10.0.0.0/8\");\n final var vswitchIds = config.get(\"vswitchIds\").orElse(List.of());\n final var vswitchCidrs = config.get(\"vswitchCidrs\").orElse(List.of( \n \"10.1.0.0/16\",\n \"10.2.0.0/16\"));\n final var proxyMode = config.get(\"proxyMode\").orElse(\"ipvs\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var terwayVswitchIds = config.get(\"terwayVswitchIds\").orElse(List.of());\n final var terwayVswitchCidrs = config.get(\"terwayVswitchCidrs\").orElse(List.of( \n \"10.4.0.0/16\",\n \"10.5.0.0/16\"));\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n // If there is not specifying vpc_id, the module will launch a new vpc\n for (var i = 0; i \u003c (vpcId == \"\" ? 1 : 0); i++) {\n new Network(\"vpc-\" + i, NetworkArgs.builder()\n .cidrBlock(vpcCidr)\n .build());\n\n \n}\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c (vswitchIds.length() \u003e 0 ? 0 : vswitchCidrs.length()); i++) {\n new Switch(\"vswitches-\" + i, SwitchArgs.builder()\n .vpcId(vpcId == \"\" ? StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input(vpc.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e _invoke.result()) : vpcId)\n .cidrBlock(vswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c (terwayVswitchIds.length() \u003e 0 ? 0 : terwayVswitchCidrs.length()); i++) {\n new Switch(\"terwayVswitches-\" + i, SwitchArgs.builder()\n .vpcId(vpcId == \"\" ? StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input(vpc.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e _invoke.result()) : vpcId)\n .cidrBlock(terwayVswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n var k8s = new ManagedKubernetes(\"k8s\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .vswitchIds(vswitchIds.length() \u003e 0 ? StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(vswitchIds)\n .build()).result())\n .build()).result() : vswitchCidrs.length() \u003c 1 ? : StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(vswitches.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .podVswitchIds(terwayVswitchIds.length() \u003e 0 ? StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(terwayVswitchIds)\n .build()).result())\n .build()).result() : terwayVswitchCidrs.length() \u003c 1 ? : StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(terwayVswitches.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .newNatGateway(true)\n .proxyMode(proxyMode)\n .serviceCidr(serviceCidr)\n .skipSetCertificateAuthority(true)\n .addons( \n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-eniip\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-plugin\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-provisioner\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"logtail-ds\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"nginx-ingress-controller\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressSlbNetworkType\", \"internet\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"arms-prometheus\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-node-problem-detector\")\n .config(serializeJson(\n jsonObject(\n\n )))\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nACK Cluster with Auto Mode\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"auto-mode\";\n// Proxy mode is option of kube-proxy.\nconst proxyMode = config.get(\"proxyMode\") || \"ipvs\";\n// The kubernetes service cidr block.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst auto_mode = new alicloud.cs.ManagedKubernetes(\"auto-mode\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n zoneIds: [enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId)],\n newNatGateway: true,\n isEnterpriseSecurityGroup: true,\n slbInternetEnabled: false,\n skipSetCertificateAuthority: true,\n proxyMode: proxyMode,\n serviceCidr: serviceCidr,\n ipStack: \"ipv4\",\n deletionProtection: true,\n autoMode: {\n enabled: true,\n },\n maintenanceWindow: {\n duration: \"3h\",\n weeklyPeriod: \"Monday\",\n enable: true,\n maintenanceTime: \"2025-07-07T00:00:00.000+08:00\",\n },\n operationPolicy: {\n clusterAutoUpgrade: {\n channel: \"stable\",\n enabled: true,\n },\n },\n controlPlaneLogComponents: [\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n ],\n controlPlaneLogTtl: \"30\",\n auditLogConfig: {\n enabled: true,\n },\n addons: [\n {\n name: \"metrics-server\",\n },\n {\n name: \"managed-coredns\",\n },\n {\n name: \"managed-security-inspector\",\n },\n {\n name: \"ack-cost-exporter\",\n },\n {\n name: \"terway-controlplane\",\n config: JSON.stringify({\n ENITrunking: \"true\",\n }),\n },\n {\n name: \"terway-eniip\",\n config: JSON.stringify({\n NetworkPolicy: \"false\",\n ENITrunking: \"true\",\n IPVlan: \"false\",\n }),\n },\n {\n name: \"csi-plugin\",\n },\n {\n name: \"managed-csiprovisioner\",\n },\n {\n name: \"storage-operator\",\n config: JSON.stringify({\n CnfsOssEnable: \"false\",\n CnfsNasEnable: \"false\",\n }),\n },\n {\n name: \"loongcollector\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n },\n {\n name: \"ack-node-problem-detector\",\n config: JSON.stringify({\n sls_project_name: \"\",\n }),\n },\n {\n name: \"nginx-ingress-controller\",\n disabled: true,\n },\n {\n name: \"alb-ingress-controller\",\n config: JSON.stringify({\n albIngress: {\n CreateDefaultALBConfig: false,\n },\n }),\n },\n {\n name: \"arms-prometheus\",\n config: JSON.stringify({\n prometheusMode: \"default\",\n }),\n },\n {\n name: \"alicloud-monitor-controller\",\n },\n {\n name: \"managed-aliyun-acr-credential-helper\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"auto-mode\"\n# Proxy mode is option of kube-proxy.\nproxy_mode = config.get(\"proxyMode\")\nif proxy_mode is None:\n proxy_mode = \"ipvs\"\n# The kubernetes service cidr block.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nauto_mode = alicloud.cs.ManagedKubernetes(\"auto-mode\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n zone_ids=[enhanced.zones[0].zone_id],\n new_nat_gateway=True,\n is_enterprise_security_group=True,\n slb_internet_enabled=False,\n skip_set_certificate_authority=True,\n proxy_mode=proxy_mode,\n service_cidr=service_cidr,\n ip_stack=\"ipv4\",\n deletion_protection=True,\n auto_mode={\n \"enabled\": True,\n },\n maintenance_window={\n \"duration\": \"3h\",\n \"weekly_period\": \"Monday\",\n \"enable\": True,\n \"maintenance_time\": \"2025-07-07T00:00:00.000+08:00\",\n },\n operation_policy={\n \"cluster_auto_upgrade\": {\n \"channel\": \"stable\",\n \"enabled\": True,\n },\n },\n control_plane_log_components=[\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n ],\n control_plane_log_ttl=\"30\",\n audit_log_config={\n \"enabled\": True,\n },\n addons=[\n {\n \"name\": \"metrics-server\",\n },\n {\n \"name\": \"managed-coredns\",\n },\n {\n \"name\": \"managed-security-inspector\",\n },\n {\n \"name\": \"ack-cost-exporter\",\n },\n {\n \"name\": \"terway-controlplane\",\n \"config\": json.dumps({\n \"ENITrunking\": \"true\",\n }),\n },\n {\n \"name\": \"terway-eniip\",\n \"config\": json.dumps({\n \"NetworkPolicy\": \"false\",\n \"ENITrunking\": \"true\",\n \"IPVlan\": \"false\",\n }),\n },\n {\n \"name\": \"csi-plugin\",\n },\n {\n \"name\": \"managed-csiprovisioner\",\n },\n {\n \"name\": \"storage-operator\",\n \"config\": json.dumps({\n \"CnfsOssEnable\": \"false\",\n \"CnfsNasEnable\": \"false\",\n }),\n },\n {\n \"name\": \"loongcollector\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n },\n {\n \"name\": \"ack-node-problem-detector\",\n \"config\": json.dumps({\n \"sls_project_name\": \"\",\n }),\n },\n {\n \"name\": \"nginx-ingress-controller\",\n \"disabled\": True,\n },\n {\n \"name\": \"alb-ingress-controller\",\n \"config\": json.dumps({\n \"albIngress\": {\n \"CreateDefaultALBConfig\": False,\n },\n }),\n },\n {\n \"name\": \"arms-prometheus\",\n \"config\": json.dumps({\n \"prometheusMode\": \"default\",\n }),\n },\n {\n \"name\": \"alicloud-monitor-controller\",\n },\n {\n \"name\": \"managed-aliyun-acr-credential-helper\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"auto-mode\";\n // Proxy mode is option of kube-proxy.\n var proxyMode = config.Get(\"proxyMode\") ?? \"ipvs\";\n // The kubernetes service cidr block.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var auto_mode = new AliCloud.CS.ManagedKubernetes(\"auto-mode\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n ZoneIds = new[]\n {\n enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n },\n NewNatGateway = true,\n IsEnterpriseSecurityGroup = true,\n SlbInternetEnabled = false,\n SkipSetCertificateAuthority = true,\n ProxyMode = proxyMode,\n ServiceCidr = serviceCidr,\n IpStack = \"ipv4\",\n DeletionProtection = true,\n AutoMode = new AliCloud.CS.Inputs.ManagedKubernetesAutoModeArgs\n {\n Enabled = true,\n },\n MaintenanceWindow = new AliCloud.CS.Inputs.ManagedKubernetesMaintenanceWindowArgs\n {\n Duration = \"3h\",\n WeeklyPeriod = \"Monday\",\n Enable = true,\n MaintenanceTime = \"2025-07-07T00:00:00.000+08:00\",\n },\n OperationPolicy = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyArgs\n {\n ClusterAutoUpgrade = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs\n {\n Channel = \"stable\",\n Enabled = true,\n },\n },\n ControlPlaneLogComponents = new[]\n {\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n },\n ControlPlaneLogTtl = \"30\",\n AuditLogConfig = new AliCloud.CS.Inputs.ManagedKubernetesAuditLogConfigArgs\n {\n Enabled = true,\n },\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"metrics-server\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-coredns\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-security-inspector\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-cost-exporter\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-controlplane\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"ENITrunking\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-eniip\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"NetworkPolicy\"] = \"false\",\n [\"ENITrunking\"] = \"true\",\n [\"IPVlan\"] = \"false\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-plugin\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-csiprovisioner\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"storage-operator\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"CnfsOssEnable\"] = \"false\",\n [\"CnfsNasEnable\"] = \"false\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"loongcollector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-node-problem-detector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"sls_project_name\"] = \"\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"nginx-ingress-controller\",\n Disabled = true,\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"alb-ingress-controller\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"albIngress\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"CreateDefaultALBConfig\"] = false,\n },\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"arms-prometheus\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"prometheusMode\"] = \"default\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"alicloud-monitor-controller\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-aliyun-acr-credential-helper\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"auto-mode\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t// Proxy mode is option of kube-proxy.\n\t\tproxyMode := \"ipvs\"\n\t\tif param := cfg.Get(\"proxyMode\"); param != \"\" {\n\t\t\tproxyMode = param\n\t\t}\n\t\t// The kubernetes service cidr block.\n\t\tserviceCidr := \"192.168.0.0/16\"\n\t\tif param := cfg.Get(\"serviceCidr\"); param != \"\" {\n\t\t\tserviceCidr = param\n\t\t}\n\t\tenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"ENITrunking\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"NetworkPolicy\": \"false\",\n\t\t\t\"ENITrunking\": \"true\",\n\t\t\t\"IPVlan\": \"false\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\ttmpJSON2, err := json.Marshal(map[string]interface{}{\n\t\t\t\"CnfsOssEnable\": \"false\",\n\t\t\t\"CnfsNasEnable\": \"false\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson2 := string(tmpJSON2)\n\t\ttmpJSON3, err := json.Marshal(map[string]interface{}{\n\t\t\t\"IngressDashboardEnabled\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson3 := string(tmpJSON3)\n\t\ttmpJSON4, err := json.Marshal(map[string]interface{}{\n\t\t\t\"sls_project_name\": \"\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson4 := string(tmpJSON4)\n\t\ttmpJSON5, err := json.Marshal(map[string]interface{}{\n\t\t\t\"albIngress\": map[string]interface{}{\n\t\t\t\t\"CreateDefaultALBConfig\": false,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson5 := string(tmpJSON5)\n\t\ttmpJSON6, err := json.Marshal(map[string]interface{}{\n\t\t\t\"prometheusMode\": \"default\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson6 := string(tmpJSON6)\n\t\t_, err = cs.NewManagedKubernetes(ctx, \"auto-mode\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(enhanced.Zones[0].ZoneId),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(false),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tProxyMode: pulumi.String(proxyMode),\n\t\t\tServiceCidr: pulumi.String(serviceCidr),\n\t\t\tIpStack: pulumi.String(\"ipv4\"),\n\t\t\tDeletionProtection: pulumi.Bool(true),\n\t\t\tAutoMode: \u0026cs.ManagedKubernetesAutoModeArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tMaintenanceWindow: \u0026cs.ManagedKubernetesMaintenanceWindowArgs{\n\t\t\t\tDuration: pulumi.String(\"3h\"),\n\t\t\t\tWeeklyPeriod: pulumi.String(\"Monday\"),\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tMaintenanceTime: pulumi.String(\"2025-07-07T00:00:00.000+08:00\"),\n\t\t\t},\n\t\t\tOperationPolicy: \u0026cs.ManagedKubernetesOperationPolicyArgs{\n\t\t\t\tClusterAutoUpgrade: \u0026cs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs{\n\t\t\t\t\tChannel: pulumi.String(\"stable\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneLogComponents: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"apiserver\"),\n\t\t\t\tpulumi.String(\"kcm\"),\n\t\t\t\tpulumi.String(\"scheduler\"),\n\t\t\t\tpulumi.String(\"ccm\"),\n\t\t\t\tpulumi.String(\"controlplane-events\"),\n\t\t\t\tpulumi.String(\"alb\"),\n\t\t\t\tpulumi.String(\"ack-goatscaler\"),\n\t\t\t\tpulumi.String(\"coredns\"),\n\t\t\t\tpulumi.String(\"gatekeeper\"),\n\t\t\t},\n\t\t\tControlPlaneLogTtl: pulumi.String(\"30\"),\n\t\t\tAuditLogConfig: \u0026cs.ManagedKubernetesAuditLogConfigArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tAddons: cs.ManagedKubernetesAddonArray{\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"metrics-server\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-coredns\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-security-inspector\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"ack-cost-exporter\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"terway-controlplane\"),\n\t\t\t\t\tConfig: pulumi.String(json0),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"terway-eniip\"),\n\t\t\t\t\tConfig: pulumi.String(json1),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"csi-plugin\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-csiprovisioner\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"storage-operator\"),\n\t\t\t\t\tConfig: pulumi.String(json2),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"loongcollector\"),\n\t\t\t\t\tConfig: pulumi.String(json3),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"ack-node-problem-detector\"),\n\t\t\t\t\tConfig: pulumi.String(json4),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"nginx-ingress-controller\"),\n\t\t\t\t\tDisabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"alb-ingress-controller\"),\n\t\t\t\t\tConfig: pulumi.String(json5),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"arms-prometheus\"),\n\t\t\t\t\tConfig: pulumi.String(json6),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"alicloud-monitor-controller\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-aliyun-acr-credential-helper\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAutoModeArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesMaintenanceWindowArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAuditLogConfigArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"auto-mode\");\n final var proxyMode = config.get(\"proxyMode\").orElse(\"ipvs\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var auto_mode = new ManagedKubernetes(\"auto-mode\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .zoneIds(enhanced.zones()[0].zoneId())\n .newNatGateway(true)\n .isEnterpriseSecurityGroup(true)\n .slbInternetEnabled(false)\n .skipSetCertificateAuthority(true)\n .proxyMode(proxyMode)\n .serviceCidr(serviceCidr)\n .ipStack(\"ipv4\")\n .deletionProtection(true)\n .autoMode(ManagedKubernetesAutoModeArgs.builder()\n .enabled(true)\n .build())\n .maintenanceWindow(ManagedKubernetesMaintenanceWindowArgs.builder()\n .duration(\"3h\")\n .weeklyPeriod(\"Monday\")\n .enable(true)\n .maintenanceTime(\"2025-07-07T00:00:00.000+08:00\")\n .build())\n .operationPolicy(ManagedKubernetesOperationPolicyArgs.builder()\n .clusterAutoUpgrade(ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs.builder()\n .channel(\"stable\")\n .enabled(true)\n .build())\n .build())\n .controlPlaneLogComponents( \n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\")\n .controlPlaneLogTtl(\"30\")\n .auditLogConfig(ManagedKubernetesAuditLogConfigArgs.builder()\n .enabled(true)\n .build())\n .addons( \n ManagedKubernetesAddonArgs.builder()\n .name(\"metrics-server\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-coredns\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-security-inspector\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-cost-exporter\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-controlplane\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"ENITrunking\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-eniip\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"NetworkPolicy\", \"false\"),\n jsonProperty(\"ENITrunking\", \"true\"),\n jsonProperty(\"IPVlan\", \"false\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-plugin\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-csiprovisioner\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"storage-operator\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"CnfsOssEnable\", \"false\"),\n jsonProperty(\"CnfsNasEnable\", \"false\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"loongcollector\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-node-problem-detector\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"sls_project_name\", \"\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"nginx-ingress-controller\")\n .disabled(true)\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"alb-ingress-controller\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"albIngress\", jsonObject(\n jsonProperty(\"CreateDefaultALBConfig\", false)\n ))\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"arms-prometheus\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"prometheusMode\", \"default\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"alicloud-monitor-controller\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-aliyun-acr-credential-helper\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: auto-mode\n proxyMode:\n type: string\n default: ipvs\n serviceCidr:\n type: string\n default: 192.168.0.0/16\nresources:\n auto-mode:\n type: alicloud:cs:ManagedKubernetes\n properties:\n name: ${name}\n clusterSpec: ack.pro.small\n zoneIds:\n - ${enhanced.zones[0].zoneId}\n newNatGateway: true\n isEnterpriseSecurityGroup: true\n slbInternetEnabled: false\n skipSetCertificateAuthority: true\n proxyMode: ${proxyMode}\n serviceCidr: ${serviceCidr}\n ipStack: ipv4\n deletionProtection: true\n autoMode:\n enabled: true\n maintenanceWindow:\n duration: 3h\n weeklyPeriod: Monday\n enable: true\n maintenanceTime: 2025-07-07T00:00:00.000+08:00\n operationPolicy:\n clusterAutoUpgrade:\n channel: stable\n enabled: true\n controlPlaneLogComponents:\n - apiserver\n - kcm\n - scheduler\n - ccm\n - controlplane-events\n - alb\n - ack-goatscaler\n - coredns\n - gatekeeper\n controlPlaneLogTtl: '30'\n auditLogConfig:\n enabled: true\n addons:\n - name: metrics-server\n - name: managed-coredns\n - name: managed-security-inspector\n - name: ack-cost-exporter\n - name: terway-controlplane\n config:\n fn::toJSON:\n ENITrunking: 'true'\n - name: terway-eniip\n config:\n fn::toJSON:\n NetworkPolicy: 'false'\n ENITrunking: 'true'\n IPVlan: 'false'\n - name: csi-plugin\n - name: managed-csiprovisioner\n - name: storage-operator\n config:\n fn::toJSON:\n CnfsOssEnable: 'false'\n CnfsNasEnable: 'false'\n - name: loongcollector\n config:\n fn::toJSON:\n IngressDashboardEnabled: 'true'\n - name: ack-node-problem-detector\n config:\n fn::toJSON:\n sls_project_name: \"\"\n - name: nginx-ingress-controller\n disabled: true\n - name: alb-ingress-controller\n config:\n fn::toJSON:\n albIngress:\n CreateDefaultALBConfig: false\n - name: arms-prometheus\n config:\n fn::toJSON:\n prometheusMode: default\n - name: alicloud-monitor-controller\n - name: managed-aliyun-acr-credential-helper\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nKubernetes managed cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/managedKubernetes:ManagedKubernetes main cluster_id\n```\n\n",
+ "description": "This resource will help you to manage a ManagedKubernetes Cluster in Alibaba Cloud Kubernetes Service. \n\n\u003e **NOTE:** Available since v1.26.0.\n\n\u003e **NOTE:** It is recommended to create a cluster with zero worker nodes, and then use a node pool to manage the cluster nodes. \n\n\u003e **NOTE:** Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient.\n\n\u003e **NOTE:** From version 1.9.4, the provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** From version 1.20.0, the provider supports disabling internet load balancer for API Server by setting \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`slbInternetEnabled`\" pulumi-lang-dotnet=\"`SlbInternetEnabled`\" pulumi-lang-go=\"`slbInternetEnabled`\" pulumi-lang-python=\"`slb_internet_enabled`\" pulumi-lang-yaml=\"`slbInternetEnabled`\" pulumi-lang-java=\"`slbInternetEnabled`\"\u003e`slb_internet_enabled`\u003c/span\u003e.\n\n\u003e **NOTE:** If you want to manage Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.72.0, Some parameters have been removed from resource,You can check them below and re-import the cluster if necessary.\n\n\u003e **NOTE:** From version 1.120.0, Support for cluster migration from Standard cluster to professional.\n\n\u003e **NOTE:** From version 1.177.0, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`enableSsh`\" pulumi-lang-dotnet=\"`EnableSsh`\" pulumi-lang-go=\"`enableSsh`\" pulumi-lang-python=\"`enable_ssh`\" pulumi-lang-yaml=\"`enableSsh`\" pulumi-lang-java=\"`enableSsh`\"\u003e`enable_ssh`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`rdsInstances`\" pulumi-lang-dotnet=\"`RdsInstances`\" pulumi-lang-go=\"`rdsInstances`\" pulumi-lang-python=\"`rds_instances`\" pulumi-lang-yaml=\"`rdsInstances`\" pulumi-lang-java=\"`rdsInstances`\"\u003e`rds_instances`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`keyName`\" pulumi-lang-dotnet=\"`KeyName`\" pulumi-lang-go=\"`keyName`\" pulumi-lang-python=\"`key_name`\" pulumi-lang-yaml=\"`keyName`\" pulumi-lang-java=\"`keyName`\"\u003e`key_name`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptionContext`\" pulumi-lang-dotnet=\"`KmsEncryptionContext`\" pulumi-lang-go=\"`kmsEncryptionContext`\" pulumi-lang-python=\"`kms_encryption_context`\" pulumi-lang-yaml=\"`kmsEncryptionContext`\" pulumi-lang-java=\"`kmsEncryptionContext`\"\u003e`kms_encryption_context`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodeNameMode`\" pulumi-lang-dotnet=\"`NodeNameMode`\" pulumi-lang-go=\"`nodeNameMode`\" pulumi-lang-python=\"`node_name_mode`\" pulumi-lang-yaml=\"`nodeNameMode`\" pulumi-lang-java=\"`nodeNameMode`\"\u003e`node_name_mode`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`osType`\" pulumi-lang-dotnet=\"`OsType`\" pulumi-lang-go=\"`osType`\" pulumi-lang-python=\"`os_type`\" pulumi-lang-yaml=\"`osType`\" pulumi-lang-java=\"`osType`\"\u003e`os_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`imageId`\" pulumi-lang-dotnet=\"`ImageId`\" pulumi-lang-go=\"`imageId`\" pulumi-lang-python=\"`image_id`\" pulumi-lang-yaml=\"`imageId`\" pulumi-lang-java=\"`imageId`\"\u003e`image_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`installCloudMonitor`\" pulumi-lang-dotnet=\"`InstallCloudMonitor`\" pulumi-lang-go=\"`installCloudMonitor`\" pulumi-lang-python=\"`install_cloud_monitor`\" pulumi-lang-yaml=\"`installCloudMonitor`\" pulumi-lang-java=\"`installCloudMonitor`\"\u003e`install_cloud_monitor`\u003c/span\u003e are deprecated.\nWe Suggest you using resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n\u003e **NOTE:** From version 1.212.0, \u003cspan pulumi-lang-nodejs=\"`runtime`\" pulumi-lang-dotnet=\"`Runtime`\" pulumi-lang-go=\"`runtime`\" pulumi-lang-python=\"`runtime`\" pulumi-lang-yaml=\"`runtime`\" pulumi-lang-java=\"`runtime`\"\u003e`runtime`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`enableSsh`\" pulumi-lang-dotnet=\"`EnableSsh`\" pulumi-lang-go=\"`enableSsh`\" pulumi-lang-python=\"`enable_ssh`\" pulumi-lang-yaml=\"`enableSsh`\" pulumi-lang-java=\"`enableSsh`\"\u003e`enable_ssh`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`rdsInstances`\" pulumi-lang-dotnet=\"`RdsInstances`\" pulumi-lang-go=\"`rdsInstances`\" pulumi-lang-python=\"`rds_instances`\" pulumi-lang-yaml=\"`rdsInstances`\" pulumi-lang-java=\"`rdsInstances`\"\u003e`rds_instances`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`excludeAutoscalerNodes`\" pulumi-lang-dotnet=\"`ExcludeAutoscalerNodes`\" pulumi-lang-go=\"`excludeAutoscalerNodes`\" pulumi-lang-python=\"`exclude_autoscaler_nodes`\" pulumi-lang-yaml=\"`excludeAutoscalerNodes`\" pulumi-lang-java=\"`excludeAutoscalerNodes`\"\u003e`exclude_autoscaler_nodes`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerNumber`\" pulumi-lang-dotnet=\"`WorkerNumber`\" pulumi-lang-go=\"`workerNumber`\" pulumi-lang-python=\"`worker_number`\" pulumi-lang-yaml=\"`workerNumber`\" pulumi-lang-java=\"`workerNumber`\"\u003e`worker_number`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceTypes`\" pulumi-lang-dotnet=\"`WorkerInstanceTypes`\" pulumi-lang-go=\"`workerInstanceTypes`\" pulumi-lang-python=\"`worker_instance_types`\" pulumi-lang-yaml=\"`workerInstanceTypes`\" pulumi-lang-java=\"`workerInstanceTypes`\"\u003e`worker_instance_types`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`keyName`\" pulumi-lang-dotnet=\"`KeyName`\" pulumi-lang-go=\"`keyName`\" pulumi-lang-python=\"`key_name`\" pulumi-lang-yaml=\"`keyName`\" pulumi-lang-java=\"`keyName`\"\u003e`key_name`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptedPassword`\" pulumi-lang-dotnet=\"`KmsEncryptedPassword`\" pulumi-lang-go=\"`kmsEncryptedPassword`\" pulumi-lang-python=\"`kms_encrypted_password`\" pulumi-lang-yaml=\"`kmsEncryptedPassword`\" pulumi-lang-java=\"`kmsEncryptedPassword`\"\u003e`kms_encrypted_password`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kmsEncryptionContext`\" pulumi-lang-dotnet=\"`KmsEncryptionContext`\" pulumi-lang-go=\"`kmsEncryptionContext`\" pulumi-lang-python=\"`kms_encryption_context`\" pulumi-lang-yaml=\"`kmsEncryptionContext`\" pulumi-lang-java=\"`kmsEncryptionContext`\"\u003e`kms_encryption_context`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerInstanceChargeType`\" pulumi-lang-dotnet=\"`WorkerInstanceChargeType`\" pulumi-lang-go=\"`workerInstanceChargeType`\" pulumi-lang-python=\"`worker_instance_charge_type`\" pulumi-lang-yaml=\"`workerInstanceChargeType`\" pulumi-lang-java=\"`workerInstanceChargeType`\"\u003e`worker_instance_charge_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriod`\" pulumi-lang-dotnet=\"`WorkerPeriod`\" pulumi-lang-go=\"`workerPeriod`\" pulumi-lang-python=\"`worker_period`\" pulumi-lang-yaml=\"`workerPeriod`\" pulumi-lang-java=\"`workerPeriod`\"\u003e`worker_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerPeriodUnit`\" pulumi-lang-dotnet=\"`WorkerPeriodUnit`\" pulumi-lang-go=\"`workerPeriodUnit`\" pulumi-lang-python=\"`worker_period_unit`\" pulumi-lang-yaml=\"`workerPeriodUnit`\" pulumi-lang-java=\"`workerPeriodUnit`\"\u003e`worker_period_unit`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenew`\" pulumi-lang-dotnet=\"`WorkerAutoRenew`\" pulumi-lang-go=\"`workerAutoRenew`\" pulumi-lang-python=\"`worker_auto_renew`\" pulumi-lang-yaml=\"`workerAutoRenew`\" pulumi-lang-java=\"`workerAutoRenew`\"\u003e`worker_auto_renew`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerAutoRenewPeriod`\" pulumi-lang-dotnet=\"`WorkerAutoRenewPeriod`\" pulumi-lang-go=\"`workerAutoRenewPeriod`\" pulumi-lang-python=\"`worker_auto_renew_period`\" pulumi-lang-yaml=\"`workerAutoRenewPeriod`\" pulumi-lang-java=\"`workerAutoRenewPeriod`\"\u003e`worker_auto_renew_period`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskCategory`\" pulumi-lang-dotnet=\"`WorkerDiskCategory`\" pulumi-lang-go=\"`workerDiskCategory`\" pulumi-lang-python=\"`worker_disk_category`\" pulumi-lang-yaml=\"`workerDiskCategory`\" pulumi-lang-java=\"`workerDiskCategory`\"\u003e`worker_disk_category`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSize`\" pulumi-lang-dotnet=\"`WorkerDiskSize`\" pulumi-lang-go=\"`workerDiskSize`\" pulumi-lang-python=\"`worker_disk_size`\" pulumi-lang-yaml=\"`workerDiskSize`\" pulumi-lang-java=\"`workerDiskSize`\"\u003e`worker_disk_size`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDataDisks`\" pulumi-lang-dotnet=\"`WorkerDataDisks`\" pulumi-lang-go=\"`workerDataDisks`\" pulumi-lang-python=\"`worker_data_disks`\" pulumi-lang-yaml=\"`workerDataDisks`\" pulumi-lang-java=\"`workerDataDisks`\"\u003e`worker_data_disks`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodeNameMode`\" pulumi-lang-dotnet=\"`NodeNameMode`\" pulumi-lang-go=\"`nodeNameMode`\" pulumi-lang-python=\"`node_name_mode`\" pulumi-lang-yaml=\"`nodeNameMode`\" pulumi-lang-java=\"`nodeNameMode`\"\u003e`node_name_mode`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`nodePortRange`\" pulumi-lang-dotnet=\"`NodePortRange`\" pulumi-lang-go=\"`nodePortRange`\" pulumi-lang-python=\"`node_port_range`\" pulumi-lang-yaml=\"`nodePortRange`\" pulumi-lang-java=\"`nodePortRange`\"\u003e`node_port_range`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`osType`\" pulumi-lang-dotnet=\"`OsType`\" pulumi-lang-go=\"`osType`\" pulumi-lang-python=\"`os_type`\" pulumi-lang-yaml=\"`osType`\" pulumi-lang-java=\"`osType`\"\u003e`os_type`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`imageId`\" pulumi-lang-dotnet=\"`ImageId`\" pulumi-lang-go=\"`imageId`\" pulumi-lang-python=\"`image_id`\" pulumi-lang-yaml=\"`imageId`\" pulumi-lang-java=\"`imageId`\"\u003e`image_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`cpuPolicy`\" pulumi-lang-dotnet=\"`CpuPolicy`\" pulumi-lang-go=\"`cpuPolicy`\" pulumi-lang-python=\"`cpu_policy`\" pulumi-lang-yaml=\"`cpuPolicy`\" pulumi-lang-java=\"`cpuPolicy`\"\u003e`cpu_policy`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`userData`\" pulumi-lang-dotnet=\"`UserData`\" pulumi-lang-go=\"`userData`\" pulumi-lang-python=\"`user_data`\" pulumi-lang-yaml=\"`userData`\" pulumi-lang-java=\"`userData`\"\u003e`user_data`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`taints`\" pulumi-lang-dotnet=\"`Taints`\" pulumi-lang-go=\"`taints`\" pulumi-lang-python=\"`taints`\" pulumi-lang-yaml=\"`taints`\" pulumi-lang-java=\"`taints`\"\u003e`taints`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskPerformanceLevel`\" pulumi-lang-dotnet=\"`WorkerDiskPerformanceLevel`\" pulumi-lang-go=\"`workerDiskPerformanceLevel`\" pulumi-lang-python=\"`worker_disk_performance_level`\" pulumi-lang-yaml=\"`workerDiskPerformanceLevel`\" pulumi-lang-java=\"`workerDiskPerformanceLevel`\"\u003e`worker_disk_performance_level`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-dotnet=\"`WorkerDiskSnapshotPolicyId`\" pulumi-lang-go=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-python=\"`worker_disk_snapshot_policy_id`\" pulumi-lang-yaml=\"`workerDiskSnapshotPolicyId`\" pulumi-lang-java=\"`workerDiskSnapshotPolicyId`\"\u003e`worker_disk_snapshot_policy_id`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`installCloudMonitor`\" pulumi-lang-dotnet=\"`InstallCloudMonitor`\" pulumi-lang-go=\"`installCloudMonitor`\" pulumi-lang-python=\"`install_cloud_monitor`\" pulumi-lang-yaml=\"`installCloudMonitor`\" pulumi-lang-java=\"`installCloudMonitor`\"\u003e`install_cloud_monitor`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`kubeConfig`\" pulumi-lang-dotnet=\"`KubeConfig`\" pulumi-lang-go=\"`kubeConfig`\" pulumi-lang-python=\"`kube_config`\" pulumi-lang-yaml=\"`kubeConfig`\" pulumi-lang-java=\"`kubeConfig`\"\u003e`kube_config`\u003c/span\u003e,\u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e are removed.\nPlease use resource **\u003cspan pulumi-lang-nodejs=\"`alicloud.cs.NodePool`\" pulumi-lang-dotnet=\"`alicloud.cs.NodePool`\" pulumi-lang-go=\"`cs.NodePool`\" pulumi-lang-python=\"`cs.NodePool`\" pulumi-lang-yaml=\"`alicloud.cs.NodePool`\" pulumi-lang-java=\"`alicloud.cs.NodePool`\"\u003e`alicloud.cs.NodePool`\u003c/span\u003e** to manage your cluster worker nodes.\n\n## Example Usage\n\nACK cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\n// Existing vpc id used to create several vswitches and other resources.\nconst vpcId = config.get(\"vpcId\") || \"\";\n// The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nconst vpcCidr = config.get(\"vpcCidr\") || \"10.0.0.0/8\";\n// List of existing vswitch id.\nconst vswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nconst vswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"vswitchCidrs\") || [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n];\n// Proxy mode is option of kube-proxy.\nconst proxyMode = config.get(\"proxyMode\") || \"ipvs\";\n// The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\n// List of existing vswitch ids for terway.\nconst terwayVswitchIds = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchIds\") || [];\n// List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nconst terwayVswitchCidrs = config.getObject\u003cArray\u003cstring\u003e\u003e(\"terwayVswitchCidrs\") || [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n];\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\n// If there is not specifying vpc_id, the module will launch a new vpc\nconst vpc: alicloud.vpc.Network[] = [];\nfor (const range = {value: 0}; range.value \u003c (vpcId == \"\" ? 1 : 0); range.value++) {\n vpc.push(new alicloud.vpc.Network(`vpc-${range.value}`, {cidrBlock: vpcCidr}));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst vswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (vswitchIds.length \u003e 0 ? 0 : vswitchCidrs.length); range.value++) {\n vswitches.push(new alicloud.vpc.Switch(`vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: vswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\n// According to the vswitch cidr blocks to launch several vswitches\nconst terwayVswitches: alicloud.vpc.Switch[] = [];\nfor (const range = {value: 0}; range.value \u003c (terwayVswitchIds.length \u003e 0 ? 0 : terwayVswitchCidrs.length); range.value++) {\n terwayVswitches.push(new alicloud.vpc.Switch(`terway_vswitches-${range.value}`, {\n vpcId: vpcId == \"\" ? std.joinOutput({\n separator: \"\",\n input: vpc.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e invoke.result) : vpcId,\n cidrBlock: terwayVswitchCidrs[range.value],\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones[range.value].zoneId),\n }));\n}\nconst k8s = new alicloud.cs.ManagedKubernetes(\"k8s\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n vswitchIds: vswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: vswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : vswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: vswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n podVswitchIds: terwayVswitchIds.length \u003e 0 ? std.join({\n separator: \",\",\n input: terwayVswitchIds,\n }).then(invoke =\u003e std.split({\n separator: \",\",\n text: invoke.result,\n })).then(invoke =\u003e invoke.result) : terwayVswitchCidrs.length \u003c 1 ? [] : std.joinOutput({\n separator: \",\",\n input: terwayVswitches.map(__item =\u003e __item.id),\n }).apply(invoke =\u003e std.splitOutput({\n separator: \",\",\n text: invoke.result,\n })).apply(invoke =\u003e invoke.result),\n newNatGateway: true,\n proxyMode: proxyMode,\n serviceCidr: serviceCidr,\n skipSetCertificateAuthority: true,\n addons: [\n {\n name: \"terway-eniip\",\n },\n {\n name: \"csi-plugin\",\n },\n {\n name: \"csi-provisioner\",\n },\n {\n name: \"logtail-ds\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n },\n {\n name: \"nginx-ingress-controller\",\n config: JSON.stringify({\n IngressSlbNetworkType: \"internet\",\n }),\n },\n {\n name: \"arms-prometheus\",\n },\n {\n name: \"ack-node-problem-detector\",\n config: JSON.stringify({}),\n },\n ],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\n# Existing vpc id used to create several vswitches and other resources.\nvpc_id = config.get(\"vpcId\")\nif vpc_id is None:\n vpc_id = \"\"\n# The cidr block used to launch a new vpc when 'vpc_id' is not specified.\nvpc_cidr = config.get(\"vpcCidr\")\nif vpc_cidr is None:\n vpc_cidr = \"10.0.0.0/8\"\n# List of existing vswitch id.\nvswitch_ids = config.get_object(\"vswitchIds\")\nif vswitch_ids is None:\n vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\nvswitch_cidrs = config.get_object(\"vswitchCidrs\")\nif vswitch_cidrs is None:\n vswitch_cidrs = [\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n ]\n# Proxy mode is option of kube-proxy.\nproxy_mode = config.get(\"proxyMode\")\nif proxy_mode is None:\n proxy_mode = \"ipvs\"\n# The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\n# List of existing vswitch ids for terway.\nterway_vswitch_ids = config.get_object(\"terwayVswitchIds\")\nif terway_vswitch_ids is None:\n terway_vswitch_ids = []\n# List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\nterway_vswitch_cidrs = config.get_object(\"terwayVswitchCidrs\")\nif terway_vswitch_cidrs is None:\n terway_vswitch_cidrs = [\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n ]\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\n# If there is not specifying vpc_id, the module will launch a new vpc\nvpc = []\nfor range in [{\"value\": i} for i in range(0, 1 if vpc_id == else 0)]:\n vpc.append(alicloud.vpc.Network(f\"vpc-{range['value']}\", cidr_block=vpc_cidr))\n# According to the vswitch cidr blocks to launch several vswitches\nvswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(vswitch_ids) \u003e 0 else len(vswitch_cidrs))]:\n vswitches.append(alicloud.vpc.Switch(f\"vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\n# According to the vswitch cidr blocks to launch several vswitches\nterway_vswitches = []\nfor range in [{\"value\": i} for i in range(0, 0 if len(terway_vswitch_ids) \u003e 0 else len(terway_vswitch_cidrs))]:\n terway_vswitches.append(alicloud.vpc.Switch(f\"terway_vswitches-{range['value']}\",\n vpc_id=std.join_output(separator=\"\",\n input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == \"\" else vpc_id,\n cidr_block=terway_vswitch_cidrs[range[\"value\"]],\n zone_id=enhanced.zones[range[\"value\"]].zone_id))\nk8s = alicloud.cs.ManagedKubernetes(\"k8s\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=vswitch_ids).result).result if len(vswitch_ids) \u003e 0 else [] if len(vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n pod_vswitch_ids=std.split(separator=\",\",\n text=std.join(separator=\",\",\n input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) \u003e 0 else [] if len(terway_vswitch_cidrs) \u003c 1 else std.join_output(separator=\",\",\n input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=\",\",\n text=invoke.result)).apply(lambda invoke: invoke.result),\n new_nat_gateway=True,\n proxy_mode=proxy_mode,\n service_cidr=service_cidr,\n skip_set_certificate_authority=True,\n addons=[\n {\n \"name\": \"terway-eniip\",\n },\n {\n \"name\": \"csi-plugin\",\n },\n {\n \"name\": \"csi-provisioner\",\n },\n {\n \"name\": \"logtail-ds\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n },\n {\n \"name\": \"nginx-ingress-controller\",\n \"config\": json.dumps({\n \"IngressSlbNetworkType\": \"internet\",\n }),\n },\n {\n \"name\": \"arms-prometheus\",\n },\n {\n \"name\": \"ack-node-problem-detector\",\n \"config\": json.dumps({}),\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n // Existing vpc id used to create several vswitches and other resources.\n var vpcId = config.Get(\"vpcId\") ?? \"\";\n // The cidr block used to launch a new vpc when 'vpc_id' is not specified.\n var vpcCidr = config.Get(\"vpcCidr\") ?? \"10.0.0.0/8\";\n // List of existing vswitch id.\n var vswitchIds = config.GetObject\u003cstring[]\u003e(\"vswitchIds\") ?? new[] {};\n // List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.\n var vswitchCidrs = config.GetObject\u003cstring[]\u003e(\"vswitchCidrs\") ?? new[]\n {\n \"10.1.0.0/16\",\n \"10.2.0.0/16\",\n };\n // Proxy mode is option of kube-proxy.\n var proxyMode = config.Get(\"proxyMode\") ?? \"ipvs\";\n // The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n // List of existing vswitch ids for terway.\n var terwayVswitchIds = config.GetObject\u003cstring[]\u003e(\"terwayVswitchIds\") ?? new[] {};\n // List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.\n var terwayVswitchCidrs = config.GetObject\u003cstring[]\u003e(\"terwayVswitchCidrs\") ?? new[]\n {\n \"10.4.0.0/16\",\n \"10.5.0.0/16\",\n };\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n // If there is not specifying vpc_id, the module will launch a new vpc\n var vpc = new List\u003cAliCloud.Vpc.Network\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (vpcId == \"\" ? 1 : 0); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n vpc.Add(new AliCloud.Vpc.Network($\"vpc-{range.Value}\", new()\n {\n CidrBlock = vpcCidr,\n }));\n }\n // According to the vswitch cidr blocks to launch several vswitches\n var vswitches = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (vswitchIds.Length \u003e 0 ? 0 : vswitchCidrs.Length); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n vswitches.Add(new AliCloud.Vpc.Switch($\"vswitches-{range.Value}\", new()\n {\n VpcId = vpcId == \"\" ? Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = vpc.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e invoke.Result) : vpcId,\n CidrBlock = vswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n // According to the vswitch cidr blocks to launch several vswitches\n var terwayVswitches = new List\u003cAliCloud.Vpc.Switch\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c (terwayVswitchIds.Length \u003e 0 ? 0 : terwayVswitchCidrs.Length); rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n terwayVswitches.Add(new AliCloud.Vpc.Switch($\"terway_vswitches-{range.Value}\", new()\n {\n VpcId = vpcId == \"\" ? Std.Join.Invoke(new()\n {\n Separator = \"\",\n Input = vpc.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e invoke.Result) : vpcId,\n CidrBlock = terwayVswitchCidrs[range.Value],\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones)[range.Value].ZoneId,\n }));\n }\n var k8s = new AliCloud.CS.ManagedKubernetes(\"k8s\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n VswitchIds = vswitchIds.Length \u003e 0 ? Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = vswitchIds,\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result) : vswitchCidrs.Length \u003c 1 ? new[] {} : Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = vswitches.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n PodVswitchIds = terwayVswitchIds.Length \u003e 0 ? Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = terwayVswitchIds,\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result) : terwayVswitchCidrs.Length \u003c 1 ? new[] {} : Std.Join.Invoke(new()\n {\n Separator = \",\",\n Input = terwayVswitches.Select(__item =\u003e __item.Id).ToList(),\n }).Apply(invoke =\u003e Std.Split.Invoke(new()\n {\n Separator = \",\",\n Text = invoke.Result,\n })).Apply(invoke =\u003e invoke.Result),\n NewNatGateway = true,\n ProxyMode = proxyMode,\n ServiceCidr = serviceCidr,\n SkipSetCertificateAuthority = true,\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-eniip\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-plugin\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-provisioner\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"logtail-ds\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"nginx-ingress-controller\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressSlbNetworkType\"] = \"internet\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"arms-prometheus\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-node-problem-detector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n }),\n },\n },\n });\n\n});\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.JoinArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport com.pulumi.std.inputs.SplitArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var vpcId = config.get(\"vpcId\").orElse(\"\");\n final var vpcCidr = config.get(\"vpcCidr\").orElse(\"10.0.0.0/8\");\n final var vswitchIds = config.get(\"vswitchIds\").orElse(List.of());\n final var vswitchCidrs = config.get(\"vswitchCidrs\").orElse(List.of( \n \"10.1.0.0/16\",\n \"10.2.0.0/16\"));\n final var proxyMode = config.get(\"proxyMode\").orElse(\"ipvs\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var terwayVswitchIds = config.get(\"terwayVswitchIds\").orElse(List.of());\n final var terwayVswitchCidrs = config.get(\"terwayVswitchCidrs\").orElse(List.of( \n \"10.4.0.0/16\",\n \"10.5.0.0/16\"));\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n // If there is not specifying vpc_id, the module will launch a new vpc\n for (var i = 0; i \u003c (vpcId == \"\" ? 1 : 0); i++) {\n new Network(\"vpc-\" + i, NetworkArgs.builder()\n .cidrBlock(vpcCidr)\n .build());\n\n \n}\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c (vswitchIds.length() \u003e 0 ? 0 : vswitchCidrs.length()); i++) {\n new Switch(\"vswitches-\" + i, SwitchArgs.builder()\n .vpcId(vpcId == \"\" ? StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input(vpc.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e _invoke.result()) : vpcId)\n .cidrBlock(vswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n // According to the vswitch cidr blocks to launch several vswitches\n for (var i = 0; i \u003c (terwayVswitchIds.length() \u003e 0 ? 0 : terwayVswitchCidrs.length()); i++) {\n new Switch(\"terwayVswitches-\" + i, SwitchArgs.builder()\n .vpcId(vpcId == \"\" ? StdFunctions.join(JoinArgs.builder()\n .separator(\"\")\n .input(vpc.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e _invoke.result()) : vpcId)\n .cidrBlock(terwayVswitchCidrs[range.value()])\n .zoneId(enhanced.zones()[range.value()].zoneId())\n .build());\n\n \n}\n var k8s = new ManagedKubernetes(\"k8s\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .vswitchIds(vswitchIds.length() \u003e 0 ? StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(vswitchIds)\n .build()).result())\n .build()).result() : vswitchCidrs.length() \u003c 1 ? : StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(vswitches.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .podVswitchIds(terwayVswitchIds.length() \u003e 0 ? StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(terwayVswitchIds)\n .build()).result())\n .build()).result() : terwayVswitchCidrs.length() \u003c 1 ? : StdFunctions.join(JoinArgs.builder()\n .separator(\",\")\n .input(terwayVswitches.stream().map(element -\u003e element.id()).collect(toList()))\n .build()).applyValue(_invoke -\u003e StdFunctions.split(SplitArgs.builder()\n .separator(\",\")\n .text(_invoke.result())\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .newNatGateway(true)\n .proxyMode(proxyMode)\n .serviceCidr(serviceCidr)\n .skipSetCertificateAuthority(true)\n .addons( \n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-eniip\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-plugin\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-provisioner\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"logtail-ds\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"nginx-ingress-controller\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressSlbNetworkType\", \"internet\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"arms-prometheus\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-node-problem-detector\")\n .config(serializeJson(\n jsonObject(\n\n )))\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nACK Cluster with Auto Mode\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"auto-mode\";\n// Proxy mode is option of kube-proxy.\nconst proxyMode = config.get(\"proxyMode\") || \"ipvs\";\n// The kubernetes service cidr block.\nconst serviceCidr = config.get(\"serviceCidr\") || \"192.168.0.0/16\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst auto_mode = new alicloud.cs.ManagedKubernetes(\"auto-mode\", {\n name: name,\n clusterSpec: \"ack.pro.small\",\n zoneIds: [enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId)],\n newNatGateway: true,\n isEnterpriseSecurityGroup: true,\n slbInternetEnabled: false,\n skipSetCertificateAuthority: true,\n proxyMode: proxyMode,\n serviceCidr: serviceCidr,\n ipStack: \"ipv4\",\n deletionProtection: true,\n autoMode: {\n enabled: true,\n },\n maintenanceWindow: {\n duration: \"3h\",\n weeklyPeriod: \"Monday\",\n enable: true,\n maintenanceTime: \"2025-07-07T00:00:00.000+08:00\",\n },\n operationPolicy: {\n clusterAutoUpgrade: {\n channel: \"stable\",\n enabled: true,\n },\n },\n controlPlaneLogComponents: [\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n ],\n controlPlaneLogTtl: \"30\",\n auditLogConfig: {\n enabled: true,\n },\n addons: [\n {\n name: \"metrics-server\",\n },\n {\n name: \"managed-coredns\",\n },\n {\n name: \"managed-security-inspector\",\n },\n {\n name: \"ack-cost-exporter\",\n },\n {\n name: \"terway-controlplane\",\n config: JSON.stringify({\n ENITrunking: \"true\",\n }),\n },\n {\n name: \"terway-eniip\",\n config: JSON.stringify({\n NetworkPolicy: \"false\",\n ENITrunking: \"true\",\n IPVlan: \"false\",\n }),\n },\n {\n name: \"csi-plugin\",\n },\n {\n name: \"managed-csiprovisioner\",\n },\n {\n name: \"storage-operator\",\n config: JSON.stringify({\n CnfsOssEnable: \"false\",\n CnfsNasEnable: \"false\",\n }),\n },\n {\n name: \"loongcollector\",\n config: JSON.stringify({\n IngressDashboardEnabled: \"true\",\n }),\n },\n {\n name: \"ack-node-problem-detector\",\n config: JSON.stringify({\n sls_project_name: \"\",\n }),\n },\n {\n name: \"nginx-ingress-controller\",\n disabled: true,\n },\n {\n name: \"alb-ingress-controller\",\n config: JSON.stringify({\n albIngress: {\n CreateDefaultALBConfig: false,\n },\n }),\n },\n {\n name: \"arms-prometheus\",\n config: JSON.stringify({\n prometheusMode: \"default\",\n }),\n },\n {\n name: \"alicloud-monitor-controller\",\n },\n {\n name: \"managed-aliyun-acr-credential-helper\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"auto-mode\"\n# Proxy mode is option of kube-proxy.\nproxy_mode = config.get(\"proxyMode\")\nif proxy_mode is None:\n proxy_mode = \"ipvs\"\n# The kubernetes service cidr block.\nservice_cidr = config.get(\"serviceCidr\")\nif service_cidr is None:\n service_cidr = \"192.168.0.0/16\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\nauto_mode = alicloud.cs.ManagedKubernetes(\"auto-mode\",\n name=name,\n cluster_spec=\"ack.pro.small\",\n zone_ids=[enhanced.zones[0].zone_id],\n new_nat_gateway=True,\n is_enterprise_security_group=True,\n slb_internet_enabled=False,\n skip_set_certificate_authority=True,\n proxy_mode=proxy_mode,\n service_cidr=service_cidr,\n ip_stack=\"ipv4\",\n deletion_protection=True,\n auto_mode={\n \"enabled\": True,\n },\n maintenance_window={\n \"duration\": \"3h\",\n \"weekly_period\": \"Monday\",\n \"enable\": True,\n \"maintenance_time\": \"2025-07-07T00:00:00.000+08:00\",\n },\n operation_policy={\n \"cluster_auto_upgrade\": {\n \"channel\": \"stable\",\n \"enabled\": True,\n },\n },\n control_plane_log_components=[\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n ],\n control_plane_log_ttl=\"30\",\n audit_log_config={\n \"enabled\": True,\n },\n addons=[\n {\n \"name\": \"metrics-server\",\n },\n {\n \"name\": \"managed-coredns\",\n },\n {\n \"name\": \"managed-security-inspector\",\n },\n {\n \"name\": \"ack-cost-exporter\",\n },\n {\n \"name\": \"terway-controlplane\",\n \"config\": json.dumps({\n \"ENITrunking\": \"true\",\n }),\n },\n {\n \"name\": \"terway-eniip\",\n \"config\": json.dumps({\n \"NetworkPolicy\": \"false\",\n \"ENITrunking\": \"true\",\n \"IPVlan\": \"false\",\n }),\n },\n {\n \"name\": \"csi-plugin\",\n },\n {\n \"name\": \"managed-csiprovisioner\",\n },\n {\n \"name\": \"storage-operator\",\n \"config\": json.dumps({\n \"CnfsOssEnable\": \"false\",\n \"CnfsNasEnable\": \"false\",\n }),\n },\n {\n \"name\": \"loongcollector\",\n \"config\": json.dumps({\n \"IngressDashboardEnabled\": \"true\",\n }),\n },\n {\n \"name\": \"ack-node-problem-detector\",\n \"config\": json.dumps({\n \"sls_project_name\": \"\",\n }),\n },\n {\n \"name\": \"nginx-ingress-controller\",\n \"disabled\": True,\n },\n {\n \"name\": \"alb-ingress-controller\",\n \"config\": json.dumps({\n \"albIngress\": {\n \"CreateDefaultALBConfig\": False,\n },\n }),\n },\n {\n \"name\": \"arms-prometheus\",\n \"config\": json.dumps({\n \"prometheusMode\": \"default\",\n }),\n },\n {\n \"name\": \"alicloud-monitor-controller\",\n },\n {\n \"name\": \"managed-aliyun-acr-credential-helper\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"auto-mode\";\n // Proxy mode is option of kube-proxy.\n var proxyMode = config.Get(\"proxyMode\") ?? \"ipvs\";\n // The kubernetes service cidr block.\n var serviceCidr = config.Get(\"serviceCidr\") ?? \"192.168.0.0/16\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var auto_mode = new AliCloud.CS.ManagedKubernetes(\"auto-mode\", new()\n {\n Name = name,\n ClusterSpec = \"ack.pro.small\",\n ZoneIds = new[]\n {\n enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n },\n NewNatGateway = true,\n IsEnterpriseSecurityGroup = true,\n SlbInternetEnabled = false,\n SkipSetCertificateAuthority = true,\n ProxyMode = proxyMode,\n ServiceCidr = serviceCidr,\n IpStack = \"ipv4\",\n DeletionProtection = true,\n AutoMode = new AliCloud.CS.Inputs.ManagedKubernetesAutoModeArgs\n {\n Enabled = true,\n },\n MaintenanceWindow = new AliCloud.CS.Inputs.ManagedKubernetesMaintenanceWindowArgs\n {\n Duration = \"3h\",\n WeeklyPeriod = \"Monday\",\n Enable = true,\n MaintenanceTime = \"2025-07-07T00:00:00.000+08:00\",\n },\n OperationPolicy = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyArgs\n {\n ClusterAutoUpgrade = new AliCloud.CS.Inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs\n {\n Channel = \"stable\",\n Enabled = true,\n },\n },\n ControlPlaneLogComponents = new[]\n {\n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\",\n },\n ControlPlaneLogTtl = \"30\",\n AuditLogConfig = new AliCloud.CS.Inputs.ManagedKubernetesAuditLogConfigArgs\n {\n Enabled = true,\n },\n Addons = new[]\n {\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"metrics-server\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-coredns\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-security-inspector\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-cost-exporter\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-controlplane\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"ENITrunking\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"terway-eniip\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"NetworkPolicy\"] = \"false\",\n [\"ENITrunking\"] = \"true\",\n [\"IPVlan\"] = \"false\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"csi-plugin\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-csiprovisioner\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"storage-operator\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"CnfsOssEnable\"] = \"false\",\n [\"CnfsNasEnable\"] = \"false\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"loongcollector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"IngressDashboardEnabled\"] = \"true\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"ack-node-problem-detector\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"sls_project_name\"] = \"\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"nginx-ingress-controller\",\n Disabled = true,\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"alb-ingress-controller\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"albIngress\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"CreateDefaultALBConfig\"] = false,\n },\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"arms-prometheus\",\n Config = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"prometheusMode\"] = \"default\",\n }),\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"alicloud-monitor-controller\",\n },\n new AliCloud.CS.Inputs.ManagedKubernetesAddonArgs\n {\n Name = \"managed-aliyun-acr-credential-helper\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"auto-mode\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t// Proxy mode is option of kube-proxy.\n\t\tproxyMode := \"ipvs\"\n\t\tif param := cfg.Get(\"proxyMode\"); param != \"\" {\n\t\t\tproxyMode = param\n\t\t}\n\t\t// The kubernetes service cidr block.\n\t\tserviceCidr := \"192.168.0.0/16\"\n\t\tif param := cfg.Get(\"serviceCidr\"); param != \"\" {\n\t\t\tserviceCidr = param\n\t\t}\n\t\tenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"ENITrunking\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"NetworkPolicy\": \"false\",\n\t\t\t\"ENITrunking\": \"true\",\n\t\t\t\"IPVlan\": \"false\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\ttmpJSON2, err := json.Marshal(map[string]interface{}{\n\t\t\t\"CnfsOssEnable\": \"false\",\n\t\t\t\"CnfsNasEnable\": \"false\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson2 := string(tmpJSON2)\n\t\ttmpJSON3, err := json.Marshal(map[string]interface{}{\n\t\t\t\"IngressDashboardEnabled\": \"true\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson3 := string(tmpJSON3)\n\t\ttmpJSON4, err := json.Marshal(map[string]interface{}{\n\t\t\t\"sls_project_name\": \"\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson4 := string(tmpJSON4)\n\t\ttmpJSON5, err := json.Marshal(map[string]interface{}{\n\t\t\t\"albIngress\": map[string]interface{}{\n\t\t\t\t\"CreateDefaultALBConfig\": false,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson5 := string(tmpJSON5)\n\t\ttmpJSON6, err := json.Marshal(map[string]interface{}{\n\t\t\t\"prometheusMode\": \"default\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson6 := string(tmpJSON6)\n\t\t_, err = cs.NewManagedKubernetes(ctx, \"auto-mode\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(enhanced.Zones[0].ZoneId),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tIsEnterpriseSecurityGroup: pulumi.Bool(true),\n\t\t\tSlbInternetEnabled: pulumi.Bool(false),\n\t\t\tSkipSetCertificateAuthority: pulumi.Bool(true),\n\t\t\tProxyMode: pulumi.String(proxyMode),\n\t\t\tServiceCidr: pulumi.String(serviceCidr),\n\t\t\tIpStack: pulumi.String(\"ipv4\"),\n\t\t\tDeletionProtection: pulumi.Bool(true),\n\t\t\tAutoMode: \u0026cs.ManagedKubernetesAutoModeArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tMaintenanceWindow: \u0026cs.ManagedKubernetesMaintenanceWindowArgs{\n\t\t\t\tDuration: pulumi.String(\"3h\"),\n\t\t\t\tWeeklyPeriod: pulumi.String(\"Monday\"),\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tMaintenanceTime: pulumi.String(\"2025-07-07T00:00:00.000+08:00\"),\n\t\t\t},\n\t\t\tOperationPolicy: \u0026cs.ManagedKubernetesOperationPolicyArgs{\n\t\t\t\tClusterAutoUpgrade: \u0026cs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs{\n\t\t\t\t\tChannel: pulumi.String(\"stable\"),\n\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneLogComponents: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"apiserver\"),\n\t\t\t\tpulumi.String(\"kcm\"),\n\t\t\t\tpulumi.String(\"scheduler\"),\n\t\t\t\tpulumi.String(\"ccm\"),\n\t\t\t\tpulumi.String(\"controlplane-events\"),\n\t\t\t\tpulumi.String(\"alb\"),\n\t\t\t\tpulumi.String(\"ack-goatscaler\"),\n\t\t\t\tpulumi.String(\"coredns\"),\n\t\t\t\tpulumi.String(\"gatekeeper\"),\n\t\t\t},\n\t\t\tControlPlaneLogTtl: pulumi.String(\"30\"),\n\t\t\tAuditLogConfig: \u0026cs.ManagedKubernetesAuditLogConfigArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t},\n\t\t\tAddons: cs.ManagedKubernetesAddonArray{\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"metrics-server\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-coredns\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-security-inspector\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"ack-cost-exporter\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"terway-controlplane\"),\n\t\t\t\t\tConfig: pulumi.String(json0),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"terway-eniip\"),\n\t\t\t\t\tConfig: pulumi.String(json1),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"csi-plugin\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-csiprovisioner\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"storage-operator\"),\n\t\t\t\t\tConfig: pulumi.String(json2),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"loongcollector\"),\n\t\t\t\t\tConfig: pulumi.String(json3),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"ack-node-problem-detector\"),\n\t\t\t\t\tConfig: pulumi.String(json4),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"nginx-ingress-controller\"),\n\t\t\t\t\tDisabled: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"alb-ingress-controller\"),\n\t\t\t\t\tConfig: pulumi.String(json5),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"arms-prometheus\"),\n\t\t\t\t\tConfig: pulumi.String(json6),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"alicloud-monitor-controller\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.ManagedKubernetesAddonArgs{\n\t\t\t\t\tName: pulumi.String(\"managed-aliyun-acr-credential-helper\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAutoModeArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesMaintenanceWindowArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAuditLogConfigArgs;\nimport com.pulumi.alicloud.cs.inputs.ManagedKubernetesAddonArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"auto-mode\");\n final var proxyMode = config.get(\"proxyMode\").orElse(\"ipvs\");\n final var serviceCidr = config.get(\"serviceCidr\").orElse(\"192.168.0.0/16\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n var auto_mode = new ManagedKubernetes(\"auto-mode\", ManagedKubernetesArgs.builder()\n .name(name)\n .clusterSpec(\"ack.pro.small\")\n .zoneIds(enhanced.zones()[0].zoneId())\n .newNatGateway(true)\n .isEnterpriseSecurityGroup(true)\n .slbInternetEnabled(false)\n .skipSetCertificateAuthority(true)\n .proxyMode(proxyMode)\n .serviceCidr(serviceCidr)\n .ipStack(\"ipv4\")\n .deletionProtection(true)\n .autoMode(ManagedKubernetesAutoModeArgs.builder()\n .enabled(true)\n .build())\n .maintenanceWindow(ManagedKubernetesMaintenanceWindowArgs.builder()\n .duration(\"3h\")\n .weeklyPeriod(\"Monday\")\n .enable(true)\n .maintenanceTime(\"2025-07-07T00:00:00.000+08:00\")\n .build())\n .operationPolicy(ManagedKubernetesOperationPolicyArgs.builder()\n .clusterAutoUpgrade(ManagedKubernetesOperationPolicyClusterAutoUpgradeArgs.builder()\n .channel(\"stable\")\n .enabled(true)\n .build())\n .build())\n .controlPlaneLogComponents( \n \"apiserver\",\n \"kcm\",\n \"scheduler\",\n \"ccm\",\n \"controlplane-events\",\n \"alb\",\n \"ack-goatscaler\",\n \"coredns\",\n \"gatekeeper\")\n .controlPlaneLogTtl(\"30\")\n .auditLogConfig(ManagedKubernetesAuditLogConfigArgs.builder()\n .enabled(true)\n .build())\n .addons( \n ManagedKubernetesAddonArgs.builder()\n .name(\"metrics-server\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-coredns\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-security-inspector\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-cost-exporter\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-controlplane\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"ENITrunking\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"terway-eniip\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"NetworkPolicy\", \"false\"),\n jsonProperty(\"ENITrunking\", \"true\"),\n jsonProperty(\"IPVlan\", \"false\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"csi-plugin\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-csiprovisioner\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"storage-operator\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"CnfsOssEnable\", \"false\"),\n jsonProperty(\"CnfsNasEnable\", \"false\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"loongcollector\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"IngressDashboardEnabled\", \"true\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"ack-node-problem-detector\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"sls_project_name\", \"\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"nginx-ingress-controller\")\n .disabled(true)\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"alb-ingress-controller\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"albIngress\", jsonObject(\n jsonProperty(\"CreateDefaultALBConfig\", false)\n ))\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"arms-prometheus\")\n .config(serializeJson(\n jsonObject(\n jsonProperty(\"prometheusMode\", \"default\")\n )))\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"alicloud-monitor-controller\")\n .build(),\n ManagedKubernetesAddonArgs.builder()\n .name(\"managed-aliyun-acr-credential-helper\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: auto-mode\n proxyMode:\n type: string\n default: ipvs\n serviceCidr:\n type: string\n default: 192.168.0.0/16\nresources:\n auto-mode:\n type: alicloud:cs:ManagedKubernetes\n properties:\n name: ${name}\n clusterSpec: ack.pro.small\n zoneIds:\n - ${enhanced.zones[0].zoneId}\n newNatGateway: true\n isEnterpriseSecurityGroup: true\n slbInternetEnabled: false\n skipSetCertificateAuthority: true\n proxyMode: ${proxyMode}\n serviceCidr: ${serviceCidr}\n ipStack: ipv4\n deletionProtection: true\n autoMode:\n enabled: true\n maintenanceWindow:\n duration: 3h\n weeklyPeriod: Monday\n enable: true\n maintenanceTime: 2025-07-07T00:00:00.000+08:00\n operationPolicy:\n clusterAutoUpgrade:\n channel: stable\n enabled: true\n controlPlaneLogComponents:\n - apiserver\n - kcm\n - scheduler\n - ccm\n - controlplane-events\n - alb\n - ack-goatscaler\n - coredns\n - gatekeeper\n controlPlaneLogTtl: '30'\n auditLogConfig:\n enabled: true\n addons:\n - name: metrics-server\n - name: managed-coredns\n - name: managed-security-inspector\n - name: ack-cost-exporter\n - name: terway-controlplane\n config:\n fn::toJSON:\n ENITrunking: 'true'\n - name: terway-eniip\n config:\n fn::toJSON:\n NetworkPolicy: 'false'\n ENITrunking: 'true'\n IPVlan: 'false'\n - name: csi-plugin\n - name: managed-csiprovisioner\n - name: storage-operator\n config:\n fn::toJSON:\n CnfsOssEnable: 'false'\n CnfsNasEnable: 'false'\n - name: loongcollector\n config:\n fn::toJSON:\n IngressDashboardEnabled: 'true'\n - name: ack-node-problem-detector\n config:\n fn::toJSON:\n sls_project_name: \"\"\n - name: nginx-ingress-controller\n disabled: true\n - name: alb-ingress-controller\n config:\n fn::toJSON:\n albIngress:\n CreateDefaultALBConfig: false\n - name: arms-prometheus\n config:\n fn::toJSON:\n prometheusMode: default\n - name: alicloud-monitor-controller\n - name: managed-aliyun-acr-credential-helper\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nKubernetes managed cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/managedKubernetes:ManagedKubernetes main cluster_id\n```\n\n",
"properties": {
"addons": {
"type": "array",
@@ -132563,6 +135146,7 @@
"connections",
"controlPlaneLogProject",
"controlPlaneLogTtl",
+ "deletionProtection",
"ipStack",
"isEnterpriseSecurityGroup",
"loadBalancerSpec",
@@ -133069,8 +135653,12 @@
}
},
"alicloud:cs/nodePool:NodePool": {
- "description": "## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst _default = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst enhanced = alicloud.vpc.getEnhancedNatAvailableZones({});\nconst cloudEfficiency = enhanced.then(enhanced =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: enhanced.zones?.[0]?.zoneId,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n systemDiskCategory: \"cloud_efficiency\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: enhanced.then(enhanced =\u003e enhanced.zones?.[0]?.zoneId),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: `terraform-example-${_default.result}`,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n enableRrsa: true,\n});\nconst defaultKeyPair = new alicloud.ecs.KeyPair(\"default\", {keyPairName: `terraform-example-${_default.result}`});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n nodePoolName: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n labels: [\n {\n key: \"test1\",\n value: \"nodepool\",\n },\n {\n key: \"test2\",\n value: \"nodepool\",\n },\n ],\n taints: [\n {\n key: \"tf\",\n effect: \"NoSchedule\",\n value: \"example\",\n },\n {\n key: \"tf2\",\n effect: \"NoSchedule\",\n value: \"example2\",\n },\n ],\n});\n//The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\nconst desiredSize = new alicloud.cs.NodePool(\"desired_size\", {\n nodePoolName: \"desired_size\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"0\",\n});\n// Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\nconst maintenance = new alicloud.cs.NodePool(\"maintenance\", {\n nodePoolName: \"maintenance\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"1\",\n management: {\n enable: true,\n autoRepair: true,\n autoRepairPolicy: {\n restartNode: true,\n },\n autoUpgrade: true,\n autoUpgradePolicy: {\n autoUpgradeKubelet: true,\n },\n autoVulFix: true,\n autoVulFixPolicy: {\n vulLevel: \"asap\",\n restartNode: true,\n },\n maxUnavailable: 1,\n },\n});\n//Create a node pool with spot instance.\nconst spotInstance = new alicloud.cs.NodePool(\"spot_instance\", {\n nodePoolName: \"spot_instance\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [\n cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id),\n cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[1]?.id),\n ],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n desiredSize: \"1\",\n spotStrategy: \"SpotWithPriceLimit\",\n spotPriceLimits: [\n {\n instanceType: cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id),\n priceLimit: \"0.70\",\n },\n {\n instanceType: cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[1]?.id),\n priceLimit: \"0.72\",\n },\n ],\n});\n//Use Spot instances to create a node pool with auto-scaling enabled\nconst spotAutoScaling = new alicloud.cs.NodePool(\"spot_auto_scaling\", {\n nodePoolName: \"spot_auto_scaling\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n scalingConfig: {\n minSize: 1,\n maxSize: 10,\n type: \"spot\",\n },\n spotStrategy: \"SpotWithPriceLimit\",\n spotPriceLimits: [{\n instanceType: cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id),\n priceLimit: \"0.70\",\n }],\n});\n//Create a `PrePaid` node pool.\nconst prepaidNode = new alicloud.cs.NodePool(\"prepaid_node\", {\n nodePoolName: \"prepaid_node\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n keyName: defaultKeyPair.keyPairName,\n instanceChargeType: \"PrePaid\",\n period: 1,\n periodUnit: \"Month\",\n autoRenew: true,\n autoRenewPeriod: 1,\n installCloudMonitor: true,\n});\n//#Create a node pool with customized kubelet parameters\nconst customizedKubelet = new alicloud.cs.NodePool(\"customized_kubelet\", {\n nodePoolName: \"customized_kubelet\",\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [cloudEfficiency.then(cloudEfficiency =\u003e cloudEfficiency.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n instanceChargeType: \"PostPaid\",\n desiredSize: \"0\",\n kubeletConfiguration: {\n registryPullQps: \"10\",\n registryBurst: \"5\",\n eventRecordQps: \"10\",\n eventBurst: \"5\",\n serializeImagePulls: \"true\",\n evictionHard: {\n \"memory.available\": \"1024Mi\",\n \"nodefs.available\": \"10%\",\n \"nodefs.inodesFree\": \"5%\",\n \"imagefs.available\": \"10%\",\n },\n systemReserved: {\n cpu: \"1\",\n memory: \"1Gi\",\n \"ephemeral-storage\": \"10Gi\",\n },\n kubeReserved: {\n cpu: \"500m\",\n memory: \"1Gi\",\n },\n containerLogMaxSize: \"200Mi\",\n containerLogMaxFiles: \"3\",\n maxPods: \"100\",\n readOnlyPort: \"0\",\n allowedUnsafeSysctls: [\"net.ipv4.route.min_pmtu\"],\n },\n rollingPolicy: {\n maxParallelism: 1,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\ndefault = random.index.Integer(\"default\",\n max=99999,\n min=10000)\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nenhanced = alicloud.vpc.get_enhanced_nat_available_zones()\ncloud_efficiency = alicloud.ecs.get_instance_types(availability_zone=enhanced.zones[0].zone_id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\",\n system_disk_category=\"cloud_efficiency\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=enhanced.zones[0].zone_id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=f\"terraform-example-{default['result']}\",\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True,\n enable_rrsa=True)\ndefault_key_pair = alicloud.ecs.KeyPair(\"default\", key_pair_name=f\"terraform-example-{default['result']}\")\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n node_pool_name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n labels=[\n {\n \"key\": \"test1\",\n \"value\": \"nodepool\",\n },\n {\n \"key\": \"test2\",\n \"value\": \"nodepool\",\n },\n ],\n taints=[\n {\n \"key\": \"tf\",\n \"effect\": \"NoSchedule\",\n \"value\": \"example\",\n },\n {\n \"key\": \"tf2\",\n \"effect\": \"NoSchedule\",\n \"value\": \"example2\",\n },\n ])\n#The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\ndesired_size = alicloud.cs.NodePool(\"desired_size\",\n node_pool_name=\"desired_size\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"0\")\n# Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\nmaintenance = alicloud.cs.NodePool(\"maintenance\",\n node_pool_name=\"maintenance\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"1\",\n management={\n \"enable\": True,\n \"auto_repair\": True,\n \"auto_repair_policy\": {\n \"restart_node\": True,\n },\n \"auto_upgrade\": True,\n \"auto_upgrade_policy\": {\n \"auto_upgrade_kubelet\": True,\n },\n \"auto_vul_fix\": True,\n \"auto_vul_fix_policy\": {\n \"vul_level\": \"asap\",\n \"restart_node\": True,\n },\n \"max_unavailable\": 1,\n })\n#Create a node pool with spot instance.\nspot_instance = alicloud.cs.NodePool(\"spot_instance\",\n node_pool_name=\"spot_instance\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[\n cloud_efficiency.instance_types[0].id,\n cloud_efficiency.instance_types[1].id,\n ],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n desired_size=\"1\",\n spot_strategy=\"SpotWithPriceLimit\",\n spot_price_limits=[\n {\n \"instance_type\": cloud_efficiency.instance_types[0].id,\n \"price_limit\": \"0.70\",\n },\n {\n \"instance_type\": cloud_efficiency.instance_types[1].id,\n \"price_limit\": \"0.72\",\n },\n ])\n#Use Spot instances to create a node pool with auto-scaling enabled\nspot_auto_scaling = alicloud.cs.NodePool(\"spot_auto_scaling\",\n node_pool_name=\"spot_auto_scaling\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n scaling_config={\n \"min_size\": 1,\n \"max_size\": 10,\n \"type\": \"spot\",\n },\n spot_strategy=\"SpotWithPriceLimit\",\n spot_price_limits=[{\n \"instance_type\": cloud_efficiency.instance_types[0].id,\n \"price_limit\": \"0.70\",\n }])\n#Create a `PrePaid` node pool.\nprepaid_node = alicloud.cs.NodePool(\"prepaid_node\",\n node_pool_name=\"prepaid_node\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n key_name=default_key_pair.key_pair_name,\n instance_charge_type=\"PrePaid\",\n period=1,\n period_unit=\"Month\",\n auto_renew=True,\n auto_renew_period=1,\n install_cloud_monitor=True)\n##Create a node pool with customized kubelet parameters\ncustomized_kubelet = alicloud.cs.NodePool(\"customized_kubelet\",\n node_pool_name=\"customized_kubelet\",\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[cloud_efficiency.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n instance_charge_type=\"PostPaid\",\n desired_size=\"0\",\n kubelet_configuration={\n \"registry_pull_qps\": \"10\",\n \"registry_burst\": \"5\",\n \"event_record_qps\": \"10\",\n \"event_burst\": \"5\",\n \"serialize_image_pulls\": \"true\",\n \"eviction_hard\": {\n \"memory.available\": \"1024Mi\",\n \"nodefs.available\": \"10%\",\n \"nodefs.inodesFree\": \"5%\",\n \"imagefs.available\": \"10%\",\n },\n \"system_reserved\": {\n \"cpu\": \"1\",\n \"memory\": \"1Gi\",\n \"ephemeral-storage\": \"10Gi\",\n },\n \"kube_reserved\": {\n \"cpu\": \"500m\",\n \"memory\": \"1Gi\",\n },\n \"container_log_max_size\": \"200Mi\",\n \"container_log_max_files\": \"3\",\n \"max_pods\": \"100\",\n \"read_only_port\": \"0\",\n \"allowed_unsafe_sysctls\": [\"net.ipv4.route.min_pmtu\"],\n },\n rolling_policy={\n \"max_parallelism\": 1,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var enhanced = AliCloud.Vpc.GetEnhancedNatAvailableZones.Invoke();\n\n var cloudEfficiency = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = enhanced.Apply(getEnhancedNatAvailableZonesResult =\u003e getEnhancedNatAvailableZonesResult.Zones[0]?.ZoneId),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = $\"terraform-example-{@default.Result}\",\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n EnableRrsa = true,\n });\n\n var defaultKeyPair = new AliCloud.Ecs.KeyPair(\"default\", new()\n {\n KeyPairName = $\"terraform-example-{@default.Result}\",\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n NodePoolName = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n Labels = new[]\n {\n new AliCloud.CS.Inputs.NodePoolLabelArgs\n {\n Key = \"test1\",\n Value = \"nodepool\",\n },\n new AliCloud.CS.Inputs.NodePoolLabelArgs\n {\n Key = \"test2\",\n Value = \"nodepool\",\n },\n },\n Taints = new[]\n {\n new AliCloud.CS.Inputs.NodePoolTaintArgs\n {\n Key = \"tf\",\n Effect = \"NoSchedule\",\n Value = \"example\",\n },\n new AliCloud.CS.Inputs.NodePoolTaintArgs\n {\n Key = \"tf2\",\n Effect = \"NoSchedule\",\n Value = \"example2\",\n },\n },\n });\n\n //The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\n var desiredSize = new AliCloud.CS.NodePool(\"desired_size\", new()\n {\n NodePoolName = \"desired_size\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"0\",\n });\n\n // Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\n var maintenance = new AliCloud.CS.NodePool(\"maintenance\", new()\n {\n NodePoolName = \"maintenance\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"1\",\n Management = new AliCloud.CS.Inputs.NodePoolManagementArgs\n {\n Enable = true,\n AutoRepair = true,\n AutoRepairPolicy = new AliCloud.CS.Inputs.NodePoolManagementAutoRepairPolicyArgs\n {\n RestartNode = true,\n },\n AutoUpgrade = true,\n AutoUpgradePolicy = new AliCloud.CS.Inputs.NodePoolManagementAutoUpgradePolicyArgs\n {\n AutoUpgradeKubelet = true,\n },\n AutoVulFix = true,\n AutoVulFixPolicy = new AliCloud.CS.Inputs.NodePoolManagementAutoVulFixPolicyArgs\n {\n VulLevel = \"asap\",\n RestartNode = true,\n },\n MaxUnavailable = 1,\n },\n });\n\n //Create a node pool with spot instance.\n var spotInstance = new AliCloud.CS.NodePool(\"spot_instance\", new()\n {\n NodePoolName = \"spot_instance\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[1]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n DesiredSize = \"1\",\n SpotStrategy = \"SpotWithPriceLimit\",\n SpotPriceLimits = new[]\n {\n new AliCloud.CS.Inputs.NodePoolSpotPriceLimitArgs\n {\n InstanceType = cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n PriceLimit = \"0.70\",\n },\n new AliCloud.CS.Inputs.NodePoolSpotPriceLimitArgs\n {\n InstanceType = cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[1]?.Id),\n PriceLimit = \"0.72\",\n },\n },\n });\n\n //Use Spot instances to create a node pool with auto-scaling enabled\n var spotAutoScaling = new AliCloud.CS.NodePool(\"spot_auto_scaling\", new()\n {\n NodePoolName = \"spot_auto_scaling\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n ScalingConfig = new AliCloud.CS.Inputs.NodePoolScalingConfigArgs\n {\n MinSize = 1,\n MaxSize = 10,\n Type = \"spot\",\n },\n SpotStrategy = \"SpotWithPriceLimit\",\n SpotPriceLimits = new[]\n {\n new AliCloud.CS.Inputs.NodePoolSpotPriceLimitArgs\n {\n InstanceType = cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n PriceLimit = \"0.70\",\n },\n },\n });\n\n //Create a `PrePaid` node pool.\n var prepaidNode = new AliCloud.CS.NodePool(\"prepaid_node\", new()\n {\n NodePoolName = \"prepaid_node\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n KeyName = defaultKeyPair.KeyPairName,\n InstanceChargeType = \"PrePaid\",\n Period = 1,\n PeriodUnit = \"Month\",\n AutoRenew = true,\n AutoRenewPeriod = 1,\n InstallCloudMonitor = true,\n });\n\n //#Create a node pool with customized kubelet parameters\n var customizedKubelet = new AliCloud.CS.NodePool(\"customized_kubelet\", new()\n {\n NodePoolName = \"customized_kubelet\",\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n cloudEfficiency.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n InstanceChargeType = \"PostPaid\",\n DesiredSize = \"0\",\n KubeletConfiguration = new AliCloud.CS.Inputs.NodePoolKubeletConfigurationArgs\n {\n RegistryPullQps = \"10\",\n RegistryBurst = \"5\",\n EventRecordQps = \"10\",\n EventBurst = \"5\",\n SerializeImagePulls = \"true\",\n EvictionHard = \n {\n { \"memory.available\", \"1024Mi\" },\n { \"nodefs.available\", \"10%\" },\n { \"nodefs.inodesFree\", \"5%\" },\n { \"imagefs.available\", \"10%\" },\n },\n SystemReserved = \n {\n { \"cpu\", \"1\" },\n { \"memory\", \"1Gi\" },\n { \"ephemeral-storage\", \"10Gi\" },\n },\n KubeReserved = \n {\n { \"cpu\", \"500m\" },\n { \"memory\", \"1Gi\" },\n },\n ContainerLogMaxSize = \"200Mi\",\n ContainerLogMaxFiles = \"3\",\n MaxPods = \"100\",\n ReadOnlyPort = \"0\",\n AllowedUnsafeSysctls = new[]\n {\n \"net.ipv4.route.min_pmtu\",\n },\n },\n RollingPolicy = new AliCloud.CS.Inputs.NodePoolRollingPolicyArgs\n {\n MaxParallelism = 1,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tenhanced, err := vpc.GetEnhancedNatAvailableZones(ctx, \u0026vpc.GetEnhancedNatAvailableZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcloudEfficiency, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(enhanced.Zones[0].ZoneId),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(enhanced.Zones[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t\tEnableRrsa: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKeyPair, err := ecs.NewKeyPair(ctx, \"default\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tLabels: cs.NodePoolLabelArray{\n\t\t\t\t\u0026cs.NodePoolLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"test1\"),\n\t\t\t\t\tValue: pulumi.String(\"nodepool\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.NodePoolLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"test2\"),\n\t\t\t\t\tValue: pulumi.String(\"nodepool\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTaints: cs.NodePoolTaintArray{\n\t\t\t\t\u0026cs.NodePoolTaintArgs{\n\t\t\t\t\tKey: pulumi.String(\"tf\"),\n\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\tValue: pulumi.String(\"example\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.NodePoolTaintArgs{\n\t\t\t\t\tKey: pulumi.String(\"tf2\"),\n\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\tValue: pulumi.String(\"example2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\n\t\t_, err = cs.NewNodePool(ctx, \"desired_size\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"desired_size\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tDesiredSize: pulumi.String(\"0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\n\t\t_, err = cs.NewNodePool(ctx, \"maintenance\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"maintenance\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tDesiredSize: pulumi.String(\"1\"),\n\t\t\tManagement: \u0026cs.NodePoolManagementArgs{\n\t\t\t\tEnable: pulumi.Bool(true),\n\t\t\t\tAutoRepair: pulumi.Bool(true),\n\t\t\t\tAutoRepairPolicy: \u0026cs.NodePoolManagementAutoRepairPolicyArgs{\n\t\t\t\t\tRestartNode: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tAutoUpgrade: pulumi.Bool(true),\n\t\t\t\tAutoUpgradePolicy: \u0026cs.NodePoolManagementAutoUpgradePolicyArgs{\n\t\t\t\t\tAutoUpgradeKubelet: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tAutoVulFix: pulumi.Bool(true),\n\t\t\t\tAutoVulFixPolicy: \u0026cs.NodePoolManagementAutoVulFixPolicyArgs{\n\t\t\t\t\tVulLevel: pulumi.String(\"asap\"),\n\t\t\t\t\tRestartNode: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tMaxUnavailable: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a node pool with spot instance.\n\t\t_, err = cs.NewNodePool(ctx, \"spot_instance\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"spot_instance\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[1].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tDesiredSize: pulumi.String(\"1\"),\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSpotPriceLimits: cs.NodePoolSpotPriceLimitArray{\n\t\t\t\t\u0026cs.NodePoolSpotPriceLimitArgs{\n\t\t\t\t\tInstanceType: pulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t\t\tPriceLimit: pulumi.String(\"0.70\"),\n\t\t\t\t},\n\t\t\t\t\u0026cs.NodePoolSpotPriceLimitArgs{\n\t\t\t\t\tInstanceType: pulumi.String(cloudEfficiency.InstanceTypes[1].Id),\n\t\t\t\t\tPriceLimit: pulumi.String(\"0.72\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Use Spot instances to create a node pool with auto-scaling enabled\n\t\t_, err = cs.NewNodePool(ctx, \"spot_auto_scaling\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"spot_auto_scaling\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tScalingConfig: \u0026cs.NodePoolScalingConfigArgs{\n\t\t\t\tMinSize: pulumi.Int(1),\n\t\t\t\tMaxSize: pulumi.Int(10),\n\t\t\t\tType: pulumi.String(\"spot\"),\n\t\t\t},\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSpotPriceLimits: cs.NodePoolSpotPriceLimitArray{\n\t\t\t\t\u0026cs.NodePoolSpotPriceLimitArgs{\n\t\t\t\t\tInstanceType: pulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t\t\tPriceLimit: pulumi.String(\"0.70\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a `PrePaid` node pool.\n\t\t_, err = cs.NewNodePool(ctx, \"prepaid_node\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"prepaid_node\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tKeyName: defaultKeyPair.KeyPairName,\n\t\t\tInstanceChargeType: pulumi.String(\"PrePaid\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tPeriodUnit: pulumi.String(\"Month\"),\n\t\t\tAutoRenew: pulumi.Bool(true),\n\t\t\tAutoRenewPeriod: pulumi.Int(1),\n\t\t\tInstallCloudMonitor: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// #Create a node pool with customized kubelet parameters\n\t\t_, err = cs.NewNodePool(ctx, \"customized_kubelet\", \u0026cs.NodePoolArgs{\n\t\t\tNodePoolName: pulumi.String(\"customized_kubelet\"),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(cloudEfficiency.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tDesiredSize: pulumi.String(\"0\"),\n\t\t\tKubeletConfiguration: \u0026cs.NodePoolKubeletConfigurationArgs{\n\t\t\t\tRegistryPullQps: pulumi.String(\"10\"),\n\t\t\t\tRegistryBurst: pulumi.String(\"5\"),\n\t\t\t\tEventRecordQps: pulumi.String(\"10\"),\n\t\t\t\tEventBurst: pulumi.String(\"5\"),\n\t\t\t\tSerializeImagePulls: pulumi.String(\"true\"),\n\t\t\t\tEvictionHard: pulumi.StringMap{\n\t\t\t\t\t\"memory.available\": pulumi.String(\"1024Mi\"),\n\t\t\t\t\t\"nodefs.available\": pulumi.String(\"10%\"),\n\t\t\t\t\t\"nodefs.inodesFree\": pulumi.String(\"5%\"),\n\t\t\t\t\t\"imagefs.available\": pulumi.String(\"10%\"),\n\t\t\t\t},\n\t\t\t\tSystemReserved: pulumi.StringMap{\n\t\t\t\t\t\"cpu\": pulumi.String(\"1\"),\n\t\t\t\t\t\"memory\": pulumi.String(\"1Gi\"),\n\t\t\t\t\t\"ephemeral-storage\": pulumi.String(\"10Gi\"),\n\t\t\t\t},\n\t\t\t\tKubeReserved: pulumi.StringMap{\n\t\t\t\t\t\"cpu\": pulumi.String(\"500m\"),\n\t\t\t\t\t\"memory\": pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t\tContainerLogMaxSize: pulumi.String(\"200Mi\"),\n\t\t\t\tContainerLogMaxFiles: pulumi.String(\"3\"),\n\t\t\t\tMaxPods: pulumi.String(\"100\"),\n\t\t\t\tReadOnlyPort: pulumi.String(\"0\"),\n\t\t\t\tAllowedUnsafeSysctls: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"net.ipv4.route.min_pmtu\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tRollingPolicy: \u0026cs.NodePoolRollingPolicyArgs{\n\t\t\t\tMaxParallelism: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetEnhancedNatAvailableZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolLabelArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolTaintArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolManagementArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolManagementAutoRepairPolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolManagementAutoUpgradePolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolManagementAutoVulFixPolicyArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolSpotPriceLimitArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolScalingConfigArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolKubeletConfigurationArgs;\nimport com.pulumi.alicloud.cs.inputs.NodePoolRollingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var enhanced = VpcFunctions.getEnhancedNatAvailableZones(GetEnhancedNatAvailableZonesArgs.builder()\n .build());\n\n final var cloudEfficiency = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(enhanced.zones()[0].zoneId())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(enhanced.zones()[0].zoneId())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(String.format(\"terraform-example-%s\", default_.result()))\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .enableRrsa(true)\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"terraform-example-%s\", default_.result()))\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .nodePoolName(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .labels( \n NodePoolLabelArgs.builder()\n .key(\"test1\")\n .value(\"nodepool\")\n .build(),\n NodePoolLabelArgs.builder()\n .key(\"test2\")\n .value(\"nodepool\")\n .build())\n .taints( \n NodePoolTaintArgs.builder()\n .key(\"tf\")\n .effect(\"NoSchedule\")\n .value(\"example\")\n .build(),\n NodePoolTaintArgs.builder()\n .key(\"tf2\")\n .effect(\"NoSchedule\")\n .value(\"example2\")\n .build())\n .build());\n\n //The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\n var desiredSize = new NodePool(\"desiredSize\", NodePoolArgs.builder()\n .nodePoolName(\"desired_size\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"0\")\n .build());\n\n // Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\n var maintenance = new NodePool(\"maintenance\", NodePoolArgs.builder()\n .nodePoolName(\"maintenance\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"1\")\n .management(NodePoolManagementArgs.builder()\n .enable(true)\n .autoRepair(true)\n .autoRepairPolicy(NodePoolManagementAutoRepairPolicyArgs.builder()\n .restartNode(true)\n .build())\n .autoUpgrade(true)\n .autoUpgradePolicy(NodePoolManagementAutoUpgradePolicyArgs.builder()\n .autoUpgradeKubelet(true)\n .build())\n .autoVulFix(true)\n .autoVulFixPolicy(NodePoolManagementAutoVulFixPolicyArgs.builder()\n .vulLevel(\"asap\")\n .restartNode(true)\n .build())\n .maxUnavailable(1)\n .build())\n .build());\n\n //Create a node pool with spot instance.\n var spotInstance = new NodePool(\"spotInstance\", NodePoolArgs.builder()\n .nodePoolName(\"spot_instance\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes( \n cloudEfficiency.instanceTypes()[0].id(),\n cloudEfficiency.instanceTypes()[1].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .desiredSize(\"1\")\n .spotStrategy(\"SpotWithPriceLimit\")\n .spotPriceLimits( \n NodePoolSpotPriceLimitArgs.builder()\n .instanceType(cloudEfficiency.instanceTypes()[0].id())\n .priceLimit(\"0.70\")\n .build(),\n NodePoolSpotPriceLimitArgs.builder()\n .instanceType(cloudEfficiency.instanceTypes()[1].id())\n .priceLimit(\"0.72\")\n .build())\n .build());\n\n //Use Spot instances to create a node pool with auto-scaling enabled\n var spotAutoScaling = new NodePool(\"spotAutoScaling\", NodePoolArgs.builder()\n .nodePoolName(\"spot_auto_scaling\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .scalingConfig(NodePoolScalingConfigArgs.builder()\n .minSize(1)\n .maxSize(10)\n .type(\"spot\")\n .build())\n .spotStrategy(\"SpotWithPriceLimit\")\n .spotPriceLimits(NodePoolSpotPriceLimitArgs.builder()\n .instanceType(cloudEfficiency.instanceTypes()[0].id())\n .priceLimit(\"0.70\")\n .build())\n .build());\n\n //Create a `PrePaid` node pool.\n var prepaidNode = new NodePool(\"prepaidNode\", NodePoolArgs.builder()\n .nodePoolName(\"prepaid_node\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .keyName(defaultKeyPair.keyPairName())\n .instanceChargeType(\"PrePaid\")\n .period(1)\n .periodUnit(\"Month\")\n .autoRenew(true)\n .autoRenewPeriod(1)\n .installCloudMonitor(true)\n .build());\n\n //#Create a node pool with customized kubelet parameters\n var customizedKubelet = new NodePool(\"customizedKubelet\", NodePoolArgs.builder()\n .nodePoolName(\"customized_kubelet\")\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(cloudEfficiency.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .instanceChargeType(\"PostPaid\")\n .desiredSize(\"0\")\n .kubeletConfiguration(NodePoolKubeletConfigurationArgs.builder()\n .registryPullQps(\"10\")\n .registryBurst(\"5\")\n .eventRecordQps(\"10\")\n .eventBurst(\"5\")\n .serializeImagePulls(\"true\")\n .evictionHard(Map.ofEntries(\n Map.entry(\"memory.available\", \"1024Mi\"),\n Map.entry(\"nodefs.available\", \"10%\"),\n Map.entry(\"nodefs.inodesFree\", \"5%\"),\n Map.entry(\"imagefs.available\", \"10%\")\n ))\n .systemReserved(Map.ofEntries(\n Map.entry(\"cpu\", \"1\"),\n Map.entry(\"memory\", \"1Gi\"),\n Map.entry(\"ephemeral-storage\", \"10Gi\")\n ))\n .kubeReserved(Map.ofEntries(\n Map.entry(\"cpu\", \"500m\"),\n Map.entry(\"memory\", \"1Gi\")\n ))\n .containerLogMaxSize(\"200Mi\")\n .containerLogMaxFiles(\"3\")\n .maxPods(\"100\")\n .readOnlyPort(\"0\")\n .allowedUnsafeSysctls(\"net.ipv4.route.min_pmtu\")\n .build())\n .rollingPolicy(NodePoolRollingPolicyArgs.builder()\n .maxParallelism(1)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n max: 99999\n min: 10000\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${enhanced.zones[0].zoneId}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: terraform-example-${default.result}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n enableRrsa: true\n defaultKeyPair:\n type: alicloud:ecs:KeyPair\n name: default\n properties:\n keyPairName: terraform-example-${default.result}\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n nodePoolName: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n labels:\n - key: test1\n value: nodepool\n - key: test2\n value: nodepool\n taints:\n - key: tf\n effect: NoSchedule\n value: example\n - key: tf2\n effect: NoSchedule\n value: example2\n #The parameter `node_count` is deprecated from version 1.158.0. Please use the new parameter `desired_size` instead, you can update it as follows.\n desiredSize:\n type: alicloud:cs:NodePool\n name: desired_size\n properties:\n nodePoolName: desired_size\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 0\n # Create a managed node pool. If you need to enable maintenance window, you need to set the maintenance window in `alicloud_cs_managed_kubernetes`.\n maintenance:\n type: alicloud:cs:NodePool\n properties:\n nodePoolName: maintenance\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40 # only key_name is supported in the management node pool\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 1 # management node pool configuration.\n management:\n enable: true\n autoRepair: true\n autoRepairPolicy:\n restartNode: true\n autoUpgrade: true\n autoUpgradePolicy:\n autoUpgradeKubelet: true\n autoVulFix: true\n autoVulFixPolicy:\n vulLevel: asap\n restartNode: true\n maxUnavailable: 1\n #Create a node pool with spot instance.\n spotInstance:\n type: alicloud:cs:NodePool\n name: spot_instance\n properties:\n nodePoolName: spot_instance\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n - ${cloudEfficiency.instanceTypes[1].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n desiredSize: 1 # spot config\n spotStrategy: SpotWithPriceLimit\n spotPriceLimits:\n - instanceType: ${cloudEfficiency.instanceTypes[0].id}\n priceLimit: '0.70'\n - instanceType: ${cloudEfficiency.instanceTypes[1].id}\n priceLimit: '0.72'\n #Use Spot instances to create a node pool with auto-scaling enabled\n spotAutoScaling:\n type: alicloud:cs:NodePool\n name: spot_auto_scaling\n properties:\n nodePoolName: spot_auto_scaling\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n scalingConfig:\n minSize: 1\n maxSize: 10\n type: spot\n spotStrategy: SpotWithPriceLimit\n spotPriceLimits:\n - instanceType: ${cloudEfficiency.instanceTypes[0].id}\n priceLimit: '0.70'\n #Create a `PrePaid` node pool.\n prepaidNode:\n type: alicloud:cs:NodePool\n name: prepaid_node\n properties:\n nodePoolName: prepaid_node\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n keyName: ${defaultKeyPair.keyPairName}\n instanceChargeType: PrePaid\n period: 1\n periodUnit: Month\n autoRenew: true\n autoRenewPeriod: 1 # open cloud monitor\n installCloudMonitor: true\n ##Create a node pool with customized kubelet parameters\n customizedKubelet:\n type: alicloud:cs:NodePool\n name: customized_kubelet\n properties:\n nodePoolName: customized_kubelet\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${cloudEfficiency.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n instanceChargeType: PostPaid\n desiredSize: 0 # kubelet configuration parameters\n kubeletConfiguration:\n registryPullQps: 10\n registryBurst: 5\n eventRecordQps: 10\n eventBurst: 5\n serializeImagePulls: true\n evictionHard:\n memory.available: 1024Mi\n nodefs.available: 10%\n nodefs.inodesFree: 5%\n imagefs.available: 10%\n systemReserved:\n cpu: '1'\n memory: 1Gi\n ephemeral-storage: 10Gi\n kubeReserved:\n cpu: 500m\n memory: 1Gi\n containerLogMaxSize: 200Mi\n containerLogMaxFiles: 3\n maxPods: 100\n readOnlyPort: 0\n allowedUnsafeSysctls:\n - net.ipv4.route.min_pmtu\n rollingPolicy:\n maxParallelism: 1\nvariables:\n enhanced:\n fn::invoke:\n function: alicloud:vpc:getEnhancedNatAvailableZones\n arguments: {}\n cloudEfficiency:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${enhanced.zones[0].zoneId}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n systemDiskCategory: cloud_efficiency\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Service for Kubernetes (ACK) Nodepool can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/nodePool:NodePool example \u003ccluster_id\u003e:\u003cnode_pool_id\u003e\n```\n\n",
+ "description": "\n\n## Import\n\nContainer Service for Kubernetes (ACK) Nodepool can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/nodePool:NodePool example \u003ccluster_id\u003e:\u003cnode_pool_id\u003e\n```\n\n",
"properties": {
+ "autoMode": {
+ "$ref": "#/types/alicloud:cs/NodePoolAutoMode:NodePoolAutoMode",
+ "description": "Whether to enable auto mode. When enabled, the system will automatically manage the node pool with optimized default configurations. **Note:** When \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e is enabled, many parameters will be automatically set to default values and cannot be modified. See `auto_mode.enable` below for details. See \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e below.\n"
+ },
"autoRenew": {
"type": "boolean",
"description": "Whether to enable automatic renewal for nodes in the node pool takes effect only when \u003cspan pulumi-lang-nodejs=\"`instanceChargeType`\" pulumi-lang-dotnet=\"`InstanceChargeType`\" pulumi-lang-go=\"`instanceChargeType`\" pulumi-lang-python=\"`instance_charge_type`\" pulumi-lang-yaml=\"`instanceChargeType`\" pulumi-lang-java=\"`instanceChargeType`\"\u003e`instance_charge_type`\u003c/span\u003e is set to `PrePaid`. Default value: \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Valid values:\n"
@@ -133113,11 +135701,11 @@
},
"efloNodeGroup": {
"$ref": "#/types/alicloud:cs/NodePoolEfloNodeGroup:NodePoolEfloNodeGroup",
- "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n"
+ "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n"
},
"forceDelete": {
"type": "boolean",
- "description": "Whether to force deletion.\n"
+ "description": "Whether to force deletion.\n\n\u003e **NOTE:** This parameter only takes effect when deletion is triggered.\n"
},
"formatDisk": {
"type": "boolean",
@@ -133129,7 +135717,7 @@
},
"imageType": {
"type": "string",
- "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`: Custom image.\n"
+ "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`:Custom image.\n- `AliyunLinux4ContainerOptimized`:Alinux4 container-optimized image.\n"
},
"installCloudMonitor": {
"type": "boolean",
@@ -133139,6 +135727,17 @@
"type": "string",
"description": "Node payment type. Valid values: `PostPaid`, `PrePaid`, default is `PostPaid`. If value is `PrePaid`, the arguments \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`autoRenew`\" pulumi-lang-dotnet=\"`AutoRenew`\" pulumi-lang-go=\"`autoRenew`\" pulumi-lang-python=\"`auto_renew`\" pulumi-lang-yaml=\"`autoRenew`\" pulumi-lang-java=\"`autoRenew`\"\u003e`auto_renew`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`autoRenewPeriod`\" pulumi-lang-dotnet=\"`AutoRenewPeriod`\" pulumi-lang-go=\"`autoRenewPeriod`\" pulumi-lang-python=\"`auto_renew_period`\" pulumi-lang-yaml=\"`autoRenewPeriod`\" pulumi-lang-java=\"`autoRenewPeriod`\"\u003e`auto_renew_period`\u003c/span\u003e are required.\n"
},
+ "instanceMetadataOptions": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstanceMetadataOptions:NodePoolInstanceMetadataOptions",
+ "description": "ECS instance metadata access configuration. See \u003cspan pulumi-lang-nodejs=\"`instanceMetadataOptions`\" pulumi-lang-dotnet=\"`InstanceMetadataOptions`\" pulumi-lang-go=\"`instanceMetadataOptions`\" pulumi-lang-python=\"`instance_metadata_options`\" pulumi-lang-yaml=\"`instanceMetadataOptions`\" pulumi-lang-java=\"`instanceMetadataOptions`\"\u003e`instance_metadata_options`\u003c/span\u003e below.\n"
+ },
+ "instancePatterns": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstancePattern:NodePoolInstancePattern"
+ },
+ "description": "Instance property configuration. See \u003cspan pulumi-lang-nodejs=\"`instancePatterns`\" pulumi-lang-dotnet=\"`InstancePatterns`\" pulumi-lang-go=\"`instancePatterns`\" pulumi-lang-python=\"`instance_patterns`\" pulumi-lang-yaml=\"`instancePatterns`\" pulumi-lang-java=\"`instancePatterns`\"\u003e`instance_patterns`\u003c/span\u003e below.\n"
+ },
"instanceTypes": {
"type": "array",
"items": {
@@ -133276,8 +135875,7 @@
"description": "The ID of the resource group\n"
},
"rollingPolicy": {
- "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy",
- "description": "Rotary configuration. See \u003cspan pulumi-lang-nodejs=\"`rollingPolicy`\" pulumi-lang-dotnet=\"`RollingPolicy`\" pulumi-lang-go=\"`rollingPolicy`\" pulumi-lang-python=\"`rolling_policy`\" pulumi-lang-yaml=\"`rollingPolicy`\" pulumi-lang-java=\"`rollingPolicy`\"\u003e`rolling_policy`\u003c/span\u003e below.\n"
+ "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy"
},
"runtimeName": {
"type": "string",
@@ -133408,8 +136006,7 @@
"description": "Whether the node after expansion can be scheduled.\n"
},
"updateNodes": {
- "type": "boolean",
- "description": "Synchronously update node labels and taints.\n"
+ "type": "boolean"
},
"userData": {
"type": "string",
@@ -133424,12 +136021,14 @@
}
},
"required": [
+ "autoMode",
"clusterId",
"cpuPolicy",
"formatDisk",
"imageId",
"imageType",
"instanceChargeType",
+ "instanceMetadataOptions",
"keepInstanceName",
"management",
"multiAzPolicy",
@@ -133455,6 +136054,11 @@
"type"
],
"inputProperties": {
+ "autoMode": {
+ "$ref": "#/types/alicloud:cs/NodePoolAutoMode:NodePoolAutoMode",
+ "description": "Whether to enable auto mode. When enabled, the system will automatically manage the node pool with optimized default configurations. **Note:** When \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e is enabled, many parameters will be automatically set to default values and cannot be modified. See `auto_mode.enable` below for details. See \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
"autoRenew": {
"type": "boolean",
"description": "Whether to enable automatic renewal for nodes in the node pool takes effect only when \u003cspan pulumi-lang-nodejs=\"`instanceChargeType`\" pulumi-lang-dotnet=\"`InstanceChargeType`\" pulumi-lang-go=\"`instanceChargeType`\" pulumi-lang-python=\"`instance_charge_type`\" pulumi-lang-yaml=\"`instanceChargeType`\" pulumi-lang-java=\"`instanceChargeType`\"\u003e`instance_charge_type`\u003c/span\u003e is set to `PrePaid`. Default value: \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Valid values:\n"
@@ -133500,11 +136104,11 @@
},
"efloNodeGroup": {
"$ref": "#/types/alicloud:cs/NodePoolEfloNodeGroup:NodePoolEfloNodeGroup",
- "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n"
+ "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n"
},
"forceDelete": {
"type": "boolean",
- "description": "Whether to force deletion.\n"
+ "description": "Whether to force deletion.\n\n\u003e **NOTE:** This parameter only takes effect when deletion is triggered.\n"
},
"formatDisk": {
"type": "boolean",
@@ -133516,7 +136120,7 @@
},
"imageType": {
"type": "string",
- "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`: Custom image.\n"
+ "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`:Custom image.\n- `AliyunLinux4ContainerOptimized`:Alinux4 container-optimized image.\n"
},
"installCloudMonitor": {
"type": "boolean",
@@ -133526,6 +136130,18 @@
"type": "string",
"description": "Node payment type. Valid values: `PostPaid`, `PrePaid`, default is `PostPaid`. If value is `PrePaid`, the arguments \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`autoRenew`\" pulumi-lang-dotnet=\"`AutoRenew`\" pulumi-lang-go=\"`autoRenew`\" pulumi-lang-python=\"`auto_renew`\" pulumi-lang-yaml=\"`autoRenew`\" pulumi-lang-java=\"`autoRenew`\"\u003e`auto_renew`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`autoRenewPeriod`\" pulumi-lang-dotnet=\"`AutoRenewPeriod`\" pulumi-lang-go=\"`autoRenewPeriod`\" pulumi-lang-python=\"`auto_renew_period`\" pulumi-lang-yaml=\"`autoRenewPeriod`\" pulumi-lang-java=\"`autoRenewPeriod`\"\u003e`auto_renew_period`\u003c/span\u003e are required.\n"
},
+ "instanceMetadataOptions": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstanceMetadataOptions:NodePoolInstanceMetadataOptions",
+ "description": "ECS instance metadata access configuration. See \u003cspan pulumi-lang-nodejs=\"`instanceMetadataOptions`\" pulumi-lang-dotnet=\"`InstanceMetadataOptions`\" pulumi-lang-go=\"`instanceMetadataOptions`\" pulumi-lang-python=\"`instance_metadata_options`\" pulumi-lang-yaml=\"`instanceMetadataOptions`\" pulumi-lang-java=\"`instanceMetadataOptions`\"\u003e`instance_metadata_options`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "instancePatterns": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstancePattern:NodePoolInstancePattern"
+ },
+ "description": "Instance property configuration. See \u003cspan pulumi-lang-nodejs=\"`instancePatterns`\" pulumi-lang-dotnet=\"`InstancePatterns`\" pulumi-lang-go=\"`instancePatterns`\" pulumi-lang-python=\"`instance_patterns`\" pulumi-lang-yaml=\"`instancePatterns`\" pulumi-lang-java=\"`instancePatterns`\"\u003e`instance_patterns`\u003c/span\u003e below.\n"
+ },
"instanceTypes": {
"type": "array",
"items": {
@@ -133662,8 +136278,7 @@
"description": "The ID of the resource group\n"
},
"rollingPolicy": {
- "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy",
- "description": "Rotary configuration. See \u003cspan pulumi-lang-nodejs=\"`rollingPolicy`\" pulumi-lang-dotnet=\"`RollingPolicy`\" pulumi-lang-go=\"`rollingPolicy`\" pulumi-lang-python=\"`rolling_policy`\" pulumi-lang-yaml=\"`rollingPolicy`\" pulumi-lang-java=\"`rollingPolicy`\"\u003e`rolling_policy`\u003c/span\u003e below.\n"
+ "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy"
},
"runtimeName": {
"type": "string",
@@ -133796,8 +136411,7 @@
"description": "Whether the node after expansion can be scheduled.\n"
},
"updateNodes": {
- "type": "boolean",
- "description": "Synchronously update node labels and taints.\n"
+ "type": "boolean"
},
"userData": {
"type": "string",
@@ -133817,6 +136431,11 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering NodePool resources.\n",
"properties": {
+ "autoMode": {
+ "$ref": "#/types/alicloud:cs/NodePoolAutoMode:NodePoolAutoMode",
+ "description": "Whether to enable auto mode. When enabled, the system will automatically manage the node pool with optimized default configurations. **Note:** When \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e is enabled, many parameters will be automatically set to default values and cannot be modified. See `auto_mode.enable` below for details. See \u003cspan pulumi-lang-nodejs=\"`autoMode`\" pulumi-lang-dotnet=\"`AutoMode`\" pulumi-lang-go=\"`autoMode`\" pulumi-lang-python=\"`auto_mode`\" pulumi-lang-yaml=\"`autoMode`\" pulumi-lang-java=\"`autoMode`\"\u003e`auto_mode`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
"autoRenew": {
"type": "boolean",
"description": "Whether to enable automatic renewal for nodes in the node pool takes effect only when \u003cspan pulumi-lang-nodejs=\"`instanceChargeType`\" pulumi-lang-dotnet=\"`InstanceChargeType`\" pulumi-lang-go=\"`instanceChargeType`\" pulumi-lang-python=\"`instance_charge_type`\" pulumi-lang-yaml=\"`instanceChargeType`\" pulumi-lang-java=\"`instanceChargeType`\"\u003e`instance_charge_type`\u003c/span\u003e is set to `PrePaid`. Default value: \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Valid values:\n"
@@ -133862,11 +136481,11 @@
},
"efloNodeGroup": {
"$ref": "#/types/alicloud:cs/NodePoolEfloNodeGroup:NodePoolEfloNodeGroup",
- "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n"
+ "description": "Lingjun node pool configuration. See \u003cspan pulumi-lang-nodejs=\"`efloNodeGroup`\" pulumi-lang-dotnet=\"`EfloNodeGroup`\" pulumi-lang-go=\"`efloNodeGroup`\" pulumi-lang-python=\"`eflo_node_group`\" pulumi-lang-yaml=\"`efloNodeGroup`\" pulumi-lang-java=\"`efloNodeGroup`\"\u003e`eflo_node_group`\u003c/span\u003e below.\n\n\u003e **NOTE:** The parameter is immutable after resource creation. It only applies during resource creation and has no effect when modified post-creation.\n"
},
"forceDelete": {
"type": "boolean",
- "description": "Whether to force deletion.\n"
+ "description": "Whether to force deletion.\n\n\u003e **NOTE:** This parameter only takes effect when deletion is triggered.\n"
},
"formatDisk": {
"type": "boolean",
@@ -133878,7 +136497,7 @@
},
"imageType": {
"type": "string",
- "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`: Custom image.\n"
+ "description": "The operating system image type and the \u003cspan pulumi-lang-nodejs=\"`platform`\" pulumi-lang-dotnet=\"`Platform`\" pulumi-lang-go=\"`platform`\" pulumi-lang-python=\"`platform`\" pulumi-lang-yaml=\"`platform`\" pulumi-lang-java=\"`platform`\"\u003e`platform`\u003c/span\u003e parameter can be selected from the following values:\n- `AliyunLinux` : Alinux2 image.\n- `AliyunLinux3` : Alinux3 image.\n- `AliyunLinux3Arm64` : Alinux3 mirror ARM version.\n- `AliyunLinuxUEFI` : Alinux2 Image UEFI version.\n- `CentOS` : CentOS image.\n- `Windows` : Windows image.\n- `WindowsCore` : WindowsCore image.\n- `ContainerOS` : container-optimized image.\n- `Ubuntu`: Ubuntu image.\n- `AliyunLinux3ContainerOptimized`: Alinux3 container-optimized image.\n- `Custom`:Custom image.\n- `AliyunLinux4ContainerOptimized`:Alinux4 container-optimized image.\n"
},
"installCloudMonitor": {
"type": "boolean",
@@ -133888,6 +136507,18 @@
"type": "string",
"description": "Node payment type. Valid values: `PostPaid`, `PrePaid`, default is `PostPaid`. If value is `PrePaid`, the arguments \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`autoRenew`\" pulumi-lang-dotnet=\"`AutoRenew`\" pulumi-lang-go=\"`autoRenew`\" pulumi-lang-python=\"`auto_renew`\" pulumi-lang-yaml=\"`autoRenew`\" pulumi-lang-java=\"`autoRenew`\"\u003e`auto_renew`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`autoRenewPeriod`\" pulumi-lang-dotnet=\"`AutoRenewPeriod`\" pulumi-lang-go=\"`autoRenewPeriod`\" pulumi-lang-python=\"`auto_renew_period`\" pulumi-lang-yaml=\"`autoRenewPeriod`\" pulumi-lang-java=\"`autoRenewPeriod`\"\u003e`auto_renew_period`\u003c/span\u003e are required.\n"
},
+ "instanceMetadataOptions": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstanceMetadataOptions:NodePoolInstanceMetadataOptions",
+ "description": "ECS instance metadata access configuration. See \u003cspan pulumi-lang-nodejs=\"`instanceMetadataOptions`\" pulumi-lang-dotnet=\"`InstanceMetadataOptions`\" pulumi-lang-go=\"`instanceMetadataOptions`\" pulumi-lang-python=\"`instance_metadata_options`\" pulumi-lang-yaml=\"`instanceMetadataOptions`\" pulumi-lang-java=\"`instanceMetadataOptions`\"\u003e`instance_metadata_options`\u003c/span\u003e below.\n",
+ "willReplaceOnChanges": true
+ },
+ "instancePatterns": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/alicloud:cs/NodePoolInstancePattern:NodePoolInstancePattern"
+ },
+ "description": "Instance property configuration. See \u003cspan pulumi-lang-nodejs=\"`instancePatterns`\" pulumi-lang-dotnet=\"`InstancePatterns`\" pulumi-lang-go=\"`instancePatterns`\" pulumi-lang-python=\"`instance_patterns`\" pulumi-lang-yaml=\"`instancePatterns`\" pulumi-lang-java=\"`instancePatterns`\"\u003e`instance_patterns`\u003c/span\u003e below.\n"
+ },
"instanceTypes": {
"type": "array",
"items": {
@@ -134028,8 +136659,7 @@
"description": "The ID of the resource group\n"
},
"rollingPolicy": {
- "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy",
- "description": "Rotary configuration. See \u003cspan pulumi-lang-nodejs=\"`rollingPolicy`\" pulumi-lang-dotnet=\"`RollingPolicy`\" pulumi-lang-go=\"`rollingPolicy`\" pulumi-lang-python=\"`rolling_policy`\" pulumi-lang-yaml=\"`rollingPolicy`\" pulumi-lang-java=\"`rollingPolicy`\"\u003e`rolling_policy`\u003c/span\u003e below.\n"
+ "$ref": "#/types/alicloud:cs/NodePoolRollingPolicy:NodePoolRollingPolicy"
},
"runtimeName": {
"type": "string",
@@ -134166,8 +136796,7 @@
"description": "Whether the node after expansion can be scheduled.\n"
},
"updateNodes": {
- "type": "boolean",
- "description": "Synchronously update node labels and taints.\n"
+ "type": "boolean"
},
"userData": {
"type": "string",
@@ -134185,7 +136814,7 @@
}
},
"alicloud:cs/registryEnterpriseNamespace:RegistryEnterpriseNamespace": {
- "description": "Provides a Container Registry Enterprise Edition Namespace resource.\n\nFor information about Container Registry Enterprise Edition Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createnamespace)\n\n\u003e **NOTE:** Available since v1.86.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry Enterprise Edition console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Registry Enterprise Edition Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseNamespace:RegistryEnterpriseNamespace example \u003cinstance_id\u003e:\u003cname\u003e\n```\n\n",
+ "description": "Provides a Container Registry Enterprise Edition Namespace resource.\n\nFor information about Container Registry Enterprise Edition Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createnamespace)\n\n\u003e **NOTE:** Available since v1.86.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry Enterprise Edition console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Registry Enterprise Edition Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseNamespace:RegistryEnterpriseNamespace example \u003cinstance_id\u003e:\u003cname\u003e\n```\n\n",
"properties": {
"autoCreate": {
"type": "boolean",
@@ -134258,7 +136887,7 @@
}
},
"alicloud:cs/registryEnterpriseRepo:RegistryEnterpriseRepo": {
- "description": "Provides a Container Registry Enterprise Edition Repository resource.\n\nFor information about Container Registry Enterprise Edition Repository and how to use it, see [What is Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createrepository)\n\n\u003e **NOTE:** Available since v1.86.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry Enterprise Edition console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst example = new alicloud.cs.RegistryEnterpriseRepo(\"example\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n namespace: defaultRegistryEnterpriseNamespace.name,\n name: `${name}-${_default.result}`,\n repoType: \"PUBLIC\",\n summary: \"this is summary of my new repo\",\n detail: \"this is a public repo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\nexample = alicloud.cs.RegistryEnterpriseRepo(\"example\",\n instance_id=default_registry_enterprise_instance.id,\n namespace=default_registry_enterprise_namespace.name,\n name=f\"{name}-{default['result']}\",\n repo_type=\"PUBLIC\",\n summary=\"this is summary of my new repo\",\n detail=\"this is a public repo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var example = new AliCloud.CS.RegistryEnterpriseRepo(\"example\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Namespace = defaultRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{@default.Result}\",\n RepoType = \"PUBLIC\",\n Summary = \"this is summary of my new repo\",\n Detail = \"this is a public repo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseRepo(ctx, \"example\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tNamespace: defaultRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tDetail: pulumi.String(\"this is a public repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var example = new RegistryEnterpriseRepo(\"example\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .namespace(defaultRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .repoType(\"PUBLIC\")\n .summary(\"this is summary of my new repo\")\n .detail(\"this is a public repo\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n example:\n type: alicloud:cs:RegistryEnterpriseRepo\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n namespace: ${defaultRegistryEnterpriseNamespace.name}\n name: ${name}-${default.result}\n repoType: PUBLIC\n summary: this is summary of my new repo\n detail: this is a public repo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Registry Enterprise Edition Repository can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseRepo:RegistryEnterpriseRepo example \u003cinstance_id\u003e:\u003cnamespace\u003e:\u003cname\u003e\n```\n\n",
+ "description": "Provides a Container Registry Enterprise Edition Repository resource.\n\nFor information about Container Registry Enterprise Edition Repository and how to use it, see [What is Repository](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createrepository)\n\n\u003e **NOTE:** Available since v1.86.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry Enterprise Edition console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000000,\n max: 99999999,\n});\nconst defaultRegistryEnterpriseInstance = new alicloud.cr.RegistryEnterpriseInstance(\"default\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-${_default.result}`,\n});\nconst defaultRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"default\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n name: `${name}-${_default.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst example = new alicloud.cs.RegistryEnterpriseRepo(\"example\", {\n instanceId: defaultRegistryEnterpriseInstance.id,\n namespace: defaultRegistryEnterpriseNamespace.name,\n name: `${name}-${_default.result}`,\n repoType: \"PUBLIC\",\n summary: \"this is summary of my new repo\",\n detail: \"this is a public repo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000000,\n max=99999999)\ndefault_registry_enterprise_instance = alicloud.cr.RegistryEnterpriseInstance(\"default\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-{default['result']}\")\ndefault_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"default\",\n instance_id=default_registry_enterprise_instance.id,\n name=f\"{name}-{default['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\nexample = alicloud.cs.RegistryEnterpriseRepo(\"example\",\n instance_id=default_registry_enterprise_instance.id,\n namespace=default_registry_enterprise_namespace.name,\n name=f\"{name}-{default['result']}\",\n repo_type=\"PUBLIC\",\n summary=\"this is summary of my new repo\",\n detail=\"this is a public repo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000000,\n Max = 99999999,\n });\n\n var defaultRegistryEnterpriseInstance = new AliCloud.CR.RegistryEnterpriseInstance(\"default\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-{@default.Result}\",\n });\n\n var defaultRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"default\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Name = $\"{name}-{@default.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var example = new AliCloud.CS.RegistryEnterpriseRepo(\"example\", new()\n {\n InstanceId = defaultRegistryEnterpriseInstance.Id,\n Namespace = defaultRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{@default.Result}\",\n RepoType = \"PUBLIC\",\n Summary = \"this is summary of my new repo\",\n Detail = \"this is a public repo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000000,\n\t\t\tMax: 99999999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseInstance, err := cr.NewRegistryEnterpriseInstance(ctx, \"default\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"default\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseRepo(ctx, \"example\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: defaultRegistryEnterpriseInstance.ID(),\n\t\t\tNamespace: defaultRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tDetail: pulumi.String(\"this is a public repo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000000)\n .max(99999999)\n .build());\n\n var defaultRegistryEnterpriseInstance = new RegistryEnterpriseInstance(\"defaultRegistryEnterpriseInstance\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"defaultRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var example = new RegistryEnterpriseRepo(\"example\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(defaultRegistryEnterpriseInstance.id())\n .namespace(defaultRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,default_.result()))\n .repoType(\"PUBLIC\")\n .summary(\"this is summary of my new repo\")\n .detail(\"this is a public repo\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 1e+07\n max: 9.9999999e+07\n defaultRegistryEnterpriseInstance:\n type: alicloud:cr:RegistryEnterpriseInstance\n name: default\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-${default.result}\n defaultRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: default\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n name: ${name}-${default.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n example:\n type: alicloud:cs:RegistryEnterpriseRepo\n properties:\n instanceId: ${defaultRegistryEnterpriseInstance.id}\n namespace: ${defaultRegistryEnterpriseNamespace.name}\n name: ${name}-${default.result}\n repoType: PUBLIC\n summary: this is summary of my new repo\n detail: this is a public repo\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Registry Enterprise Edition Repository can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseRepo:RegistryEnterpriseRepo example \u003cinstance_id\u003e:\u003cnamespace\u003e:\u003cname\u003e\n```\n\n",
"properties": {
"detail": {
"type": "string",
@@ -134371,7 +137000,7 @@
}
},
"alicloud:cs/registryEnterpriseSyncRule:RegistryEnterpriseSyncRule": {
- "description": "Provides a Container Registry Sync Rule resource.\n\nFor information about Container Registry Sync Rule and how to use it, see [What is Sync Rule](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createreposyncrule)\n\n\u003e **NOTE:** Available since v1.90.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst source = new alicloud.cr.RegistryEnterpriseInstance(\"source\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-source-${defaultInteger.result}`,\n});\nconst target = new alicloud.cr.RegistryEnterpriseInstance(\"target\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-target-${defaultInteger.result}`,\n});\nconst sourceRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"source\", {\n instanceId: source.id,\n name: `${name}-${defaultInteger.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst targetRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"target\", {\n instanceId: target.id,\n name: `${name}-${defaultInteger.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst sourceRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"source\", {\n instanceId: source.id,\n namespace: sourceRegistryEnterpriseNamespace.name,\n name: `${name}-${defaultInteger.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n});\nconst targetRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"target\", {\n instanceId: target.id,\n namespace: targetRegistryEnterpriseNamespace.name,\n name: `${name}-${defaultInteger.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n});\nconst defaultRegistryEnterpriseSyncRule = new alicloud.cs.RegistryEnterpriseSyncRule(\"default\", {\n instanceId: source.id,\n namespaceName: sourceRegistryEnterpriseNamespace.name,\n syncRuleName: `${name}-${defaultInteger.result}`,\n targetInstanceId: target.id,\n targetNamespaceName: targetRegistryEnterpriseNamespace.name,\n targetRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n tagFilter: \".*\",\n repoName: sourceRegistryEnterpriseRepo.name,\n targetRepoName: targetRegistryEnterpriseRepo.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nsource = alicloud.cr.RegistryEnterpriseInstance(\"source\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-source-{default_integer['result']}\")\ntarget = alicloud.cr.RegistryEnterpriseInstance(\"target\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-target-{default_integer['result']}\")\nsource_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"source\",\n instance_id=source.id,\n name=f\"{name}-{default_integer['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\ntarget_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"target\",\n instance_id=target.id,\n name=f\"{name}-{default_integer['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\nsource_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"source\",\n instance_id=source.id,\n namespace=source_registry_enterprise_namespace.name,\n name=f\"{name}-{default_integer['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\")\ntarget_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"target\",\n instance_id=target.id,\n namespace=target_registry_enterprise_namespace.name,\n name=f\"{name}-{default_integer['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\")\ndefault_registry_enterprise_sync_rule = alicloud.cs.RegistryEnterpriseSyncRule(\"default\",\n instance_id=source.id,\n namespace_name=source_registry_enterprise_namespace.name,\n sync_rule_name=f\"{name}-{default_integer['result']}\",\n target_instance_id=target.id,\n target_namespace_name=target_registry_enterprise_namespace.name,\n target_region_id=default.regions[0].id,\n tag_filter=\".*\",\n repo_name=source_registry_enterprise_repo.name,\n target_repo_name=target_registry_enterprise_repo.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var source = new AliCloud.CR.RegistryEnterpriseInstance(\"source\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-source-{defaultInteger.Result}\",\n });\n\n var target = new AliCloud.CR.RegistryEnterpriseInstance(\"target\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-target-{defaultInteger.Result}\",\n });\n\n var sourceRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"source\", new()\n {\n InstanceId = source.Id,\n Name = $\"{name}-{defaultInteger.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var targetRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"target\", new()\n {\n InstanceId = target.Id,\n Name = $\"{name}-{defaultInteger.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var sourceRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"source\", new()\n {\n InstanceId = source.Id,\n Namespace = sourceRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{defaultInteger.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n });\n\n var targetRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"target\", new()\n {\n InstanceId = target.Id,\n Namespace = targetRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{defaultInteger.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n });\n\n var defaultRegistryEnterpriseSyncRule = new AliCloud.CS.RegistryEnterpriseSyncRule(\"default\", new()\n {\n InstanceId = source.Id,\n NamespaceName = sourceRegistryEnterpriseNamespace.Name,\n SyncRuleName = $\"{name}-{defaultInteger.Result}\",\n TargetInstanceId = target.Id,\n TargetNamespaceName = targetRegistryEnterpriseNamespace.Name,\n TargetRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n TagFilter = \".*\",\n RepoName = sourceRegistryEnterpriseRepo.Name,\n TargetRepoName = targetRegistryEnterpriseRepo.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsource, err := cr.NewRegistryEnterpriseInstance(ctx, \"source\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-source-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttarget, err := cr.NewRegistryEnterpriseInstance(ctx, \"target\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-target-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsourceRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"source\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttargetRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"target\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsourceRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"source\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tNamespace: sourceRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttargetRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"target\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tNamespace: targetRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseSyncRule(ctx, \"default\", \u0026cs.RegistryEnterpriseSyncRuleArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tNamespaceName: sourceRegistryEnterpriseNamespace.Name,\n\t\t\tSyncRuleName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tTargetInstanceId: target.ID(),\n\t\t\tTargetNamespaceName: targetRegistryEnterpriseNamespace.Name,\n\t\t\tTargetRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tTagFilter: pulumi.String(\".*\"),\n\t\t\tRepoName: sourceRegistryEnterpriseRepo.Name,\n\t\t\tTargetRepoName: targetRegistryEnterpriseRepo.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseSyncRule;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseSyncRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var source = new RegistryEnterpriseInstance(\"source\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-source-%s\", name,defaultInteger.result()))\n .build());\n\n var target = new RegistryEnterpriseInstance(\"target\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-target-%s\", name,defaultInteger.result()))\n .build());\n\n var sourceRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"sourceRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(source.id())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var targetRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"targetRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(target.id())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var sourceRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"sourceRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(source.id())\n .namespace(sourceRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .build());\n\n var targetRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"targetRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(target.id())\n .namespace(targetRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .build());\n\n var defaultRegistryEnterpriseSyncRule = new RegistryEnterpriseSyncRule(\"defaultRegistryEnterpriseSyncRule\", RegistryEnterpriseSyncRuleArgs.builder()\n .instanceId(source.id())\n .namespaceName(sourceRegistryEnterpriseNamespace.name())\n .syncRuleName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .targetInstanceId(target.id())\n .targetNamespaceName(targetRegistryEnterpriseNamespace.name())\n .targetRegionId(default_.regions()[0].id())\n .tagFilter(\".*\")\n .repoName(sourceRegistryEnterpriseRepo.name())\n .targetRepoName(targetRegistryEnterpriseRepo.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n source:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-source-${defaultInteger.result}\n target:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-target-${defaultInteger.result}\n sourceRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: source\n properties:\n instanceId: ${source.id}\n name: ${name}-${defaultInteger.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n targetRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: target\n properties:\n instanceId: ${target.id}\n name: ${name}-${defaultInteger.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n sourceRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: source\n properties:\n instanceId: ${source.id}\n namespace: ${sourceRegistryEnterpriseNamespace.name}\n name: ${name}-${defaultInteger.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n targetRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: target\n properties:\n instanceId: ${target.id}\n namespace: ${targetRegistryEnterpriseNamespace.name}\n name: ${name}-${defaultInteger.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n defaultRegistryEnterpriseSyncRule:\n type: alicloud:cs:RegistryEnterpriseSyncRule\n name: default\n properties:\n instanceId: ${source.id}\n namespaceName: ${sourceRegistryEnterpriseNamespace.name}\n syncRuleName: ${name}-${defaultInteger.result}\n targetInstanceId: ${target.id}\n targetNamespaceName: ${targetRegistryEnterpriseNamespace.name}\n targetRegionId: ${default.regions[0].id}\n tagFilter: .*\n repoName: ${sourceRegistryEnterpriseRepo.name}\n targetRepoName: ${targetRegistryEnterpriseRepo.name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nContainer Registry Sync Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseSyncRule:RegistryEnterpriseSyncRule example \u003cinstance_id\u003e:\u003cnamespace_name\u003e:\u003crepo_sync_rule_id\u003e\n```\n\n",
+ "description": "Provides a Container Registry Sync Rule resource.\n\nFor information about Container Registry Sync Rule and how to use it, see [What is Sync Rule](https://www.alibabacloud.com/help/en/acr/developer-reference/api-cr-2018-12-01-createreposyncrule)\n\n\u003e **NOTE:** Available since v1.90.0.\n\n\u003e **NOTE:** You need to set your registry password in Container Registry console before use this resource.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst source = new alicloud.cr.RegistryEnterpriseInstance(\"source\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-source-${defaultInteger.result}`,\n});\nconst target = new alicloud.cr.RegistryEnterpriseInstance(\"target\", {\n paymentType: \"Subscription\",\n period: 1,\n renewPeriod: 0,\n renewalStatus: \"ManualRenewal\",\n instanceType: \"Advanced\",\n instanceName: `${name}-target-${defaultInteger.result}`,\n});\nconst sourceRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"source\", {\n instanceId: source.id,\n name: `${name}-${defaultInteger.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst targetRegistryEnterpriseNamespace = new alicloud.cs.RegistryEnterpriseNamespace(\"target\", {\n instanceId: target.id,\n name: `${name}-${defaultInteger.result}`,\n autoCreate: false,\n defaultVisibility: \"PUBLIC\",\n});\nconst sourceRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"source\", {\n instanceId: source.id,\n namespace: sourceRegistryEnterpriseNamespace.name,\n name: `${name}-${defaultInteger.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n});\nconst targetRegistryEnterpriseRepo = new alicloud.cs.RegistryEnterpriseRepo(\"target\", {\n instanceId: target.id,\n namespace: targetRegistryEnterpriseNamespace.name,\n name: `${name}-${defaultInteger.result}`,\n summary: \"this is summary of my new repo\",\n repoType: \"PUBLIC\",\n});\nconst defaultRegistryEnterpriseSyncRule = new alicloud.cs.RegistryEnterpriseSyncRule(\"default\", {\n instanceId: source.id,\n namespaceName: sourceRegistryEnterpriseNamespace.name,\n syncRuleName: `${name}-${defaultInteger.result}`,\n targetInstanceId: target.id,\n targetNamespaceName: targetRegistryEnterpriseNamespace.name,\n targetRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n tagFilter: \".*\",\n repoName: sourceRegistryEnterpriseRepo.name,\n targetRepoName: targetRegistryEnterpriseRepo.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nsource = alicloud.cr.RegistryEnterpriseInstance(\"source\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-source-{default_integer['result']}\")\ntarget = alicloud.cr.RegistryEnterpriseInstance(\"target\",\n payment_type=\"Subscription\",\n period=1,\n renew_period=0,\n renewal_status=\"ManualRenewal\",\n instance_type=\"Advanced\",\n instance_name=f\"{name}-target-{default_integer['result']}\")\nsource_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"source\",\n instance_id=source.id,\n name=f\"{name}-{default_integer['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\ntarget_registry_enterprise_namespace = alicloud.cs.RegistryEnterpriseNamespace(\"target\",\n instance_id=target.id,\n name=f\"{name}-{default_integer['result']}\",\n auto_create=False,\n default_visibility=\"PUBLIC\")\nsource_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"source\",\n instance_id=source.id,\n namespace=source_registry_enterprise_namespace.name,\n name=f\"{name}-{default_integer['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\")\ntarget_registry_enterprise_repo = alicloud.cs.RegistryEnterpriseRepo(\"target\",\n instance_id=target.id,\n namespace=target_registry_enterprise_namespace.name,\n name=f\"{name}-{default_integer['result']}\",\n summary=\"this is summary of my new repo\",\n repo_type=\"PUBLIC\")\ndefault_registry_enterprise_sync_rule = alicloud.cs.RegistryEnterpriseSyncRule(\"default\",\n instance_id=source.id,\n namespace_name=source_registry_enterprise_namespace.name,\n sync_rule_name=f\"{name}-{default_integer['result']}\",\n target_instance_id=target.id,\n target_namespace_name=target_registry_enterprise_namespace.name,\n target_region_id=default.regions[0].id,\n tag_filter=\".*\",\n repo_name=source_registry_enterprise_repo.name,\n target_repo_name=target_registry_enterprise_repo.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var source = new AliCloud.CR.RegistryEnterpriseInstance(\"source\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-source-{defaultInteger.Result}\",\n });\n\n var target = new AliCloud.CR.RegistryEnterpriseInstance(\"target\", new()\n {\n PaymentType = \"Subscription\",\n Period = 1,\n RenewPeriod = 0,\n RenewalStatus = \"ManualRenewal\",\n InstanceType = \"Advanced\",\n InstanceName = $\"{name}-target-{defaultInteger.Result}\",\n });\n\n var sourceRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"source\", new()\n {\n InstanceId = source.Id,\n Name = $\"{name}-{defaultInteger.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var targetRegistryEnterpriseNamespace = new AliCloud.CS.RegistryEnterpriseNamespace(\"target\", new()\n {\n InstanceId = target.Id,\n Name = $\"{name}-{defaultInteger.Result}\",\n AutoCreate = false,\n DefaultVisibility = \"PUBLIC\",\n });\n\n var sourceRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"source\", new()\n {\n InstanceId = source.Id,\n Namespace = sourceRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{defaultInteger.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n });\n\n var targetRegistryEnterpriseRepo = new AliCloud.CS.RegistryEnterpriseRepo(\"target\", new()\n {\n InstanceId = target.Id,\n Namespace = targetRegistryEnterpriseNamespace.Name,\n Name = $\"{name}-{defaultInteger.Result}\",\n Summary = \"this is summary of my new repo\",\n RepoType = \"PUBLIC\",\n });\n\n var defaultRegistryEnterpriseSyncRule = new AliCloud.CS.RegistryEnterpriseSyncRule(\"default\", new()\n {\n InstanceId = source.Id,\n NamespaceName = sourceRegistryEnterpriseNamespace.Name,\n SyncRuleName = $\"{name}-{defaultInteger.Result}\",\n TargetInstanceId = target.Id,\n TargetNamespaceName = targetRegistryEnterpriseNamespace.Name,\n TargetRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n TagFilter = \".*\",\n RepoName = sourceRegistryEnterpriseRepo.Name,\n TargetRepoName = targetRegistryEnterpriseRepo.Name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cr\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsource, err := cr.NewRegistryEnterpriseInstance(ctx, \"source\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-source-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttarget, err := cr.NewRegistryEnterpriseInstance(ctx, \"target\", \u0026cr.RegistryEnterpriseInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(0),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tInstanceType: pulumi.String(\"Advanced\"),\n\t\t\tInstanceName: pulumi.Sprintf(\"%v-target-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsourceRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"source\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttargetRegistryEnterpriseNamespace, err := cs.NewRegistryEnterpriseNamespace(ctx, \"target\", \u0026cs.RegistryEnterpriseNamespaceArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tAutoCreate: pulumi.Bool(false),\n\t\t\tDefaultVisibility: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsourceRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"source\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tNamespace: sourceRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttargetRegistryEnterpriseRepo, err := cs.NewRegistryEnterpriseRepo(ctx, \"target\", \u0026cs.RegistryEnterpriseRepoArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tNamespace: targetRegistryEnterpriseNamespace.Name,\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tSummary: pulumi.String(\"this is summary of my new repo\"),\n\t\t\tRepoType: pulumi.String(\"PUBLIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewRegistryEnterpriseSyncRule(ctx, \"default\", \u0026cs.RegistryEnterpriseSyncRuleArgs{\n\t\t\tInstanceId: source.ID(),\n\t\t\tNamespaceName: sourceRegistryEnterpriseNamespace.Name,\n\t\t\tSyncRuleName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tTargetInstanceId: target.ID(),\n\t\t\tTargetNamespaceName: targetRegistryEnterpriseNamespace.Name,\n\t\t\tTargetRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tTagFilter: pulumi.String(\".*\"),\n\t\t\tRepoName: sourceRegistryEnterpriseRepo.Name,\n\t\t\tTargetRepoName: targetRegistryEnterpriseRepo.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstance;\nimport com.pulumi.alicloud.cr.RegistryEnterpriseInstanceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespace;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseNamespaceArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepo;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseRepoArgs;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseSyncRule;\nimport com.pulumi.alicloud.cs.RegistryEnterpriseSyncRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var source = new RegistryEnterpriseInstance(\"source\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-source-%s\", name,defaultInteger.result()))\n .build());\n\n var target = new RegistryEnterpriseInstance(\"target\", RegistryEnterpriseInstanceArgs.builder()\n .paymentType(\"Subscription\")\n .period(1)\n .renewPeriod(0)\n .renewalStatus(\"ManualRenewal\")\n .instanceType(\"Advanced\")\n .instanceName(String.format(\"%s-target-%s\", name,defaultInteger.result()))\n .build());\n\n var sourceRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"sourceRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(source.id())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var targetRegistryEnterpriseNamespace = new RegistryEnterpriseNamespace(\"targetRegistryEnterpriseNamespace\", RegistryEnterpriseNamespaceArgs.builder()\n .instanceId(target.id())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .autoCreate(false)\n .defaultVisibility(\"PUBLIC\")\n .build());\n\n var sourceRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"sourceRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(source.id())\n .namespace(sourceRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .build());\n\n var targetRegistryEnterpriseRepo = new RegistryEnterpriseRepo(\"targetRegistryEnterpriseRepo\", RegistryEnterpriseRepoArgs.builder()\n .instanceId(target.id())\n .namespace(targetRegistryEnterpriseNamespace.name())\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .summary(\"this is summary of my new repo\")\n .repoType(\"PUBLIC\")\n .build());\n\n var defaultRegistryEnterpriseSyncRule = new RegistryEnterpriseSyncRule(\"defaultRegistryEnterpriseSyncRule\", RegistryEnterpriseSyncRuleArgs.builder()\n .instanceId(source.id())\n .namespaceName(sourceRegistryEnterpriseNamespace.name())\n .syncRuleName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .targetInstanceId(target.id())\n .targetNamespaceName(targetRegistryEnterpriseNamespace.name())\n .targetRegionId(default_.regions()[0].id())\n .tagFilter(\".*\")\n .repoName(sourceRegistryEnterpriseRepo.name())\n .targetRepoName(targetRegistryEnterpriseRepo.name())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n source:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-source-${defaultInteger.result}\n target:\n type: alicloud:cr:RegistryEnterpriseInstance\n properties:\n paymentType: Subscription\n period: 1\n renewPeriod: 0\n renewalStatus: ManualRenewal\n instanceType: Advanced\n instanceName: ${name}-target-${defaultInteger.result}\n sourceRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: source\n properties:\n instanceId: ${source.id}\n name: ${name}-${defaultInteger.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n targetRegistryEnterpriseNamespace:\n type: alicloud:cs:RegistryEnterpriseNamespace\n name: target\n properties:\n instanceId: ${target.id}\n name: ${name}-${defaultInteger.result}\n autoCreate: false\n defaultVisibility: PUBLIC\n sourceRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: source\n properties:\n instanceId: ${source.id}\n namespace: ${sourceRegistryEnterpriseNamespace.name}\n name: ${name}-${defaultInteger.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n targetRegistryEnterpriseRepo:\n type: alicloud:cs:RegistryEnterpriseRepo\n name: target\n properties:\n instanceId: ${target.id}\n namespace: ${targetRegistryEnterpriseNamespace.name}\n name: ${name}-${defaultInteger.result}\n summary: this is summary of my new repo\n repoType: PUBLIC\n defaultRegistryEnterpriseSyncRule:\n type: alicloud:cs:RegistryEnterpriseSyncRule\n name: default\n properties:\n instanceId: ${source.id}\n namespaceName: ${sourceRegistryEnterpriseNamespace.name}\n syncRuleName: ${name}-${defaultInteger.result}\n targetInstanceId: ${target.id}\n targetNamespaceName: ${targetRegistryEnterpriseNamespace.name}\n targetRegionId: ${default.regions[0].id}\n tagFilter: .*\n repoName: ${sourceRegistryEnterpriseRepo.name}\n targetRepoName: ${targetRegistryEnterpriseRepo.name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nContainer Registry Sync Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:cs/registryEnterpriseSyncRule:RegistryEnterpriseSyncRule example \u003cinstance_id\u003e:\u003cnamespace_name\u003e:\u003crepo_sync_rule_id\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -134634,7 +137263,7 @@
}
},
"alicloud:cs/serverlessKubernetes:ServerlessKubernetes": {
- "description": "This resource will help you to manager a Serverless Kubernetes Cluster, see [What is serverless kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-a-dedicated-kubernetes-cluster-that-supports-sandboxed-containers). The cluster is same as container service created by web console.\n\n\u003e **NOTE:** Available since v1.58.0.\n\n\u003e **NOTE:** Serverless Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating serverless kubernetes cluster need to install several packages and it will cost about 5 minutes. Please be patient.\n\n\u003e **NOTE:** The provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** If you want to manage serverless Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.162.0, support for creating professional serverless cluster.\n\n\u003e **NOTE:** From version 1.229.1, support to migrate basic serverless cluster to professional serverless cluster.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"ask-example-pro\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.2.0.0/21\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.2.1.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst serverless = new alicloud.cs.ServerlessKubernetes(\"serverless\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n vpcId: defaultNetwork.id,\n vswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n endpointPublicAccessEnabled: true,\n deletionProtection: false,\n timeZone: \"Asia/Shanghai\",\n serviceCidr: \"172.21.0.0/20\",\n tags: {\n \"k-aa\": \"v-aa\",\n \"k-bb\": \"v-bb\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"ask-example-pro\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.2.0.0/21\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"10.2.1.0/24\",\n zone_id=default.zones[0].id)\nserverless = alicloud.cs.ServerlessKubernetes(\"serverless\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n vpc_id=default_network.id,\n vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n endpoint_public_access_enabled=True,\n deletion_protection=False,\n time_zone=\"Asia/Shanghai\",\n service_cidr=\"172.21.0.0/20\",\n tags={\n \"k-aa\": \"v-aa\",\n \"k-bb\": \"v-bb\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"ask-example-pro\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.2.0.0/21\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.2.1.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var serverless = new AliCloud.CS.ServerlessKubernetes(\"serverless\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n VpcId = defaultNetwork.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n EndpointPublicAccessEnabled = true,\n DeletionProtection = false,\n TimeZone = \"Asia/Shanghai\",\n ServiceCidr = \"172.21.0.0/20\",\n Tags = \n {\n { \"k-aa\", \"v-aa\" },\n { \"k-bb\", \"v-bb\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"ask-example-pro\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.2.0.0/21\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.2.1.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewServerlessKubernetes(ctx, \"serverless\", \u0026cs.ServerlessKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tEndpointPublicAccessEnabled: pulumi.Bool(true),\n\t\t\tDeletionProtection: pulumi.Bool(false),\n\t\t\tTimeZone: pulumi.String(\"Asia/Shanghai\"),\n\t\t\tServiceCidr: pulumi.String(\"172.21.0.0/20\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"k-aa\": pulumi.String(\"v-aa\"),\n\t\t\t\t\"k-bb\": pulumi.String(\"v-bb\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ServerlessKubernetes;\nimport com.pulumi.alicloud.cs.ServerlessKubernetesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"ask-example-pro\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.2.0.0/21\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.2.1.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var serverless = new ServerlessKubernetes(\"serverless\", ServerlessKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .vpcId(defaultNetwork.id())\n .vswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .endpointPublicAccessEnabled(true)\n .deletionProtection(false)\n .timeZone(\"Asia/Shanghai\")\n .serviceCidr(\"172.21.0.0/20\")\n .tags(Map.ofEntries(\n Map.entry(\"k-aa\", \"v-aa\"),\n Map.entry(\"k-bb\", \"v-bb\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: ask-example-pro\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.2.0.0/21\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.2.1.0/24\n zoneId: ${default.zones[0].id}\n serverless:\n type: alicloud:cs:ServerlessKubernetes\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n vpcId: ${defaultNetwork.id}\n vswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n endpointPublicAccessEnabled: true\n deletionProtection: false\n timeZone: Asia/Shanghai\n serviceCidr: 172.21.0.0/20\n tags:\n k-aa: v-aa\n k-bb: v-bb\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nServerless Kubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/serverlessKubernetes:ServerlessKubernetes main ce4273f9156874b46bb\n```\n\n",
+ "description": "This resource will help you to manager a Serverless Kubernetes Cluster, see [What is serverless kubernetes](https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/developer-reference/create-a-dedicated-kubernetes-cluster-that-supports-sandboxed-containers). The cluster is same as container service created by web console.\n\n\u003e **NOTE:** Available since v1.58.0.\n\n\u003e **NOTE:** Serverless Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster.\nA Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the\nVPC, you can set \u003cspan pulumi-lang-nodejs=\"`newNatGateway`\" pulumi-lang-dotnet=\"`NewNatGateway`\" pulumi-lang-go=\"`newNatGateway`\" pulumi-lang-python=\"`new_nat_gateway`\" pulumi-lang-yaml=\"`newNatGateway`\" pulumi-lang-java=\"`newNatGateway`\"\u003e`new_nat_gateway`\u003c/span\u003e to \"true\" to create one automatically.\n\n\u003e **NOTE:** Creating serverless kubernetes cluster need to install several packages and it will cost about 5 minutes. Please be patient.\n\n\u003e **NOTE:** The provider supports to download kube config, client certificate, client key and cluster ca certificate\nafter creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'.\n\n\u003e **NOTE:** If you want to manage serverless Kubernetes, you can use Kubernetes Provider.\n\n\u003e **NOTE:** You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource.\nPlease refer to the `Authorization management` and `Cluster management` sections in the [Document Center](https://www.alibabacloud.com/help/doc-detail/86488.htm).\n\n\u003e **NOTE:** From version 1.162.0, support for creating professional serverless cluster.\n\n\u003e **NOTE:** From version 1.229.1, support to migrate basic serverless cluster to professional serverless cluster.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"ask-example-pro\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.2.0.0/21\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.2.1.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst serverless = new alicloud.cs.ServerlessKubernetes(\"serverless\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n vpcId: defaultNetwork.id,\n vswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n endpointPublicAccessEnabled: true,\n deletionProtection: false,\n timeZone: \"Asia/Shanghai\",\n serviceCidr: \"172.21.0.0/20\",\n tags: {\n \"k-aa\": \"v-aa\",\n \"k-bb\": \"v-bb\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"ask-example-pro\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.2.0.0/21\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"10.2.1.0/24\",\n zone_id=default.zones[0].id)\nserverless = alicloud.cs.ServerlessKubernetes(\"serverless\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n vpc_id=default_network.id,\n vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n endpoint_public_access_enabled=True,\n deletion_protection=False,\n time_zone=\"Asia/Shanghai\",\n service_cidr=\"172.21.0.0/20\",\n tags={\n \"k-aa\": \"v-aa\",\n \"k-bb\": \"v-bb\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"ask-example-pro\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.2.0.0/21\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.2.1.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var serverless = new AliCloud.CS.ServerlessKubernetes(\"serverless\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n VpcId = defaultNetwork.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n EndpointPublicAccessEnabled = true,\n DeletionProtection = false,\n TimeZone = \"Asia/Shanghai\",\n ServiceCidr = \"172.21.0.0/20\",\n Tags = \n {\n { \"k-aa\", \"v-aa\" },\n { \"k-bb\", \"v-bb\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"ask-example-pro\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.2.0.0/21\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.2.1.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cs.NewServerlessKubernetes(ctx, \"serverless\", \u0026cs.ServerlessKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tEndpointPublicAccessEnabled: pulumi.Bool(true),\n\t\t\tDeletionProtection: pulumi.Bool(false),\n\t\t\tTimeZone: pulumi.String(\"Asia/Shanghai\"),\n\t\t\tServiceCidr: pulumi.String(\"172.21.0.0/20\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"k-aa\": pulumi.String(\"v-aa\"),\n\t\t\t\t\"k-bb\": pulumi.String(\"v-bb\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ServerlessKubernetes;\nimport com.pulumi.alicloud.cs.ServerlessKubernetesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"ask-example-pro\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.2.0.0/21\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.2.1.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var serverless = new ServerlessKubernetes(\"serverless\", ServerlessKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .vpcId(defaultNetwork.id())\n .vswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .endpointPublicAccessEnabled(true)\n .deletionProtection(false)\n .timeZone(\"Asia/Shanghai\")\n .serviceCidr(\"172.21.0.0/20\")\n .tags(Map.ofEntries(\n Map.entry(\"k-aa\", \"v-aa\"),\n Map.entry(\"k-bb\", \"v-bb\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: ask-example-pro\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.2.0.0/21\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.2.1.0/24\n zoneId: ${default.zones[0].id}\n serverless:\n type: alicloud:cs:ServerlessKubernetes\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n vpcId: ${defaultNetwork.id}\n vswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n endpointPublicAccessEnabled: true\n deletionProtection: false\n timeZone: Asia/Shanghai\n serviceCidr: 172.21.0.0/20\n tags:\n k-aa: v-aa\n k-bb: v-bb\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nServerless Kubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.\n\n```sh\n$ pulumi import alicloud:cs/serverlessKubernetes:ServerlessKubernetes main ce4273f9156874b46bb\n```\n\n",
"properties": {
"addons": {
"type": "array",
@@ -135338,7 +137967,7 @@
}
},
"alicloud:das/switchDasPro:SwitchDasPro": {
- "description": "Provides a DAS Switch Das Pro resource.\n\nFor information about DAS Switch Das Pro and how to use it, see [What is Switch Das Pro](https://www.alibabacloud.com/help/en/database-autonomy-service/latest/enabledaspro).\n\n\u003e **NOTE:** Deprecated since v1.249.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.249.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.getAccount({});\nconst defaultGetNodeClasses = alicloud.polardb.getNodeClasses({\n dbType: \"MySQL\",\n dbVersion: \"8.0\",\n payType: \"PostPaid\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: defaultGetNodeClasses.then(defaultGetNodeClasses =\u003e defaultGetNodeClasses.classes?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.polardb.Cluster(\"default\", {\n dbType: \"MySQL\",\n dbVersion: \"8.0\",\n dbNodeClass: \"polar.mysql.x4.large\",\n payType: \"PostPaid\",\n vswitchId: defaultSwitch.id,\n description: name,\n dbClusterIpArrays: [{\n dbClusterIpArrayName: \"default\",\n securityIps: [\n \"1.2.3.4\",\n \"1.2.3.5\",\n ],\n }],\n});\nconst defaultSwitchDasPro = new alicloud.das.SwitchDasPro(\"default\", {\n instanceId: defaultCluster.id,\n sqlRetention: 30,\n userId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.get_account()\ndefault_get_node_classes = alicloud.polardb.get_node_classes(db_type=\"MySQL\",\n db_version=\"8.0\",\n pay_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default_get_node_classes.classes[0].zone_id,\n vswitch_name=name)\ndefault_cluster = alicloud.polardb.Cluster(\"default\",\n db_type=\"MySQL\",\n db_version=\"8.0\",\n db_node_class=\"polar.mysql.x4.large\",\n pay_type=\"PostPaid\",\n vswitch_id=default_switch.id,\n description=name,\n db_cluster_ip_arrays=[{\n \"db_cluster_ip_array_name\": \"default\",\n \"security_ips\": [\n \"1.2.3.4\",\n \"1.2.3.5\",\n ],\n }])\ndefault_switch_das_pro = alicloud.das.SwitchDasPro(\"default\",\n instance_id=default_cluster.id,\n sql_retention=30,\n user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetNodeClasses = AliCloud.PolarDB.GetNodeClasses.Invoke(new()\n {\n DbType = \"MySQL\",\n DbVersion = \"8.0\",\n PayType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = defaultGetNodeClasses.Apply(getNodeClassesResult =\u003e getNodeClassesResult.Classes[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.PolarDB.Cluster(\"default\", new()\n {\n DbType = \"MySQL\",\n DbVersion = \"8.0\",\n DbNodeClass = \"polar.mysql.x4.large\",\n PayType = \"PostPaid\",\n VswitchId = defaultSwitch.Id,\n Description = name,\n DbClusterIpArrays = new[]\n {\n new AliCloud.PolarDB.Inputs.ClusterDbClusterIpArrayArgs\n {\n DbClusterIpArrayName = \"default\",\n SecurityIps = new[]\n {\n \"1.2.3.4\",\n \"1.2.3.5\",\n },\n },\n },\n });\n\n var defaultSwitchDasPro = new AliCloud.Das.SwitchDasPro(\"default\", new()\n {\n InstanceId = defaultCluster.Id,\n SqlRetention = 30,\n UserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/das\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/polardb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNodeClasses, err := polardb.GetNodeClasses(ctx, \u0026polardb.GetNodeClassesArgs{\n\t\t\tDbType: pulumi.StringRef(\"MySQL\"),\n\t\t\tDbVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tPayType: \"PostPaid\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetNodeClasses.Classes[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := polardb.NewCluster(ctx, \"default\", \u0026polardb.ClusterArgs{\n\t\t\tDbType: pulumi.String(\"MySQL\"),\n\t\t\tDbVersion: pulumi.String(\"8.0\"),\n\t\t\tDbNodeClass: pulumi.String(\"polar.mysql.x4.large\"),\n\t\t\tPayType: pulumi.String(\"PostPaid\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDbClusterIpArrays: polardb.ClusterDbClusterIpArrayArray{\n\t\t\t\t\u0026polardb.ClusterDbClusterIpArrayArgs{\n\t\t\t\t\tDbClusterIpArrayName: pulumi.String(\"default\"),\n\t\t\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.2.3.4\"),\n\t\t\t\t\t\tpulumi.String(\"1.2.3.5\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = das.NewSwitchDasPro(ctx, \"default\", \u0026das.SwitchDasProArgs{\n\t\t\tInstanceId: defaultCluster.ID(),\n\t\t\tSqlRetention: pulumi.Int(30),\n\t\t\tUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.polardb.PolardbFunctions;\nimport com.pulumi.alicloud.polardb.inputs.GetNodeClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.polardb.Cluster;\nimport com.pulumi.alicloud.polardb.ClusterArgs;\nimport com.pulumi.alicloud.polardb.inputs.ClusterDbClusterIpArrayArgs;\nimport com.pulumi.alicloud.das.SwitchDasPro;\nimport com.pulumi.alicloud.das.SwitchDasProArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetNodeClasses = PolardbFunctions.getNodeClasses(GetNodeClassesArgs.builder()\n .dbType(\"MySQL\")\n .dbVersion(\"8.0\")\n .payType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(defaultGetNodeClasses.classes()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .dbType(\"MySQL\")\n .dbVersion(\"8.0\")\n .dbNodeClass(\"polar.mysql.x4.large\")\n .payType(\"PostPaid\")\n .vswitchId(defaultSwitch.id())\n .description(name)\n .dbClusterIpArrays(ClusterDbClusterIpArrayArgs.builder()\n .dbClusterIpArrayName(\"default\")\n .securityIps( \n \"1.2.3.4\",\n \"1.2.3.5\")\n .build())\n .build());\n\n var defaultSwitchDasPro = new SwitchDasPro(\"defaultSwitchDasPro\", SwitchDasProArgs.builder()\n .instanceId(defaultCluster.id())\n .sqlRetention(30)\n .userId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexample\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${defaultGetNodeClasses.classes[0].zoneId}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:polardb:Cluster\n name: default\n properties:\n dbType: MySQL\n dbVersion: '8.0'\n dbNodeClass: polar.mysql.x4.large\n payType: PostPaid\n vswitchId: ${defaultSwitch.id}\n description: ${name}\n dbClusterIpArrays:\n - dbClusterIpArrayName: default\n securityIps:\n - 1.2.3.4\n - 1.2.3.5\n defaultSwitchDasPro:\n type: alicloud:das:SwitchDasPro\n name: default\n properties:\n instanceId: ${defaultCluster.id}\n sqlRetention: 30\n userId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetNodeClasses:\n fn::invoke:\n function: alicloud:polardb:getNodeClasses\n arguments:\n dbType: MySQL\n dbVersion: '8.0'\n payType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDAS Switch Das Pro can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:das/switchDasPro:SwitchDasPro example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DAS Switch Das Pro resource.\n\nFor information about DAS Switch Das Pro and how to use it, see [What is Switch Das Pro](https://www.alibabacloud.com/help/en/database-autonomy-service/latest/enabledaspro).\n\n\u003e **NOTE:** Deprecated since v1.249.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.249.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = alicloud.getAccount({});\nconst defaultGetNodeClasses = alicloud.polardb.getNodeClasses({\n dbType: \"MySQL\",\n dbVersion: \"8.0\",\n payType: \"PostPaid\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: defaultGetNodeClasses.then(defaultGetNodeClasses =\u003e defaultGetNodeClasses.classes?.[0]?.zoneId),\n vswitchName: name,\n});\nconst defaultCluster = new alicloud.polardb.Cluster(\"default\", {\n dbType: \"MySQL\",\n dbVersion: \"8.0\",\n dbNodeClass: \"polar.mysql.x4.large\",\n payType: \"PostPaid\",\n vswitchId: defaultSwitch.id,\n description: name,\n dbClusterIpArrays: [{\n dbClusterIpArrayName: \"default\",\n securityIps: [\n \"1.2.3.4\",\n \"1.2.3.5\",\n ],\n }],\n});\nconst defaultSwitchDasPro = new alicloud.das.SwitchDasPro(\"default\", {\n instanceId: defaultCluster.id,\n sqlRetention: 30,\n userId: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.get_account()\ndefault_get_node_classes = alicloud.polardb.get_node_classes(db_type=\"MySQL\",\n db_version=\"8.0\",\n pay_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default_get_node_classes.classes[0].zone_id,\n vswitch_name=name)\ndefault_cluster = alicloud.polardb.Cluster(\"default\",\n db_type=\"MySQL\",\n db_version=\"8.0\",\n db_node_class=\"polar.mysql.x4.large\",\n pay_type=\"PostPaid\",\n vswitch_id=default_switch.id,\n description=name,\n db_cluster_ip_arrays=[{\n \"db_cluster_ip_array_name\": \"default\",\n \"security_ips\": [\n \"1.2.3.4\",\n \"1.2.3.5\",\n ],\n }])\ndefault_switch_das_pro = alicloud.das.SwitchDasPro(\"default\",\n instance_id=default_cluster.id,\n sql_retention=30,\n user_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultGetNodeClasses = AliCloud.PolarDB.GetNodeClasses.Invoke(new()\n {\n DbType = \"MySQL\",\n DbVersion = \"8.0\",\n PayType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = defaultGetNodeClasses.Apply(getNodeClassesResult =\u003e getNodeClassesResult.Classes[0]?.ZoneId),\n VswitchName = name,\n });\n\n var defaultCluster = new AliCloud.PolarDB.Cluster(\"default\", new()\n {\n DbType = \"MySQL\",\n DbVersion = \"8.0\",\n DbNodeClass = \"polar.mysql.x4.large\",\n PayType = \"PostPaid\",\n VswitchId = defaultSwitch.Id,\n Description = name,\n DbClusterIpArrays = new[]\n {\n new AliCloud.PolarDB.Inputs.ClusterDbClusterIpArrayArgs\n {\n DbClusterIpArrayName = \"default\",\n SecurityIps = new[]\n {\n \"1.2.3.4\",\n \"1.2.3.5\",\n },\n },\n },\n });\n\n var defaultSwitchDasPro = new AliCloud.Das.SwitchDasPro(\"default\", new()\n {\n InstanceId = defaultCluster.Id,\n SqlRetention = 30,\n UserId = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/das\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/polardb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNodeClasses, err := polardb.GetNodeClasses(ctx, \u0026polardb.GetNodeClassesArgs{\n\t\t\tDbType: pulumi.StringRef(\"MySQL\"),\n\t\t\tDbVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tPayType: \"PostPaid\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(defaultGetNodeClasses.Classes[0].ZoneId),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := polardb.NewCluster(ctx, \"default\", \u0026polardb.ClusterArgs{\n\t\t\tDbType: pulumi.String(\"MySQL\"),\n\t\t\tDbVersion: pulumi.String(\"8.0\"),\n\t\t\tDbNodeClass: pulumi.String(\"polar.mysql.x4.large\"),\n\t\t\tPayType: pulumi.String(\"PostPaid\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDbClusterIpArrays: polardb.ClusterDbClusterIpArrayArray{\n\t\t\t\t\u0026polardb.ClusterDbClusterIpArrayArgs{\n\t\t\t\t\tDbClusterIpArrayName: pulumi.String(\"default\"),\n\t\t\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.2.3.4\"),\n\t\t\t\t\t\tpulumi.String(\"1.2.3.5\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = das.NewSwitchDasPro(ctx, \"default\", \u0026das.SwitchDasProArgs{\n\t\t\tInstanceId: defaultCluster.ID(),\n\t\t\tSqlRetention: pulumi.Int(30),\n\t\t\tUserId: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.polardb.PolardbFunctions;\nimport com.pulumi.alicloud.polardb.inputs.GetNodeClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.polardb.Cluster;\nimport com.pulumi.alicloud.polardb.ClusterArgs;\nimport com.pulumi.alicloud.polardb.inputs.ClusterDbClusterIpArrayArgs;\nimport com.pulumi.alicloud.das.SwitchDasPro;\nimport com.pulumi.alicloud.das.SwitchDasProArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetNodeClasses = PolardbFunctions.getNodeClasses(GetNodeClassesArgs.builder()\n .dbType(\"MySQL\")\n .dbVersion(\"8.0\")\n .payType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(defaultGetNodeClasses.classes()[0].zoneId())\n .vswitchName(name)\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .dbType(\"MySQL\")\n .dbVersion(\"8.0\")\n .dbNodeClass(\"polar.mysql.x4.large\")\n .payType(\"PostPaid\")\n .vswitchId(defaultSwitch.id())\n .description(name)\n .dbClusterIpArrays(ClusterDbClusterIpArrayArgs.builder()\n .dbClusterIpArrayName(\"default\")\n .securityIps( \n \"1.2.3.4\",\n \"1.2.3.5\")\n .build())\n .build());\n\n var defaultSwitchDasPro = new SwitchDasPro(\"defaultSwitchDasPro\", SwitchDasProArgs.builder()\n .instanceId(defaultCluster.id())\n .sqlRetention(30)\n .userId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexample\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${defaultGetNodeClasses.classes[0].zoneId}\n vswitchName: ${name}\n defaultCluster:\n type: alicloud:polardb:Cluster\n name: default\n properties:\n dbType: MySQL\n dbVersion: '8.0'\n dbNodeClass: polar.mysql.x4.large\n payType: PostPaid\n vswitchId: ${defaultSwitch.id}\n description: ${name}\n dbClusterIpArrays:\n - dbClusterIpArrayName: default\n securityIps:\n - 1.2.3.4\n - 1.2.3.5\n defaultSwitchDasPro:\n type: alicloud:das:SwitchDasPro\n name: default\n properties:\n instanceId: ${defaultCluster.id}\n sqlRetention: 30\n userId: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetNodeClasses:\n fn::invoke:\n function: alicloud:polardb:getNodeClasses\n arguments:\n dbType: MySQL\n dbVersion: '8.0'\n payType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDAS Switch Das Pro can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:das/switchDasPro:SwitchDasPro example \u003cid\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -135410,7 +138039,7 @@
}
},
"alicloud:databasefilesystem/autoSnapShotPolicy:AutoSnapShotPolicy": {
- "description": "Provides a Dbfs Auto Snap Shot Policy resource.\n\nFor information about Dbfs Auto Snap Shot Policy and how to use it.\n\n\u003e **NOTE:** Available since v1.202.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.databasefilesystem.AutoSnapShotPolicy(\"default\", {\n timePoints: [\"01\"],\n policyName: \"tf-example\",\n retentionDays: 1,\n repeatWeekdays: [\"2\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.databasefilesystem.AutoSnapShotPolicy(\"default\",\n time_points=[\"01\"],\n policy_name=\"tf-example\",\n retention_days=1,\n repeat_weekdays=[\"2\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.DatabaseFilesystem.AutoSnapShotPolicy(\"default\", new()\n {\n TimePoints = new[]\n {\n \"01\",\n },\n PolicyName = \"tf-example\",\n RetentionDays = 1,\n RepeatWeekdays = new[]\n {\n \"2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasefilesystem.NewAutoSnapShotPolicy(ctx, \"default\", \u0026databasefilesystem.AutoSnapShotPolicyArgs{\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"01\"),\n\t\t\t},\n\t\t\tPolicyName: pulumi.String(\"tf-example\"),\n\t\t\tRetentionDays: pulumi.Int(1),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.AutoSnapShotPolicy;\nimport com.pulumi.alicloud.databasefilesystem.AutoSnapShotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new AutoSnapShotPolicy(\"default\", AutoSnapShotPolicyArgs.builder()\n .timePoints(\"01\")\n .policyName(\"tf-example\")\n .retentionDays(1)\n .repeatWeekdays(\"2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:databasefilesystem:AutoSnapShotPolicy\n properties:\n timePoints:\n - '01'\n policyName: tf-example\n retentionDays: 1\n repeatWeekdays:\n - '2'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDbfs Auto Snap Shot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/autoSnapShotPolicy:AutoSnapShotPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Dbfs Auto Snap Shot Policy resource.\n\nFor information about Dbfs Auto Snap Shot Policy and how to use it.\n\n\u003e **NOTE:** Available since v1.202.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.databasefilesystem.AutoSnapShotPolicy(\"default\", {\n timePoints: [\"01\"],\n policyName: \"tf-example\",\n retentionDays: 1,\n repeatWeekdays: [\"2\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.databasefilesystem.AutoSnapShotPolicy(\"default\",\n time_points=[\"01\"],\n policy_name=\"tf-example\",\n retention_days=1,\n repeat_weekdays=[\"2\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.DatabaseFilesystem.AutoSnapShotPolicy(\"default\", new()\n {\n TimePoints = new[]\n {\n \"01\",\n },\n PolicyName = \"tf-example\",\n RetentionDays = 1,\n RepeatWeekdays = new[]\n {\n \"2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasefilesystem.NewAutoSnapShotPolicy(ctx, \"default\", \u0026databasefilesystem.AutoSnapShotPolicyArgs{\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"01\"),\n\t\t\t},\n\t\t\tPolicyName: pulumi.String(\"tf-example\"),\n\t\t\tRetentionDays: pulumi.Int(1),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.AutoSnapShotPolicy;\nimport com.pulumi.alicloud.databasefilesystem.AutoSnapShotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new AutoSnapShotPolicy(\"default\", AutoSnapShotPolicyArgs.builder()\n .timePoints(\"01\")\n .policyName(\"tf-example\")\n .retentionDays(1)\n .repeatWeekdays(\"2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:databasefilesystem:AutoSnapShotPolicy\n properties:\n timePoints:\n - '01'\n policyName: tf-example\n retentionDays: 1\n repeatWeekdays:\n - '2'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDbfs Auto Snap Shot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/autoSnapShotPolicy:AutoSnapShotPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"appliedDbfsNumber": {
"type": "integer",
@@ -135555,7 +138184,7 @@
}
},
"alicloud:databasefilesystem/instance:Instance": {
- "description": "Provides a DBFS Dbfs Instance resource. An instance of a database file system is equivalent to a file system and can store data of file types.\n\nFor information about DBFS Dbfs Instance and how to use it, see [What is Dbfs Instance](https://next.api.alibabacloud.com/document/DBFS/2020-04-18/CreateDbfs).\n\n\u003e **NOTE:** Need to contact us open whitelist before you can use the resource.\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.databasefilesystem.Instance(\"example\", {\n category: \"standard\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n fsName: name,\n size: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.databasefilesystem.Instance(\"example\",\n category=\"standard\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n fs_name=name,\n size=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.DatabaseFilesystem.Instance(\"example\", new()\n {\n Category = \"standard\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n FsName = name,\n Size = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := databasefilesystem.NewInstance(ctx, \"example\", \u0026databasefilesystem.InstanceArgs{\n\t\t\tCategory: pulumi.String(\"standard\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tFsName: pulumi.String(name),\n\t\t\tSize: pulumi.Int(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.Instance;\nimport com.pulumi.alicloud.databasefilesystem.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .category(\"standard\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .fsName(name)\n .size(100)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:databasefilesystem:Instance\n properties:\n category: standard\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n fsName: ${name}\n size: 100\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDBFS Dbfs Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DBFS Dbfs Instance resource. An instance of a database file system is equivalent to a file system and can store data of file types.\n\nFor information about DBFS Dbfs Instance and how to use it, see [What is Dbfs Instance](https://next.api.alibabacloud.com/document/DBFS/2020-04-18/CreateDbfs).\n\n\u003e **NOTE:** Need to contact us open whitelist before you can use the resource.\n\n\u003e **NOTE:** Available since v1.136.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = new alicloud.databasefilesystem.Instance(\"example\", {\n category: \"standard\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n fsName: name,\n size: 100,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.databasefilesystem.Instance(\"example\",\n category=\"standard\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n fs_name=name,\n size=100)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = new AliCloud.DatabaseFilesystem.Instance(\"example\", new()\n {\n Category = \"standard\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n FsName = name,\n Size = 100,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := databasefilesystem.NewInstance(ctx, \"example\", \u0026databasefilesystem.InstanceArgs{\n\t\t\tCategory: pulumi.String(\"standard\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tFsName: pulumi.String(name),\n\t\t\tSize: pulumi.Int(100),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.Instance;\nimport com.pulumi.alicloud.databasefilesystem.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var example = new Instance(\"example\", InstanceArgs.builder()\n .category(\"standard\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .fsName(name)\n .size(100)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:databasefilesystem:Instance\n properties:\n category: standard\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n fsName: ${name}\n size: 100\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDBFS Dbfs Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"advancedFeatures": {
"type": "string",
@@ -135843,7 +138472,7 @@
}
},
"alicloud:databasefilesystem/instanceAttachment:InstanceAttachment": {
- "description": "Provides a Database File System (DBFS) Instance Attachment resource.\n\nFor information about Database File System (DBFS) Instance Attachment and how to use it, see [What is Snapshot](https://help.aliyun.com/zh/dbfs/developer-reference/api-dbfs-2020-04-18-attachdbfs).\n\n\u003e **NOTE:** Available since v1.156.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst zoneId = \"cn-hangzhou-i\";\nconst _default = alicloud.databasefilesystem.getInstances({});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n availabilityZone: zoneId,\n instanceTypeFamily: \"ecs.g7se\",\n});\nconst defaultGetImages = defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e alicloud.ecs.getImages({\n instanceType: defaultGetInstanceTypes.instanceTypes?.[0]?.id,\n nameRegex: \"^aliyun_2_19\",\n owners: \"system\",\n}));\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: zoneId,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_essd\",\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n instanceName: name,\n});\nconst defaultInstanceAttachment = new alicloud.databasefilesystem.InstanceAttachment(\"default\", {\n instanceId: _default.then(_default =\u003e _default.instances?.[0]?.id),\n ecsId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nzone_id = \"cn-hangzhou-i\"\ndefault = alicloud.databasefilesystem.get_instances()\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=zone_id,\n instance_type_family=\"ecs.g7se\")\ndefault_get_images = alicloud.ecs.get_images(instance_type=default_get_instance_types.instance_types[0].id,\n name_regex=\"^aliyun_2_19\",\n owners=\"system\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=zone_id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_essd\",\n vswitch_id=default_get_switches.ids[0],\n instance_name=name)\ndefault_instance_attachment = alicloud.databasefilesystem.InstanceAttachment(\"default\",\n instance_id=default.instances[0].id,\n ecs_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var zoneId = \"cn-hangzhou-i\";\n\n var @default = AliCloud.DatabaseFilesystem.GetInstances.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = zoneId,\n InstanceTypeFamily = \"ecs.g7se\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n NameRegex = \"^aliyun_2_19\",\n Owners = \"system\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = zoneId,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_essd\",\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n InstanceName = name,\n });\n\n var defaultInstanceAttachment = new AliCloud.DatabaseFilesystem.InstanceAttachment(\"default\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.Id)),\n EcsId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nzoneId := \"cn-hangzhou-i\";\n_default, err := databasefilesystem.GetInstances(ctx, \u0026databasefilesystem.GetInstancesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(zoneId),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.g7se\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nInstanceType: pulumi.StringRef(defaultGetInstanceTypes.InstanceTypes[0].Id),\nNameRegex: pulumi.StringRef(\"^aliyun_2_19\"),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\nNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\nVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\nZoneId: pulumi.StringRef(zoneId),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_essd\"),\nVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\nInstanceName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = databasefilesystem.NewInstanceAttachment(ctx, \"default\", \u0026databasefilesystem.InstanceAttachmentArgs{\nInstanceId: pulumi.String(_default.Instances[0].Id),\nEcsId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.DatabasefilesystemFunctions;\nimport com.pulumi.alicloud.databasefilesystem.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.databasefilesystem.InstanceAttachment;\nimport com.pulumi.alicloud.databasefilesystem.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var zoneId = \"cn-hangzhou-i\";\n\n final var default = DatabasefilesystemFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(zoneId)\n .instanceTypeFamily(\"ecs.g7se\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .nameRegex(\"^aliyun_2_19\")\n .owners(\"system\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(zoneId)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_essd\")\n .vswitchId(defaultGetSwitches.ids()[0])\n .instanceName(name)\n .build());\n\n var defaultInstanceAttachment = new InstanceAttachment(\"defaultInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(default_.instances()[0].id())\n .ecsId(defaultInstance.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase File System (DBFS) Instance Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/instanceAttachment:InstanceAttachment example \u003cinstance_id\u003e:\u003cecs_id\u003e\n```\n\n",
+ "description": "Provides a Database File System (DBFS) Instance Attachment resource.\n\nFor information about Database File System (DBFS) Instance Attachment and how to use it, see [What is Snapshot](https://help.aliyun.com/zh/dbfs/developer-reference/api-dbfs-2020-04-18-attachdbfs).\n\n\u003e **NOTE:** Available since v1.156.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst zoneId = \"cn-hangzhou-i\";\nconst _default = alicloud.databasefilesystem.getInstances({});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n availabilityZone: zoneId,\n instanceTypeFamily: \"ecs.g7se\",\n});\nconst defaultGetImages = defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e alicloud.ecs.getImages({\n instanceType: defaultGetInstanceTypes.instanceTypes?.[0]?.id,\n nameRegex: \"^aliyun_2_19\",\n owners: \"system\",\n}));\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: zoneId,\n}));\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_essd\",\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n instanceName: name,\n});\nconst defaultInstanceAttachment = new alicloud.databasefilesystem.InstanceAttachment(\"default\", {\n instanceId: _default.then(_default =\u003e _default.instances?.[0]?.id),\n ecsId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nzone_id = \"cn-hangzhou-i\"\ndefault = alicloud.databasefilesystem.get_instances()\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=zone_id,\n instance_type_family=\"ecs.g7se\")\ndefault_get_images = alicloud.ecs.get_images(instance_type=default_get_instance_types.instance_types[0].id,\n name_regex=\"^aliyun_2_19\",\n owners=\"system\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=zone_id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_essd\",\n vswitch_id=default_get_switches.ids[0],\n instance_name=name)\ndefault_instance_attachment = alicloud.databasefilesystem.InstanceAttachment(\"default\",\n instance_id=default.instances[0].id,\n ecs_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var zoneId = \"cn-hangzhou-i\";\n\n var @default = AliCloud.DatabaseFilesystem.GetInstances.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = zoneId,\n InstanceTypeFamily = \"ecs.g7se\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n NameRegex = \"^aliyun_2_19\",\n Owners = \"system\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = zoneId,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_essd\",\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n InstanceName = name,\n });\n\n var defaultInstanceAttachment = new AliCloud.DatabaseFilesystem.InstanceAttachment(\"default\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.Id)),\n EcsId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\nzoneId := \"cn-hangzhou-i\";\n_default, err := databasefilesystem.GetInstances(ctx, \u0026databasefilesystem.GetInstancesArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(zoneId),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.g7se\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nInstanceType: pulumi.StringRef(defaultGetInstanceTypes.InstanceTypes[0].Id),\nNameRegex: pulumi.StringRef(\"^aliyun_2_19\"),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\nNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\nVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\nZoneId: pulumi.StringRef(zoneId),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_essd\"),\nVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\nInstanceName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\n_, err = databasefilesystem.NewInstanceAttachment(ctx, \"default\", \u0026databasefilesystem.InstanceAttachmentArgs{\nInstanceId: pulumi.String(_default.Instances[0].Id),\nEcsId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.DatabasefilesystemFunctions;\nimport com.pulumi.alicloud.databasefilesystem.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.databasefilesystem.InstanceAttachment;\nimport com.pulumi.alicloud.databasefilesystem.InstanceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var zoneId = \"cn-hangzhou-i\";\n\n final var default = DatabasefilesystemFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(zoneId)\n .instanceTypeFamily(\"ecs.g7se\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .nameRegex(\"^aliyun_2_19\")\n .owners(\"system\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(zoneId)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_essd\")\n .vswitchId(defaultGetSwitches.ids()[0])\n .instanceName(name)\n .build());\n\n var defaultInstanceAttachment = new InstanceAttachment(\"defaultInstanceAttachment\", InstanceAttachmentArgs.builder()\n .instanceId(default_.instances()[0].id())\n .ecsId(defaultInstance.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatabase File System (DBFS) Instance Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/instanceAttachment:InstanceAttachment example \u003cinstance_id\u003e:\u003cecs_id\u003e\n```\n\n",
"properties": {
"ecsId": {
"type": "string",
@@ -135901,7 +138530,7 @@
}
},
"alicloud:databasefilesystem/serviceLinkedRole:ServiceLinkedRole": {
- "description": "Using this data source can create Dbfs service-linked roles(SLR). Dbfs may need to access another Alibaba Cloud service to implement a specific feature. In this case, Dbfs must assume a specific service-linked role, which is a Resource Access Management (RAM) role, to obtain permissions to access another Alibaba Cloud service. \n\nFor information about Dbfs service-linked roles(SLR) and how to use it, see [What is service-linked roles](https://www.alibabacloud.com/help/en/resource-management/resource-group/developer-reference/api-resourcemanager-2020-03-31-createservicelinkedrole-rg).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst serviceLinkedRole = new alicloud.databasefilesystem.ServiceLinkedRole(\"service_linked_role\", {productName: \"AliyunServiceRoleForDbfs\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nservice_linked_role = alicloud.databasefilesystem.ServiceLinkedRole(\"service_linked_role\", product_name=\"AliyunServiceRoleForDbfs\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var serviceLinkedRole = new AliCloud.DatabaseFilesystem.ServiceLinkedRole(\"service_linked_role\", new()\n {\n ProductName = \"AliyunServiceRoleForDbfs\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasefilesystem.NewServiceLinkedRole(ctx, \"service_linked_role\", \u0026databasefilesystem.ServiceLinkedRoleArgs{\n\t\t\tProductName: pulumi.String(\"AliyunServiceRoleForDbfs\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.ServiceLinkedRole;\nimport com.pulumi.alicloud.databasefilesystem.ServiceLinkedRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var serviceLinkedRole = new ServiceLinkedRole(\"serviceLinkedRole\", ServiceLinkedRoleArgs.builder()\n .productName(\"AliyunServiceRoleForDbfs\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n serviceLinkedRole:\n type: alicloud:databasefilesystem:ServiceLinkedRole\n name: service_linked_role\n properties:\n productName: AliyunServiceRoleForDbfs\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDbfs service-linked roles(SLR) can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/serviceLinkedRole:ServiceLinkedRole example \u003cproduct_name\u003e\n```\n\n",
+ "description": "Using this data source can create Dbfs service-linked roles(SLR). Dbfs may need to access another Alibaba Cloud service to implement a specific feature. In this case, Dbfs must assume a specific service-linked role, which is a Resource Access Management (RAM) role, to obtain permissions to access another Alibaba Cloud service. \n\nFor information about Dbfs service-linked roles(SLR) and how to use it, see [What is service-linked roles](https://www.alibabacloud.com/help/en/resource-management/resource-group/developer-reference/api-resourcemanager-2020-03-31-createservicelinkedrole-rg).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst serviceLinkedRole = new alicloud.databasefilesystem.ServiceLinkedRole(\"service_linked_role\", {productName: \"AliyunServiceRoleForDbfs\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nservice_linked_role = alicloud.databasefilesystem.ServiceLinkedRole(\"service_linked_role\", product_name=\"AliyunServiceRoleForDbfs\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var serviceLinkedRole = new AliCloud.DatabaseFilesystem.ServiceLinkedRole(\"service_linked_role\", new()\n {\n ProductName = \"AliyunServiceRoleForDbfs\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasefilesystem.NewServiceLinkedRole(ctx, \"service_linked_role\", \u0026databasefilesystem.ServiceLinkedRoleArgs{\n\t\t\tProductName: pulumi.String(\"AliyunServiceRoleForDbfs\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.ServiceLinkedRole;\nimport com.pulumi.alicloud.databasefilesystem.ServiceLinkedRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var serviceLinkedRole = new ServiceLinkedRole(\"serviceLinkedRole\", ServiceLinkedRoleArgs.builder()\n .productName(\"AliyunServiceRoleForDbfs\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n serviceLinkedRole:\n type: alicloud:databasefilesystem:ServiceLinkedRole\n name: service_linked_role\n properties:\n productName: AliyunServiceRoleForDbfs\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDbfs service-linked roles(SLR) can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/serviceLinkedRole:ServiceLinkedRole example \u003cproduct_name\u003e\n```\n\n",
"properties": {
"productName": {
"type": "string",
@@ -135943,7 +138572,7 @@
}
},
"alicloud:databasefilesystem/snapshot:Snapshot": {
- "description": "Provides a Database File System (DBFS) Snapshot resource.\n\nFor information about Database File System (DBFS) Snapshot and how to use it, see [What is Snapshot](https://help.aliyun.com/zh/dbfs/developer-reference/api-dbfs-2020-04-18-createsnapshot).\n\n\u003e **NOTE:** Available since v1.156.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.databasefilesystem.getInstances({});\nconst example = new alicloud.databasefilesystem.Snapshot(\"example\", {\n instanceId: _default.then(_default =\u003e _default.instances?.[0]?.id),\n retentionDays: 50,\n snapshotName: name,\n description: \"DbfsSnapshot\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.databasefilesystem.get_instances()\nexample = alicloud.databasefilesystem.Snapshot(\"example\",\n instance_id=default.instances[0].id,\n retention_days=50,\n snapshot_name=name,\n description=\"DbfsSnapshot\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.DatabaseFilesystem.GetInstances.Invoke();\n\n var example = new AliCloud.DatabaseFilesystem.Snapshot(\"example\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.Id)),\n RetentionDays = 50,\n SnapshotName = name,\n Description = \"DbfsSnapshot\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := databasefilesystem.GetInstances(ctx, \u0026databasefilesystem.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = databasefilesystem.NewSnapshot(ctx, \"example\", \u0026databasefilesystem.SnapshotArgs{\n\t\t\tInstanceId: pulumi.String(_default.Instances[0].Id),\n\t\t\tRetentionDays: pulumi.Int(50),\n\t\t\tSnapshotName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"DbfsSnapshot\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.DatabasefilesystemFunctions;\nimport com.pulumi.alicloud.databasefilesystem.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.databasefilesystem.Snapshot;\nimport com.pulumi.alicloud.databasefilesystem.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = DatabasefilesystemFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n var example = new Snapshot(\"example\", SnapshotArgs.builder()\n .instanceId(default_.instances()[0].id())\n .retentionDays(50)\n .snapshotName(name)\n .description(\"DbfsSnapshot\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:databasefilesystem:Snapshot\n properties:\n instanceId: ${default.instances[0].id}\n retentionDays: 50\n snapshotName: ${name}\n description: DbfsSnapshot\nvariables:\n default:\n fn::invoke:\n function: alicloud:databasefilesystem:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase File System (DBFS) Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/snapshot:Snapshot example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Database File System (DBFS) Snapshot resource.\n\nFor information about Database File System (DBFS) Snapshot and how to use it, see [What is Snapshot](https://help.aliyun.com/zh/dbfs/developer-reference/api-dbfs-2020-04-18-createsnapshot).\n\n\u003e **NOTE:** Available since v1.156.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.databasefilesystem.getInstances({});\nconst example = new alicloud.databasefilesystem.Snapshot(\"example\", {\n instanceId: _default.then(_default =\u003e _default.instances?.[0]?.id),\n retentionDays: 50,\n snapshotName: name,\n description: \"DbfsSnapshot\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.databasefilesystem.get_instances()\nexample = alicloud.databasefilesystem.Snapshot(\"example\",\n instance_id=default.instances[0].id,\n retention_days=50,\n snapshot_name=name,\n description=\"DbfsSnapshot\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.DatabaseFilesystem.GetInstances.Invoke();\n\n var example = new AliCloud.DatabaseFilesystem.Snapshot(\"example\", new()\n {\n InstanceId = @default.Apply(@default =\u003e @default.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.Id)),\n RetentionDays = 50,\n SnapshotName = name,\n Description = \"DbfsSnapshot\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasefilesystem\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := databasefilesystem.GetInstances(ctx, \u0026databasefilesystem.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = databasefilesystem.NewSnapshot(ctx, \"example\", \u0026databasefilesystem.SnapshotArgs{\n\t\t\tInstanceId: pulumi.String(_default.Instances[0].Id),\n\t\t\tRetentionDays: pulumi.Int(50),\n\t\t\tSnapshotName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"DbfsSnapshot\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasefilesystem.DatabasefilesystemFunctions;\nimport com.pulumi.alicloud.databasefilesystem.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.databasefilesystem.Snapshot;\nimport com.pulumi.alicloud.databasefilesystem.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = DatabasefilesystemFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n var example = new Snapshot(\"example\", SnapshotArgs.builder()\n .instanceId(default_.instances()[0].id())\n .retentionDays(50)\n .snapshotName(name)\n .description(\"DbfsSnapshot\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:databasefilesystem:Snapshot\n properties:\n instanceId: ${default.instances[0].id}\n retentionDays: 50\n snapshotName: ${name}\n description: DbfsSnapshot\nvariables:\n default:\n fn::invoke:\n function: alicloud:databasefilesystem:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatabase File System (DBFS) Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasefilesystem/snapshot:Snapshot example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -136035,7 +138664,7 @@
}
},
"alicloud:databasegateway/gateway:Gateway": {
- "description": "Provides a Database Gateway Gateway resource.\n\nFor information about Database Gateway Gateway and how to use it, see [What is Gateway](https://www.alibabacloud.com/help/doc-detail/123415.htm).\n\n\u003e **NOTE:** Available in v1.135.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.databasegateway.Gateway(\"example\", {gatewayName: \"example_value\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.databasegateway.Gateway(\"example\", gateway_name=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.DatabaseGateway.Gateway(\"example\", new()\n {\n GatewayName = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasegateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasegateway.NewGateway(ctx, \"example\", \u0026databasegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasegateway.Gateway;\nimport com.pulumi.alicloud.databasegateway.GatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Gateway(\"example\", GatewayArgs.builder()\n .gatewayName(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:databasegateway:Gateway\n properties:\n gatewayName: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatabase Gateway Gateway can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasegateway/gateway:Gateway example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Database Gateway Gateway resource.\n\nFor information about Database Gateway Gateway and how to use it, see [What is Gateway](https://www.alibabacloud.com/help/doc-detail/123415.htm).\n\n\u003e **NOTE:** Available in v1.135.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.databasegateway.Gateway(\"example\", {gatewayName: \"example_value\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.databasegateway.Gateway(\"example\", gateway_name=\"example_value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.DatabaseGateway.Gateway(\"example\", new()\n {\n GatewayName = \"example_value\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/databasegateway\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := databasegateway.NewGateway(ctx, \"example\", \u0026databasegateway.GatewayArgs{\n\t\t\tGatewayName: pulumi.String(\"example_value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.databasegateway.Gateway;\nimport com.pulumi.alicloud.databasegateway.GatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Gateway(\"example\", GatewayArgs.builder()\n .gatewayName(\"example_value\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:databasegateway:Gateway\n properties:\n gatewayName: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatabase Gateway Gateway can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:databasegateway/gateway:Gateway example \u003cid\u003e\n```\n\n",
"properties": {
"gatewayDesc": {
"type": "string",
@@ -136087,7 +138716,7 @@
}
},
"alicloud:datahub/project:Project": {
- "description": "The project is the basic unit of resource management in Datahub Service and is used to isolate and control resources. It contains a set of Topics. You can manage the datahub sources of an application by using projects. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n\u003e **NOTE:** Currently Datahub service only can be supported in the regions: cn-beijing, cn-hangzhou, cn-shanghai, cn-shenzhen, ap-southeast-1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatahub project can be imported using the *name* or ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/project:Project example tf_datahub_project\n```\n\n",
+ "description": "The project is the basic unit of resource management in Datahub Service and is used to isolate and control resources. It contains a set of Topics. You can manage the datahub sources of an application by using projects. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n\u003e **NOTE:** Currently Datahub service only can be supported in the regions: cn-beijing, cn-hangzhou, cn-shanghai, cn-shenzhen, ap-southeast-1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatahub project can be imported using the *name* or ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/project:Project example tf_datahub_project\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -136147,7 +138776,7 @@
}
},
"alicloud:datahub/subscription:Subscription": {
- "description": "The subscription is the basic unit of resource usage in Datahub Service under Publish/Subscribe model. You can manage the relationships between user and topics by using subscriptions. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\nconst exampleTopic = new alicloud.datahub.Topic(\"example\", {\n name: name,\n projectName: example.name,\n recordType: \"BLOB\",\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\nconst exampleSubscription = new alicloud.datahub.Subscription(\"example\", {\n projectName: example.name,\n topicName: exampleTopic.name,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\nexample_topic = alicloud.datahub.Topic(\"example\",\n name=name,\n project_name=example.name,\n record_type=\"BLOB\",\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\nexample_subscription = alicloud.datahub.Subscription(\"example\",\n project_name=example.name,\n topic_name=example_topic.name,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n var exampleTopic = new AliCloud.Datahub.Topic(\"example\", new()\n {\n Name = name,\n ProjectName = example.Name,\n RecordType = \"BLOB\",\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n var exampleSubscription = new AliCloud.Datahub.Subscription(\"example\", new()\n {\n ProjectName = example.Name,\n TopicName = exampleTopic.Name,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTopic, err := datahub.NewTopic(ctx, \"example\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"BLOB\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewSubscription(ctx, \"example\", \u0026datahub.SubscriptionArgs{\n\t\t\tProjectName: example.Name,\n\t\t\tTopicName: exampleTopic.Name,\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport com.pulumi.alicloud.datahub.Topic;\nimport com.pulumi.alicloud.datahub.TopicArgs;\nimport com.pulumi.alicloud.datahub.Subscription;\nimport com.pulumi.alicloud.datahub.SubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n var exampleTopic = new Topic(\"exampleTopic\", TopicArgs.builder()\n .name(name)\n .projectName(example.name())\n .recordType(\"BLOB\")\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n var exampleSubscription = new Subscription(\"exampleSubscription\", SubscriptionArgs.builder()\n .projectName(example.name())\n .topicName(exampleTopic.name())\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n exampleTopic:\n type: alicloud:datahub:Topic\n name: example\n properties:\n name: ${name}\n projectName: ${example.name}\n recordType: BLOB\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n exampleSubscription:\n type: alicloud:datahub:Subscription\n name: example\n properties:\n projectName: ${example.name}\n topicName: ${exampleTopic.name}\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatahub subscription can be imported using the ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/subscription:Subscription example tf_datahub_project:tf_datahub_topic:1539073399567UgCzY\n```\n\n",
+ "description": "The subscription is the basic unit of resource usage in Datahub Service under Publish/Subscribe model. You can manage the relationships between user and topics by using subscriptions. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\nconst exampleTopic = new alicloud.datahub.Topic(\"example\", {\n name: name,\n projectName: example.name,\n recordType: \"BLOB\",\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\nconst exampleSubscription = new alicloud.datahub.Subscription(\"example\", {\n projectName: example.name,\n topicName: exampleTopic.name,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\nexample_topic = alicloud.datahub.Topic(\"example\",\n name=name,\n project_name=example.name,\n record_type=\"BLOB\",\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\nexample_subscription = alicloud.datahub.Subscription(\"example\",\n project_name=example.name,\n topic_name=example_topic.name,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n var exampleTopic = new AliCloud.Datahub.Topic(\"example\", new()\n {\n Name = name,\n ProjectName = example.Name,\n RecordType = \"BLOB\",\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n var exampleSubscription = new AliCloud.Datahub.Subscription(\"example\", new()\n {\n ProjectName = example.Name,\n TopicName = exampleTopic.Name,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTopic, err := datahub.NewTopic(ctx, \"example\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"BLOB\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewSubscription(ctx, \"example\", \u0026datahub.SubscriptionArgs{\n\t\t\tProjectName: example.Name,\n\t\t\tTopicName: exampleTopic.Name,\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport com.pulumi.alicloud.datahub.Topic;\nimport com.pulumi.alicloud.datahub.TopicArgs;\nimport com.pulumi.alicloud.datahub.Subscription;\nimport com.pulumi.alicloud.datahub.SubscriptionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n var exampleTopic = new Topic(\"exampleTopic\", TopicArgs.builder()\n .name(name)\n .projectName(example.name())\n .recordType(\"BLOB\")\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n var exampleSubscription = new Subscription(\"exampleSubscription\", SubscriptionArgs.builder()\n .projectName(example.name())\n .topicName(exampleTopic.name())\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n exampleTopic:\n type: alicloud:datahub:Topic\n name: example\n properties:\n name: ${name}\n projectName: ${example.name}\n recordType: BLOB\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n exampleSubscription:\n type: alicloud:datahub:Subscription\n name: example\n properties:\n projectName: ${example.name}\n topicName: ${exampleTopic.name}\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatahub subscription can be imported using the ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/subscription:Subscription example tf_datahub_project:tf_datahub_topic:1539073399567UgCzY\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -136235,7 +138864,7 @@
}
},
"alicloud:datahub/topic:Topic": {
- "description": "The topic is the basic unit of Datahub data source and is used to define one kind of data or stream. It contains a set of subscriptions. You can manage the datahub source of an application by using topics. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\nconst exampleBlob = new alicloud.datahub.Topic(\"example_blob\", {\n name: `${name}_blob`,\n projectName: example.name,\n recordType: \"BLOB\",\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\nconst exampleTuple = new alicloud.datahub.Topic(\"example_tuple\", {\n name: `${name}_tuple`,\n projectName: example.name,\n recordType: \"TUPLE\",\n recordSchema: {\n bigint_field: \"BIGINT\",\n timestamp_field: \"TIMESTAMP\",\n string_field: \"STRING\",\n double_field: \"DOUBLE\",\n boolean_field: \"BOOLEAN\",\n },\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\nexample_blob = alicloud.datahub.Topic(\"example_blob\",\n name=f\"{name}_blob\",\n project_name=example.name,\n record_type=\"BLOB\",\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\nexample_tuple = alicloud.datahub.Topic(\"example_tuple\",\n name=f\"{name}_tuple\",\n project_name=example.name,\n record_type=\"TUPLE\",\n record_schema={\n \"bigint_field\": \"BIGINT\",\n \"timestamp_field\": \"TIMESTAMP\",\n \"string_field\": \"STRING\",\n \"double_field\": \"DOUBLE\",\n \"boolean_field\": \"BOOLEAN\",\n },\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n var exampleBlob = new AliCloud.Datahub.Topic(\"example_blob\", new()\n {\n Name = $\"{name}_blob\",\n ProjectName = example.Name,\n RecordType = \"BLOB\",\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n var exampleTuple = new AliCloud.Datahub.Topic(\"example_tuple\", new()\n {\n Name = $\"{name}_tuple\",\n ProjectName = example.Name,\n RecordType = \"TUPLE\",\n RecordSchema = \n {\n { \"bigint_field\", \"BIGINT\" },\n { \"timestamp_field\", \"TIMESTAMP\" },\n { \"string_field\", \"STRING\" },\n { \"double_field\", \"DOUBLE\" },\n { \"boolean_field\", \"BOOLEAN\" },\n },\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewTopic(ctx, \"example_blob\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_blob\", name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"BLOB\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewTopic(ctx, \"example_tuple\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_tuple\", name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"TUPLE\"),\n\t\t\tRecordSchema: pulumi.StringMap{\n\t\t\t\t\"bigint_field\": pulumi.String(\"BIGINT\"),\n\t\t\t\t\"timestamp_field\": pulumi.String(\"TIMESTAMP\"),\n\t\t\t\t\"string_field\": pulumi.String(\"STRING\"),\n\t\t\t\t\"double_field\": pulumi.String(\"DOUBLE\"),\n\t\t\t\t\"boolean_field\": pulumi.String(\"BOOLEAN\"),\n\t\t\t},\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport com.pulumi.alicloud.datahub.Topic;\nimport com.pulumi.alicloud.datahub.TopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n var exampleBlob = new Topic(\"exampleBlob\", TopicArgs.builder()\n .name(String.format(\"%s_blob\", name))\n .projectName(example.name())\n .recordType(\"BLOB\")\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n var exampleTuple = new Topic(\"exampleTuple\", TopicArgs.builder()\n .name(String.format(\"%s_tuple\", name))\n .projectName(example.name())\n .recordType(\"TUPLE\")\n .recordSchema(Map.ofEntries(\n Map.entry(\"bigint_field\", \"BIGINT\"),\n Map.entry(\"timestamp_field\", \"TIMESTAMP\"),\n Map.entry(\"string_field\", \"STRING\"),\n Map.entry(\"double_field\", \"DOUBLE\"),\n Map.entry(\"boolean_field\", \"BOOLEAN\")\n ))\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n exampleBlob:\n type: alicloud:datahub:Topic\n name: example_blob\n properties:\n name: ${name}_blob\n projectName: ${example.name}\n recordType: BLOB\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n exampleTuple:\n type: alicloud:datahub:Topic\n name: example_tuple\n properties:\n name: ${name}_tuple\n projectName: ${example.name}\n recordType: TUPLE\n recordSchema:\n bigint_field: BIGINT\n timestamp_field: TIMESTAMP\n string_field: STRING\n double_field: DOUBLE\n boolean_field: BOOLEAN\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDatahub topic can be imported using the ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/topic:Topic example tf_datahub_project:tf_datahub_topic\n```\n\n",
+ "description": "The topic is the basic unit of Datahub data source and is used to define one kind of data or stream. It contains a set of subscriptions. You can manage the datahub source of an application by using topics. [Refer to details](https://www.alibabacloud.com/help/en/datahub/latest/nerbcz).\n\n\u003e **NOTE:** Available since v1.19.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst example = new alicloud.datahub.Project(\"example\", {\n name: name,\n comment: \"created by terraform\",\n});\nconst exampleBlob = new alicloud.datahub.Topic(\"example_blob\", {\n name: `${name}_blob`,\n projectName: example.name,\n recordType: \"BLOB\",\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\nconst exampleTuple = new alicloud.datahub.Topic(\"example_tuple\", {\n name: `${name}_tuple`,\n projectName: example.name,\n recordType: \"TUPLE\",\n recordSchema: {\n bigint_field: \"BIGINT\",\n timestamp_field: \"TIMESTAMP\",\n string_field: \"STRING\",\n double_field: \"DOUBLE\",\n boolean_field: \"BOOLEAN\",\n },\n shardCount: 3,\n lifeCycle: 7,\n comment: \"created by terraform\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nexample = alicloud.datahub.Project(\"example\",\n name=name,\n comment=\"created by terraform\")\nexample_blob = alicloud.datahub.Topic(\"example_blob\",\n name=f\"{name}_blob\",\n project_name=example.name,\n record_type=\"BLOB\",\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\nexample_tuple = alicloud.datahub.Topic(\"example_tuple\",\n name=f\"{name}_tuple\",\n project_name=example.name,\n record_type=\"TUPLE\",\n record_schema={\n \"bigint_field\": \"BIGINT\",\n \"timestamp_field\": \"TIMESTAMP\",\n \"string_field\": \"STRING\",\n \"double_field\": \"DOUBLE\",\n \"boolean_field\": \"BOOLEAN\",\n },\n shard_count=3,\n life_cycle=7,\n comment=\"created by terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var example = new AliCloud.Datahub.Project(\"example\", new()\n {\n Name = name,\n Comment = \"created by terraform\",\n });\n\n var exampleBlob = new AliCloud.Datahub.Topic(\"example_blob\", new()\n {\n Name = $\"{name}_blob\",\n ProjectName = example.Name,\n RecordType = \"BLOB\",\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n var exampleTuple = new AliCloud.Datahub.Topic(\"example_tuple\", new()\n {\n Name = $\"{name}_tuple\",\n ProjectName = example.Name,\n RecordType = \"TUPLE\",\n RecordSchema = \n {\n { \"bigint_field\", \"BIGINT\" },\n { \"timestamp_field\", \"TIMESTAMP\" },\n { \"string_field\", \"STRING\" },\n { \"double_field\", \"DOUBLE\" },\n { \"boolean_field\", \"BOOLEAN\" },\n },\n ShardCount = 3,\n LifeCycle = 7,\n Comment = \"created by terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/datahub\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := datahub.NewProject(ctx, \"example\", \u0026datahub.ProjectArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewTopic(ctx, \"example_blob\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_blob\", name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"BLOB\"),\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datahub.NewTopic(ctx, \"example_tuple\", \u0026datahub.TopicArgs{\n\t\t\tName: pulumi.Sprintf(\"%v_tuple\", name),\n\t\t\tProjectName: example.Name,\n\t\t\tRecordType: pulumi.String(\"TUPLE\"),\n\t\t\tRecordSchema: pulumi.StringMap{\n\t\t\t\t\"bigint_field\": pulumi.String(\"BIGINT\"),\n\t\t\t\t\"timestamp_field\": pulumi.String(\"TIMESTAMP\"),\n\t\t\t\t\"string_field\": pulumi.String(\"STRING\"),\n\t\t\t\t\"double_field\": pulumi.String(\"DOUBLE\"),\n\t\t\t\t\"boolean_field\": pulumi.String(\"BOOLEAN\"),\n\t\t\t},\n\t\t\tShardCount: pulumi.Int(3),\n\t\t\tLifeCycle: pulumi.Int(7),\n\t\t\tComment: pulumi.String(\"created by terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.datahub.Project;\nimport com.pulumi.alicloud.datahub.ProjectArgs;\nimport com.pulumi.alicloud.datahub.Topic;\nimport com.pulumi.alicloud.datahub.TopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var example = new Project(\"example\", ProjectArgs.builder()\n .name(name)\n .comment(\"created by terraform\")\n .build());\n\n var exampleBlob = new Topic(\"exampleBlob\", TopicArgs.builder()\n .name(String.format(\"%s_blob\", name))\n .projectName(example.name())\n .recordType(\"BLOB\")\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n var exampleTuple = new Topic(\"exampleTuple\", TopicArgs.builder()\n .name(String.format(\"%s_tuple\", name))\n .projectName(example.name())\n .recordType(\"TUPLE\")\n .recordSchema(Map.ofEntries(\n Map.entry(\"bigint_field\", \"BIGINT\"),\n Map.entry(\"timestamp_field\", \"TIMESTAMP\"),\n Map.entry(\"string_field\", \"STRING\"),\n Map.entry(\"double_field\", \"DOUBLE\"),\n Map.entry(\"boolean_field\", \"BOOLEAN\")\n ))\n .shardCount(3)\n .lifeCycle(7)\n .comment(\"created by terraform\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n example:\n type: alicloud:datahub:Project\n properties:\n name: ${name}\n comment: created by terraform\n exampleBlob:\n type: alicloud:datahub:Topic\n name: example_blob\n properties:\n name: ${name}_blob\n projectName: ${example.name}\n recordType: BLOB\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n exampleTuple:\n type: alicloud:datahub:Topic\n name: example_tuple\n properties:\n name: ${name}_tuple\n projectName: ${example.name}\n recordType: TUPLE\n recordSchema:\n bigint_field: BIGINT\n timestamp_field: TIMESTAMP\n string_field: STRING\n double_field: DOUBLE\n boolean_field: BOOLEAN\n shardCount: 3\n lifeCycle: 7\n comment: created by terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDatahub topic can be imported using the ID, e.g.\n\n```sh\n$ pulumi import alicloud:datahub/topic:Topic example tf_datahub_project:tf_datahub_topic\n```\n\n",
"properties": {
"comment": {
"type": "string",
@@ -136376,7 +139005,7 @@
}
},
"alicloud:dataworks/dataSource:DataSource": {
- "description": "Provides a Data Works Data Source resource.\n\n\n\nFor information about Data Works Data Source and how to use it, see [What is Data Source](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdatasource).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultkguw4R = new alicloud.dataworks.Project(\"defaultkguw4R\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultDataSource = new alicloud.dataworks.DataSource(\"default\", {\n type: \"hive\",\n dataSourceName: name,\n connectionProperties: JSON.stringify({\n address: [{\n host: \"127.0.0.1\",\n port: \"1234\",\n }],\n database: \"hive_database\",\n metaType: \"HiveMetastore\",\n metastoreUris: \"thrift://123:123\",\n version: \"2.3.9\",\n loginMode: \"Anonymous\",\n securityProtocol: \"authTypeNone\",\n envType: \"Prod\",\n properties: {\n key1: \"value1\",\n },\n }),\n connectionPropertiesMode: \"UrlMode\",\n projectId: defaultkguw4R.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefaultkguw4_r = alicloud.dataworks.Project(\"defaultkguw4R\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\ndefault_data_source = alicloud.dataworks.DataSource(\"default\",\n type=\"hive\",\n data_source_name=name,\n connection_properties=json.dumps({\n \"address\": [{\n \"host\": \"127.0.0.1\",\n \"port\": \"1234\",\n }],\n \"database\": \"hive_database\",\n \"metaType\": \"HiveMetastore\",\n \"metastoreUris\": \"thrift://123:123\",\n \"version\": \"2.3.9\",\n \"loginMode\": \"Anonymous\",\n \"securityProtocol\": \"authTypeNone\",\n \"envType\": \"Prod\",\n \"properties\": {\n \"key1\": \"value1\",\n },\n }),\n connection_properties_mode=\"UrlMode\",\n project_id=defaultkguw4_r.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultkguw4R = new AliCloud.DataWorks.Project(\"defaultkguw4R\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n var defaultDataSource = new AliCloud.DataWorks.DataSource(\"default\", new()\n {\n Type = \"hive\",\n DataSourceName = name,\n ConnectionProperties = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"address\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"127.0.0.1\",\n [\"port\"] = \"1234\",\n },\n },\n [\"database\"] = \"hive_database\",\n [\"metaType\"] = \"HiveMetastore\",\n [\"metastoreUris\"] = \"thrift://123:123\",\n [\"version\"] = \"2.3.9\",\n [\"loginMode\"] = \"Anonymous\",\n [\"securityProtocol\"] = \"authTypeNone\",\n [\"envType\"] = \"Prod\",\n [\"properties\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"key1\"] = \"value1\",\n },\n }),\n ConnectionPropertiesMode = \"UrlMode\",\n ProjectId = defaultkguw4R.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultkguw4R, err := dataworks.NewProject(ctx, \"defaultkguw4R\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"address\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"host\": \"127.0.0.1\",\n\t\t\t\t\t\"port\": \"1234\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"database\": \"hive_database\",\n\t\t\t\"metaType\": \"HiveMetastore\",\n\t\t\t\"metastoreUris\": \"thrift://123:123\",\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"loginMode\": \"Anonymous\",\n\t\t\t\"securityProtocol\": \"authTypeNone\",\n\t\t\t\"envType\": \"Prod\",\n\t\t\t\"properties\": map[string]interface{}{\n\t\t\t\t\"key1\": \"value1\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = dataworks.NewDataSource(ctx, \"default\", \u0026dataworks.DataSourceArgs{\n\t\t\tType: pulumi.String(\"hive\"),\n\t\t\tDataSourceName: pulumi.String(name),\n\t\t\tConnectionProperties: pulumi.String(json0),\n\t\t\tConnectionPropertiesMode: pulumi.String(\"UrlMode\"),\n\t\t\tProjectId: defaultkguw4R.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DataSource;\nimport com.pulumi.alicloud.dataworks.DataSourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultkguw4R = new Project(\"defaultkguw4R\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n var defaultDataSource = new DataSource(\"defaultDataSource\", DataSourceArgs.builder()\n .type(\"hive\")\n .dataSourceName(name)\n .connectionProperties(serializeJson(\n jsonObject(\n jsonProperty(\"address\", jsonArray(jsonObject(\n jsonProperty(\"host\", \"127.0.0.1\"),\n jsonProperty(\"port\", \"1234\")\n ))),\n jsonProperty(\"database\", \"hive_database\"),\n jsonProperty(\"metaType\", \"HiveMetastore\"),\n jsonProperty(\"metastoreUris\", \"thrift://123:123\"),\n jsonProperty(\"version\", \"2.3.9\"),\n jsonProperty(\"loginMode\", \"Anonymous\"),\n jsonProperty(\"securityProtocol\", \"authTypeNone\"),\n jsonProperty(\"envType\", \"Prod\"),\n jsonProperty(\"properties\", jsonObject(\n jsonProperty(\"key1\", \"value1\")\n ))\n )))\n .connectionPropertiesMode(\"UrlMode\")\n .projectId(defaultkguw4R.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultkguw4R:\n type: alicloud:dataworks:Project\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\n defaultDataSource:\n type: alicloud:dataworks:DataSource\n name: default\n properties:\n type: hive\n dataSourceName: ${name}\n connectionProperties:\n fn::toJSON:\n address:\n - host: 127.0.0.1\n port: '1234'\n database: hive_database\n metaType: HiveMetastore\n metastoreUris: thrift://123:123\n version: 2.3.9\n loginMode: Anonymous\n securityProtocol: authTypeNone\n envType: Prod\n properties:\n key1: value1\n connectionPropertiesMode: UrlMode\n projectId: ${defaultkguw4R.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Data Source can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dataSource:DataSource example \u003cproject_id\u003e:\u003cdata_source_id\u003e\n```\n\n",
+ "description": "Provides a Data Works Data Source resource.\n\n\n\nFor information about Data Works Data Source and how to use it, see [What is Data Source](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdatasource).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultkguw4R = new alicloud.dataworks.Project(\"defaultkguw4R\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultDataSource = new alicloud.dataworks.DataSource(\"default\", {\n type: \"hive\",\n dataSourceName: name,\n connectionProperties: JSON.stringify({\n address: [{\n host: \"127.0.0.1\",\n port: \"1234\",\n }],\n database: \"hive_database\",\n metaType: \"HiveMetastore\",\n metastoreUris: \"thrift://123:123\",\n version: \"2.3.9\",\n loginMode: \"Anonymous\",\n securityProtocol: \"authTypeNone\",\n envType: \"Prod\",\n properties: {\n key1: \"value1\",\n },\n }),\n connectionPropertiesMode: \"UrlMode\",\n projectId: defaultkguw4R.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefaultkguw4_r = alicloud.dataworks.Project(\"defaultkguw4R\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\ndefault_data_source = alicloud.dataworks.DataSource(\"default\",\n type=\"hive\",\n data_source_name=name,\n connection_properties=json.dumps({\n \"address\": [{\n \"host\": \"127.0.0.1\",\n \"port\": \"1234\",\n }],\n \"database\": \"hive_database\",\n \"metaType\": \"HiveMetastore\",\n \"metastoreUris\": \"thrift://123:123\",\n \"version\": \"2.3.9\",\n \"loginMode\": \"Anonymous\",\n \"securityProtocol\": \"authTypeNone\",\n \"envType\": \"Prod\",\n \"properties\": {\n \"key1\": \"value1\",\n },\n }),\n connection_properties_mode=\"UrlMode\",\n project_id=defaultkguw4_r.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultkguw4R = new AliCloud.DataWorks.Project(\"defaultkguw4R\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n var defaultDataSource = new AliCloud.DataWorks.DataSource(\"default\", new()\n {\n Type = \"hive\",\n DataSourceName = name,\n ConnectionProperties = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"address\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"127.0.0.1\",\n [\"port\"] = \"1234\",\n },\n },\n [\"database\"] = \"hive_database\",\n [\"metaType\"] = \"HiveMetastore\",\n [\"metastoreUris\"] = \"thrift://123:123\",\n [\"version\"] = \"2.3.9\",\n [\"loginMode\"] = \"Anonymous\",\n [\"securityProtocol\"] = \"authTypeNone\",\n [\"envType\"] = \"Prod\",\n [\"properties\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"key1\"] = \"value1\",\n },\n }),\n ConnectionPropertiesMode = \"UrlMode\",\n ProjectId = defaultkguw4R.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultkguw4R, err := dataworks.NewProject(ctx, \"defaultkguw4R\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"address\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"host\": \"127.0.0.1\",\n\t\t\t\t\t\"port\": \"1234\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"database\": \"hive_database\",\n\t\t\t\"metaType\": \"HiveMetastore\",\n\t\t\t\"metastoreUris\": \"thrift://123:123\",\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"loginMode\": \"Anonymous\",\n\t\t\t\"securityProtocol\": \"authTypeNone\",\n\t\t\t\"envType\": \"Prod\",\n\t\t\t\"properties\": map[string]interface{}{\n\t\t\t\t\"key1\": \"value1\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = dataworks.NewDataSource(ctx, \"default\", \u0026dataworks.DataSourceArgs{\n\t\t\tType: pulumi.String(\"hive\"),\n\t\t\tDataSourceName: pulumi.String(name),\n\t\t\tConnectionProperties: pulumi.String(json0),\n\t\t\tConnectionPropertiesMode: pulumi.String(\"UrlMode\"),\n\t\t\tProjectId: defaultkguw4R.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DataSource;\nimport com.pulumi.alicloud.dataworks.DataSourceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultkguw4R = new Project(\"defaultkguw4R\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n var defaultDataSource = new DataSource(\"defaultDataSource\", DataSourceArgs.builder()\n .type(\"hive\")\n .dataSourceName(name)\n .connectionProperties(serializeJson(\n jsonObject(\n jsonProperty(\"address\", jsonArray(jsonObject(\n jsonProperty(\"host\", \"127.0.0.1\"),\n jsonProperty(\"port\", \"1234\")\n ))),\n jsonProperty(\"database\", \"hive_database\"),\n jsonProperty(\"metaType\", \"HiveMetastore\"),\n jsonProperty(\"metastoreUris\", \"thrift://123:123\"),\n jsonProperty(\"version\", \"2.3.9\"),\n jsonProperty(\"loginMode\", \"Anonymous\"),\n jsonProperty(\"securityProtocol\", \"authTypeNone\"),\n jsonProperty(\"envType\", \"Prod\"),\n jsonProperty(\"properties\", jsonObject(\n jsonProperty(\"key1\", \"value1\")\n ))\n )))\n .connectionPropertiesMode(\"UrlMode\")\n .projectId(defaultkguw4R.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultkguw4R:\n type: alicloud:dataworks:Project\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\n defaultDataSource:\n type: alicloud:dataworks:DataSource\n name: default\n properties:\n type: hive\n dataSourceName: ${name}\n connectionProperties:\n fn::toJSON:\n address:\n - host: 127.0.0.1\n port: '1234'\n database: hive_database\n metaType: HiveMetastore\n metastoreUris: thrift://123:123\n version: 2.3.9\n loginMode: Anonymous\n securityProtocol: authTypeNone\n envType: Prod\n properties:\n key1: value1\n connectionPropertiesMode: UrlMode\n projectId: ${defaultkguw4R.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Data Source can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dataSource:DataSource example \u003cproject_id\u003e:\u003cdata_source_id\u003e\n```\n\n",
"properties": {
"connectionProperties": {
"type": "string",
@@ -136538,7 +139167,7 @@
}
},
"alicloud:dataworks/dataSourceSharedRule:DataSourceSharedRule": {
- "description": "Provides a Data Works Data Source Shared Rule resource.\n\nData source sharing rule, which expresses A data source, from space A to space B (A user).\n\nFor information about Data Works Data Source Shared Rule and how to use it, see [What is Data Source Shared Rule](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdatasourcesharedrule).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultQeRfvU = new alicloud.dataworks.Project(\"defaultQeRfvU\", {\n description: \"源项目\",\n projectName: name,\n displayName: \"shared_source2\",\n paiTaskEnabled: true,\n});\nconst defaultasjsH5 = new alicloud.dataworks.Project(\"defaultasjsH5\", {\n description: \"目标空间\",\n projectName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n displayName: \"shared_target2\",\n paiTaskEnabled: true,\n});\nconst defaultvzu0wG = new alicloud.dataworks.DataSource(\"defaultvzu0wG\", {\n type: \"hive\",\n dataSourceName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n connectionProperties: JSON.stringify({\n address: [{\n host: \"127.0.0.1\",\n port: \"1234\",\n }],\n database: \"hive_database\",\n metaType: \"HiveMetastore\",\n metastoreUris: \"thrift://123:123\",\n version: \"2.3.9\",\n loginMode: \"Anonymous\",\n securityProtocol: \"authTypeNone\",\n envType: \"Prod\",\n properties: {\n key1: \"value1\",\n },\n }),\n projectId: defaultQeRfvU.id,\n connectionPropertiesMode: \"UrlMode\",\n});\nconst defaultDataSourceSharedRule = new alicloud.dataworks.DataSourceSharedRule(\"default\", {\n targetProjectId: defaultasjsH5.id,\n dataSourceId: defaultvzu0wG.dataSourceId,\n envType: \"Prod\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_qe_rfv_u = alicloud.dataworks.Project(\"defaultQeRfvU\",\n description=\"源项目\",\n project_name=name,\n display_name=\"shared_source2\",\n pai_task_enabled=True)\ndefaultasjs_h5 = alicloud.dataworks.Project(\"defaultasjsH5\",\n description=\"目标空间\",\n project_name=std.format(input=\"%s1\",\n args=[name]).result,\n display_name=\"shared_target2\",\n pai_task_enabled=True)\ndefaultvzu0w_g = alicloud.dataworks.DataSource(\"defaultvzu0wG\",\n type=\"hive\",\n data_source_name=std.format(input=\"%s2\",\n args=[name]).result,\n connection_properties=json.dumps({\n \"address\": [{\n \"host\": \"127.0.0.1\",\n \"port\": \"1234\",\n }],\n \"database\": \"hive_database\",\n \"metaType\": \"HiveMetastore\",\n \"metastoreUris\": \"thrift://123:123\",\n \"version\": \"2.3.9\",\n \"loginMode\": \"Anonymous\",\n \"securityProtocol\": \"authTypeNone\",\n \"envType\": \"Prod\",\n \"properties\": {\n \"key1\": \"value1\",\n },\n }),\n project_id=default_qe_rfv_u.id,\n connection_properties_mode=\"UrlMode\")\ndefault_data_source_shared_rule = alicloud.dataworks.DataSourceSharedRule(\"default\",\n target_project_id=defaultasjs_h5.id,\n data_source_id=defaultvzu0w_g.data_source_id,\n env_type=\"Prod\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultQeRfvU = new AliCloud.DataWorks.Project(\"defaultQeRfvU\", new()\n {\n Description = \"源项目\",\n ProjectName = name,\n DisplayName = \"shared_source2\",\n PaiTaskEnabled = true,\n });\n\n var defaultasjsH5 = new AliCloud.DataWorks.Project(\"defaultasjsH5\", new()\n {\n Description = \"目标空间\",\n ProjectName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DisplayName = \"shared_target2\",\n PaiTaskEnabled = true,\n });\n\n var defaultvzu0wG = new AliCloud.DataWorks.DataSource(\"defaultvzu0wG\", new()\n {\n Type = \"hive\",\n DataSourceName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ConnectionProperties = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"address\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"127.0.0.1\",\n [\"port\"] = \"1234\",\n },\n },\n [\"database\"] = \"hive_database\",\n [\"metaType\"] = \"HiveMetastore\",\n [\"metastoreUris\"] = \"thrift://123:123\",\n [\"version\"] = \"2.3.9\",\n [\"loginMode\"] = \"Anonymous\",\n [\"securityProtocol\"] = \"authTypeNone\",\n [\"envType\"] = \"Prod\",\n [\"properties\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"key1\"] = \"value1\",\n },\n }),\n ProjectId = defaultQeRfvU.Id,\n ConnectionPropertiesMode = \"UrlMode\",\n });\n\n var defaultDataSourceSharedRule = new AliCloud.DataWorks.DataSourceSharedRule(\"default\", new()\n {\n TargetProjectId = defaultasjsH5.Id,\n DataSourceId = defaultvzu0wG.DataSourceId,\n EnvType = \"Prod\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQeRfvU, err := dataworks.NewProject(ctx, \"defaultQeRfvU\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"源项目\"),\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(\"shared_source2\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultasjsH5, err := dataworks.NewProject(ctx, \"defaultasjsH5\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"目标空间\"),\n\t\t\tProjectName: pulumi.String(invokeFormat.Result),\n\t\t\tDisplayName: pulumi.String(\"shared_target2\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"address\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"host\": \"127.0.0.1\",\n\t\t\t\t\t\"port\": \"1234\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"database\": \"hive_database\",\n\t\t\t\"metaType\": \"HiveMetastore\",\n\t\t\t\"metastoreUris\": \"thrift://123:123\",\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"loginMode\": \"Anonymous\",\n\t\t\t\"securityProtocol\": \"authTypeNone\",\n\t\t\t\"envType\": \"Prod\",\n\t\t\t\"properties\": map[string]interface{}{\n\t\t\t\t\"key1\": \"value1\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultvzu0wG, err := dataworks.NewDataSource(ctx, \"defaultvzu0wG\", \u0026dataworks.DataSourceArgs{\n\t\t\tType: pulumi.String(\"hive\"),\n\t\t\tDataSourceName: pulumi.String(invokeFormat1.Result),\n\t\t\tConnectionProperties: pulumi.String(json0),\n\t\t\tProjectId: defaultQeRfvU.ID(),\n\t\t\tConnectionPropertiesMode: pulumi.String(\"UrlMode\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDataSourceSharedRule(ctx, \"default\", \u0026dataworks.DataSourceSharedRuleArgs{\n\t\t\tTargetProjectId: defaultasjsH5.ID(),\n\t\t\tDataSourceId: defaultvzu0wG.DataSourceId,\n\t\t\tEnvType: pulumi.String(\"Prod\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dataworks.DataSource;\nimport com.pulumi.alicloud.dataworks.DataSourceArgs;\nimport com.pulumi.alicloud.dataworks.DataSourceSharedRule;\nimport com.pulumi.alicloud.dataworks.DataSourceSharedRuleArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultQeRfvU = new Project(\"defaultQeRfvU\", ProjectArgs.builder()\n .description(\"源项目\")\n .projectName(name)\n .displayName(\"shared_source2\")\n .paiTaskEnabled(true)\n .build());\n\n var defaultasjsH5 = new Project(\"defaultasjsH5\", ProjectArgs.builder()\n .description(\"目标空间\")\n .projectName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .displayName(\"shared_target2\")\n .paiTaskEnabled(true)\n .build());\n\n var defaultvzu0wG = new DataSource(\"defaultvzu0wG\", DataSourceArgs.builder()\n .type(\"hive\")\n .dataSourceName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .connectionProperties(serializeJson(\n jsonObject(\n jsonProperty(\"address\", jsonArray(jsonObject(\n jsonProperty(\"host\", \"127.0.0.1\"),\n jsonProperty(\"port\", \"1234\")\n ))),\n jsonProperty(\"database\", \"hive_database\"),\n jsonProperty(\"metaType\", \"HiveMetastore\"),\n jsonProperty(\"metastoreUris\", \"thrift://123:123\"),\n jsonProperty(\"version\", \"2.3.9\"),\n jsonProperty(\"loginMode\", \"Anonymous\"),\n jsonProperty(\"securityProtocol\", \"authTypeNone\"),\n jsonProperty(\"envType\", \"Prod\"),\n jsonProperty(\"properties\", jsonObject(\n jsonProperty(\"key1\", \"value1\")\n ))\n )))\n .projectId(defaultQeRfvU.id())\n .connectionPropertiesMode(\"UrlMode\")\n .build());\n\n var defaultDataSourceSharedRule = new DataSourceSharedRule(\"defaultDataSourceSharedRule\", DataSourceSharedRuleArgs.builder()\n .targetProjectId(defaultasjsH5.id())\n .dataSourceId(defaultvzu0wG.dataSourceId())\n .envType(\"Prod\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultQeRfvU:\n type: alicloud:dataworks:Project\n properties:\n description: 源项目\n projectName: ${name}\n displayName: shared_source2\n paiTaskEnabled: true\n defaultasjsH5:\n type: alicloud:dataworks:Project\n properties:\n description: 目标空间\n projectName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n displayName: shared_target2\n paiTaskEnabled: true\n defaultvzu0wG:\n type: alicloud:dataworks:DataSource\n properties:\n type: hive\n dataSourceName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n connectionProperties:\n fn::toJSON:\n address:\n - host: 127.0.0.1\n port: '1234'\n database: hive_database\n metaType: HiveMetastore\n metastoreUris: thrift://123:123\n version: 2.3.9\n loginMode: Anonymous\n securityProtocol: authTypeNone\n envType: Prod\n properties:\n key1: value1\n projectId: ${defaultQeRfvU.id}\n connectionPropertiesMode: UrlMode\n defaultDataSourceSharedRule:\n type: alicloud:dataworks:DataSourceSharedRule\n name: default\n properties:\n targetProjectId: ${defaultasjsH5.id}\n dataSourceId: ${defaultvzu0wG.dataSourceId}\n envType: Prod\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Data Source Shared Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dataSourceSharedRule:DataSourceSharedRule example \u003cdata_source_id\u003e:\u003cdata_source_shared_rule_id\u003e\n```\n\n",
+ "description": "Provides a Data Works Data Source Shared Rule resource.\n\nData source sharing rule, which expresses A data source, from space A to space B (A user).\n\nFor information about Data Works Data Source Shared Rule and how to use it, see [What is Data Source Shared Rule](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdatasourcesharedrule).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultQeRfvU = new alicloud.dataworks.Project(\"defaultQeRfvU\", {\n description: \"源项目\",\n projectName: name,\n displayName: \"shared_source2\",\n paiTaskEnabled: true,\n});\nconst defaultasjsH5 = new alicloud.dataworks.Project(\"defaultasjsH5\", {\n description: \"目标空间\",\n projectName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n displayName: \"shared_target2\",\n paiTaskEnabled: true,\n});\nconst defaultvzu0wG = new alicloud.dataworks.DataSource(\"defaultvzu0wG\", {\n type: \"hive\",\n dataSourceName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n connectionProperties: JSON.stringify({\n address: [{\n host: \"127.0.0.1\",\n port: \"1234\",\n }],\n database: \"hive_database\",\n metaType: \"HiveMetastore\",\n metastoreUris: \"thrift://123:123\",\n version: \"2.3.9\",\n loginMode: \"Anonymous\",\n securityProtocol: \"authTypeNone\",\n envType: \"Prod\",\n properties: {\n key1: \"value1\",\n },\n }),\n projectId: defaultQeRfvU.id,\n connectionPropertiesMode: \"UrlMode\",\n});\nconst defaultDataSourceSharedRule = new alicloud.dataworks.DataSourceSharedRule(\"default\", {\n targetProjectId: defaultasjsH5.id,\n dataSourceId: defaultvzu0wG.dataSourceId,\n envType: \"Prod\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_qe_rfv_u = alicloud.dataworks.Project(\"defaultQeRfvU\",\n description=\"源项目\",\n project_name=name,\n display_name=\"shared_source2\",\n pai_task_enabled=True)\ndefaultasjs_h5 = alicloud.dataworks.Project(\"defaultasjsH5\",\n description=\"目标空间\",\n project_name=std.format(input=\"%s1\",\n args=[name]).result,\n display_name=\"shared_target2\",\n pai_task_enabled=True)\ndefaultvzu0w_g = alicloud.dataworks.DataSource(\"defaultvzu0wG\",\n type=\"hive\",\n data_source_name=std.format(input=\"%s2\",\n args=[name]).result,\n connection_properties=json.dumps({\n \"address\": [{\n \"host\": \"127.0.0.1\",\n \"port\": \"1234\",\n }],\n \"database\": \"hive_database\",\n \"metaType\": \"HiveMetastore\",\n \"metastoreUris\": \"thrift://123:123\",\n \"version\": \"2.3.9\",\n \"loginMode\": \"Anonymous\",\n \"securityProtocol\": \"authTypeNone\",\n \"envType\": \"Prod\",\n \"properties\": {\n \"key1\": \"value1\",\n },\n }),\n project_id=default_qe_rfv_u.id,\n connection_properties_mode=\"UrlMode\")\ndefault_data_source_shared_rule = alicloud.dataworks.DataSourceSharedRule(\"default\",\n target_project_id=defaultasjs_h5.id,\n data_source_id=defaultvzu0w_g.data_source_id,\n env_type=\"Prod\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultQeRfvU = new AliCloud.DataWorks.Project(\"defaultQeRfvU\", new()\n {\n Description = \"源项目\",\n ProjectName = name,\n DisplayName = \"shared_source2\",\n PaiTaskEnabled = true,\n });\n\n var defaultasjsH5 = new AliCloud.DataWorks.Project(\"defaultasjsH5\", new()\n {\n Description = \"目标空间\",\n ProjectName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DisplayName = \"shared_target2\",\n PaiTaskEnabled = true,\n });\n\n var defaultvzu0wG = new AliCloud.DataWorks.DataSource(\"defaultvzu0wG\", new()\n {\n Type = \"hive\",\n DataSourceName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ConnectionProperties = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"address\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"host\"] = \"127.0.0.1\",\n [\"port\"] = \"1234\",\n },\n },\n [\"database\"] = \"hive_database\",\n [\"metaType\"] = \"HiveMetastore\",\n [\"metastoreUris\"] = \"thrift://123:123\",\n [\"version\"] = \"2.3.9\",\n [\"loginMode\"] = \"Anonymous\",\n [\"securityProtocol\"] = \"authTypeNone\",\n [\"envType\"] = \"Prod\",\n [\"properties\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"key1\"] = \"value1\",\n },\n }),\n ProjectId = defaultQeRfvU.Id,\n ConnectionPropertiesMode = \"UrlMode\",\n });\n\n var defaultDataSourceSharedRule = new AliCloud.DataWorks.DataSourceSharedRule(\"default\", new()\n {\n TargetProjectId = defaultasjsH5.Id,\n DataSourceId = defaultvzu0wG.DataSourceId,\n EnvType = \"Prod\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQeRfvU, err := dataworks.NewProject(ctx, \"defaultQeRfvU\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"源项目\"),\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(\"shared_source2\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultasjsH5, err := dataworks.NewProject(ctx, \"defaultasjsH5\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"目标空间\"),\n\t\t\tProjectName: pulumi.String(invokeFormat.Result),\n\t\t\tDisplayName: pulumi.String(\"shared_target2\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"address\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"host\": \"127.0.0.1\",\n\t\t\t\t\t\"port\": \"1234\",\n\t\t\t\t},\n\t\t\t},\n\t\t\t\"database\": \"hive_database\",\n\t\t\t\"metaType\": \"HiveMetastore\",\n\t\t\t\"metastoreUris\": \"thrift://123:123\",\n\t\t\t\"version\": \"2.3.9\",\n\t\t\t\"loginMode\": \"Anonymous\",\n\t\t\t\"securityProtocol\": \"authTypeNone\",\n\t\t\t\"envType\": \"Prod\",\n\t\t\t\"properties\": map[string]interface{}{\n\t\t\t\t\"key1\": \"value1\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tdefaultvzu0wG, err := dataworks.NewDataSource(ctx, \"defaultvzu0wG\", \u0026dataworks.DataSourceArgs{\n\t\t\tType: pulumi.String(\"hive\"),\n\t\t\tDataSourceName: pulumi.String(invokeFormat1.Result),\n\t\t\tConnectionProperties: pulumi.String(json0),\n\t\t\tProjectId: defaultQeRfvU.ID(),\n\t\t\tConnectionPropertiesMode: pulumi.String(\"UrlMode\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDataSourceSharedRule(ctx, \"default\", \u0026dataworks.DataSourceSharedRuleArgs{\n\t\t\tTargetProjectId: defaultasjsH5.ID(),\n\t\t\tDataSourceId: defaultvzu0wG.DataSourceId,\n\t\t\tEnvType: pulumi.String(\"Prod\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dataworks.DataSource;\nimport com.pulumi.alicloud.dataworks.DataSourceArgs;\nimport com.pulumi.alicloud.dataworks.DataSourceSharedRule;\nimport com.pulumi.alicloud.dataworks.DataSourceSharedRuleArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultQeRfvU = new Project(\"defaultQeRfvU\", ProjectArgs.builder()\n .description(\"源项目\")\n .projectName(name)\n .displayName(\"shared_source2\")\n .paiTaskEnabled(true)\n .build());\n\n var defaultasjsH5 = new Project(\"defaultasjsH5\", ProjectArgs.builder()\n .description(\"目标空间\")\n .projectName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .displayName(\"shared_target2\")\n .paiTaskEnabled(true)\n .build());\n\n var defaultvzu0wG = new DataSource(\"defaultvzu0wG\", DataSourceArgs.builder()\n .type(\"hive\")\n .dataSourceName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .connectionProperties(serializeJson(\n jsonObject(\n jsonProperty(\"address\", jsonArray(jsonObject(\n jsonProperty(\"host\", \"127.0.0.1\"),\n jsonProperty(\"port\", \"1234\")\n ))),\n jsonProperty(\"database\", \"hive_database\"),\n jsonProperty(\"metaType\", \"HiveMetastore\"),\n jsonProperty(\"metastoreUris\", \"thrift://123:123\"),\n jsonProperty(\"version\", \"2.3.9\"),\n jsonProperty(\"loginMode\", \"Anonymous\"),\n jsonProperty(\"securityProtocol\", \"authTypeNone\"),\n jsonProperty(\"envType\", \"Prod\"),\n jsonProperty(\"properties\", jsonObject(\n jsonProperty(\"key1\", \"value1\")\n ))\n )))\n .projectId(defaultQeRfvU.id())\n .connectionPropertiesMode(\"UrlMode\")\n .build());\n\n var defaultDataSourceSharedRule = new DataSourceSharedRule(\"defaultDataSourceSharedRule\", DataSourceSharedRuleArgs.builder()\n .targetProjectId(defaultasjsH5.id())\n .dataSourceId(defaultvzu0wG.dataSourceId())\n .envType(\"Prod\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultQeRfvU:\n type: alicloud:dataworks:Project\n properties:\n description: 源项目\n projectName: ${name}\n displayName: shared_source2\n paiTaskEnabled: true\n defaultasjsH5:\n type: alicloud:dataworks:Project\n properties:\n description: 目标空间\n projectName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n displayName: shared_target2\n paiTaskEnabled: true\n defaultvzu0wG:\n type: alicloud:dataworks:DataSource\n properties:\n type: hive\n dataSourceName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n connectionProperties:\n fn::toJSON:\n address:\n - host: 127.0.0.1\n port: '1234'\n database: hive_database\n metaType: HiveMetastore\n metastoreUris: thrift://123:123\n version: 2.3.9\n loginMode: Anonymous\n securityProtocol: authTypeNone\n envType: Prod\n properties:\n key1: value1\n projectId: ${defaultQeRfvU.id}\n connectionPropertiesMode: UrlMode\n defaultDataSourceSharedRule:\n type: alicloud:dataworks:DataSourceSharedRule\n name: default\n properties:\n targetProjectId: ${defaultasjsH5.id}\n dataSourceId: ${defaultvzu0wG.dataSourceId}\n envType: Prod\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Data Source Shared Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dataSourceSharedRule:DataSourceSharedRule example \u003cdata_source_id\u003e:\u003cdata_source_shared_rule_id\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "integer",
@@ -136635,7 +139264,7 @@
}
},
"alicloud:dataworks/diAlarmRule:DiAlarmRule": {
- "description": "Provides a Data Works Di Alarm Rule resource.\n\nData Integration alarm rules.\n\nFor information about Data Works Di Alarm Rule and how to use it, see [What is Di Alarm Rule](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdialarmrule).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaulteNv8bu = new alicloud.dataworks.Project(\"defaulteNv8bu\", {\n projectName: name,\n displayName: name,\n description: name,\n paiTaskEnabled: true,\n});\nconst defaultUW8inp = new alicloud.dataworks.DiJob(\"defaultUW8inp\", {\n description: \"xxxx\",\n projectId: defaulteNv8bu.id,\n jobName: \"xxx\",\n migrationType: \"api_xxx\",\n sourceDataSourceType: \"xxx\",\n resourceSettings: {\n offlineResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n realtimeResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n scheduleResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n },\n jobSettings: {\n channelSettings: \"xxxx\",\n columnDataTypeSettings: [{\n destinationDataType: \"xxxx\",\n sourceDataType: \"xxxx\",\n }],\n cycleScheduleSettings: {\n cycleMigrationType: \"xxxx\",\n scheduleParameters: \"xxxx\",\n },\n },\n sourceDataSourceSettings: [{\n dataSourceName: \"xxxx\",\n dataSourceProperties: {\n encoding: \"xxxx\",\n timezone: \"xxxx\",\n },\n }],\n destinationDataSourceType: \"xxxx\",\n tableMappings: [{\n sourceObjectSelectionRules: [\n {\n action: \"Include\",\n expression: \"xxxx\",\n expressionType: \"Exact\",\n objectType: \"xxxx\",\n },\n {\n action: \"Include\",\n expression: \"xxxx\",\n expressionType: \"Exact\",\n objectType: \"xxxx\",\n },\n ],\n transformationRules: [{\n ruleName: \"xxxx\",\n ruleActionType: \"xxxx\",\n ruleTargetType: \"xxxx\",\n }],\n }],\n transformationRules: [{\n ruleActionType: \"xxxx\",\n ruleExpression: \"xxxx\",\n ruleName: \"xxxx\",\n ruleTargetType: \"xxxx\",\n }],\n destinationDataSourceSettings: [{\n dataSourceName: \"xxx\",\n }],\n});\nconst _default = new alicloud.dataworks.DiAlarmRule(\"default\", {\n description: \"Description\",\n triggerConditions: [{\n ddlReportTags: [\"ALTERADDCOLUMN\"],\n threshold: 20,\n duration: 10,\n severity: \"Warning\",\n }],\n metricType: \"DdlReport\",\n notificationSettings: {\n notificationChannels: [{\n severity: \"Warning\",\n channels: [\"Ding\"],\n }],\n notificationReceivers: [{\n receiverType: \"DingToken\",\n receiverValues: [\"1107550004253538\"],\n }],\n inhibitionInterval: 10,\n },\n diJobId: defaultUW8inp.diJobId,\n diAlarmRuleName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefaulte_nv8bu = alicloud.dataworks.Project(\"defaulteNv8bu\",\n project_name=name,\n display_name=name,\n description=name,\n pai_task_enabled=True)\ndefault_uw8inp = alicloud.dataworks.DiJob(\"defaultUW8inp\",\n description=\"xxxx\",\n project_id=defaulte_nv8bu.id,\n job_name=\"xxx\",\n migration_type=\"api_xxx\",\n source_data_source_type=\"xxx\",\n resource_settings={\n \"offline_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n \"realtime_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n \"schedule_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n },\n job_settings={\n \"channel_settings\": \"xxxx\",\n \"column_data_type_settings\": [{\n \"destination_data_type\": \"xxxx\",\n \"source_data_type\": \"xxxx\",\n }],\n \"cycle_schedule_settings\": {\n \"cycle_migration_type\": \"xxxx\",\n \"schedule_parameters\": \"xxxx\",\n },\n },\n source_data_source_settings=[{\n \"data_source_name\": \"xxxx\",\n \"data_source_properties\": {\n \"encoding\": \"xxxx\",\n \"timezone\": \"xxxx\",\n },\n }],\n destination_data_source_type=\"xxxx\",\n table_mappings=[{\n \"source_object_selection_rules\": [\n {\n \"action\": \"Include\",\n \"expression\": \"xxxx\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"xxxx\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"xxxx\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"xxxx\",\n },\n ],\n \"transformation_rules\": [{\n \"rule_name\": \"xxxx\",\n \"rule_action_type\": \"xxxx\",\n \"rule_target_type\": \"xxxx\",\n }],\n }],\n transformation_rules=[{\n \"rule_action_type\": \"xxxx\",\n \"rule_expression\": \"xxxx\",\n \"rule_name\": \"xxxx\",\n \"rule_target_type\": \"xxxx\",\n }],\n destination_data_source_settings=[{\n \"data_source_name\": \"xxx\",\n }])\ndefault = alicloud.dataworks.DiAlarmRule(\"default\",\n description=\"Description\",\n trigger_conditions=[{\n \"ddl_report_tags\": [\"ALTERADDCOLUMN\"],\n \"threshold\": 20,\n \"duration\": 10,\n \"severity\": \"Warning\",\n }],\n metric_type=\"DdlReport\",\n notification_settings={\n \"notification_channels\": [{\n \"severity\": \"Warning\",\n \"channels\": [\"Ding\"],\n }],\n \"notification_receivers\": [{\n \"receiver_type\": \"DingToken\",\n \"receiver_values\": [\"1107550004253538\"],\n }],\n \"inhibition_interval\": 10,\n },\n di_job_id=default_uw8inp.di_job_id,\n di_alarm_rule_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaulteNv8bu = new AliCloud.DataWorks.Project(\"defaulteNv8bu\", new()\n {\n ProjectName = name,\n DisplayName = name,\n Description = name,\n PaiTaskEnabled = true,\n });\n\n var defaultUW8inp = new AliCloud.DataWorks.DiJob(\"defaultUW8inp\", new()\n {\n Description = \"xxxx\",\n ProjectId = defaulteNv8bu.Id,\n JobName = \"xxx\",\n MigrationType = \"api_xxx\",\n SourceDataSourceType = \"xxx\",\n ResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsArgs\n {\n OfflineResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsOfflineResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n RealtimeResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n ScheduleResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsScheduleResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n },\n JobSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsArgs\n {\n ChannelSettings = \"xxxx\",\n ColumnDataTypeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsColumnDataTypeSettingArgs\n {\n DestinationDataType = \"xxxx\",\n SourceDataType = \"xxxx\",\n },\n },\n CycleScheduleSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsCycleScheduleSettingsArgs\n {\n CycleMigrationType = \"xxxx\",\n ScheduleParameters = \"xxxx\",\n },\n },\n SourceDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingArgs\n {\n DataSourceName = \"xxxx\",\n DataSourceProperties = new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs\n {\n Encoding = \"xxxx\",\n Timezone = \"xxxx\",\n },\n },\n },\n DestinationDataSourceType = \"xxxx\",\n TableMappings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingArgs\n {\n SourceObjectSelectionRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"xxxx\",\n ExpressionType = \"Exact\",\n ObjectType = \"xxxx\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"xxxx\",\n ExpressionType = \"Exact\",\n ObjectType = \"xxxx\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingTransformationRuleArgs\n {\n RuleName = \"xxxx\",\n RuleActionType = \"xxxx\",\n RuleTargetType = \"xxxx\",\n },\n },\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTransformationRuleArgs\n {\n RuleActionType = \"xxxx\",\n RuleExpression = \"xxxx\",\n RuleName = \"xxxx\",\n RuleTargetType = \"xxxx\",\n },\n },\n DestinationDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobDestinationDataSourceSettingArgs\n {\n DataSourceName = \"xxx\",\n },\n },\n });\n\n var @default = new AliCloud.DataWorks.DiAlarmRule(\"default\", new()\n {\n Description = \"Description\",\n TriggerConditions = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleTriggerConditionArgs\n {\n DdlReportTags = new[]\n {\n \"ALTERADDCOLUMN\",\n },\n Threshold = 20,\n Duration = 10,\n Severity = \"Warning\",\n },\n },\n MetricType = \"DdlReport\",\n NotificationSettings = new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsArgs\n {\n NotificationChannels = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsNotificationChannelArgs\n {\n Severity = \"Warning\",\n Channels = new[]\n {\n \"Ding\",\n },\n },\n },\n NotificationReceivers = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsNotificationReceiverArgs\n {\n ReceiverType = \"DingToken\",\n ReceiverValues = new[]\n {\n \"1107550004253538\",\n },\n },\n },\n InhibitionInterval = 10,\n },\n DiJobId = defaultUW8inp.DiJobId,\n DiAlarmRuleName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaulteNv8bu, err := dataworks.NewProject(ctx, \"defaulteNv8bu\", \u0026dataworks.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUW8inp, err := dataworks.NewDiJob(ctx, \"defaultUW8inp\", \u0026dataworks.DiJobArgs{\n\t\t\tDescription: pulumi.String(\"xxxx\"),\n\t\t\tProjectId: defaulteNv8bu.ID(),\n\t\t\tJobName: pulumi.String(\"xxx\"),\n\t\t\tMigrationType: pulumi.String(\"api_xxx\"),\n\t\t\tSourceDataSourceType: pulumi.String(\"xxx\"),\n\t\t\tResourceSettings: \u0026dataworks.DiJobResourceSettingsArgs{\n\t\t\t\tOfflineResourceSettings: \u0026dataworks.DiJobResourceSettingsOfflineResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t\tRealtimeResourceSettings: \u0026dataworks.DiJobResourceSettingsRealtimeResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t\tScheduleResourceSettings: \u0026dataworks.DiJobResourceSettingsScheduleResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tJobSettings: \u0026dataworks.DiJobJobSettingsArgs{\n\t\t\t\tChannelSettings: pulumi.String(\"xxxx\"),\n\t\t\t\tColumnDataTypeSettings: dataworks.DiJobJobSettingsColumnDataTypeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsColumnDataTypeSettingArgs{\n\t\t\t\t\t\tDestinationDataType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\tSourceDataType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tCycleScheduleSettings: \u0026dataworks.DiJobJobSettingsCycleScheduleSettingsArgs{\n\t\t\t\t\tCycleMigrationType: pulumi.String(\"xxxx\"),\n\t\t\t\t\tScheduleParameters: pulumi.String(\"xxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceDataSourceSettings: dataworks.DiJobSourceDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobSourceDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"xxxx\"),\n\t\t\t\t\tDataSourceProperties: \u0026dataworks.DiJobSourceDataSourceSettingDataSourcePropertiesArgs{\n\t\t\t\t\t\tEncoding: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\tTimezone: pulumi.String(\"xxxx\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceType: pulumi.String(\"xxxx\"),\n\t\t\tTableMappings: dataworks.DiJobTableMappingArray{\n\t\t\t\t\u0026dataworks.DiJobTableMappingArgs{\n\t\t\t\t\tSourceObjectSelectionRules: dataworks.DiJobTableMappingSourceObjectSelectionRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTransformationRules: dataworks.DiJobTableMappingTransformationRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingTransformationRuleArgs{\n\t\t\t\t\t\t\tRuleName: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tRuleActionType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tRuleTargetType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransformationRules: dataworks.DiJobTransformationRuleArray{\n\t\t\t\t\u0026dataworks.DiJobTransformationRuleArgs{\n\t\t\t\t\tRuleActionType: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleName: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleTargetType: pulumi.String(\"xxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceSettings: dataworks.DiJobDestinationDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobDestinationDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"xxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDiAlarmRule(ctx, \"default\", \u0026dataworks.DiAlarmRuleArgs{\n\t\t\tDescription: pulumi.String(\"Description\"),\n\t\t\tTriggerConditions: dataworks.DiAlarmRuleTriggerConditionArray{\n\t\t\t\t\u0026dataworks.DiAlarmRuleTriggerConditionArgs{\n\t\t\t\t\tDdlReportTags: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ALTERADDCOLUMN\"),\n\t\t\t\t\t},\n\t\t\t\t\tThreshold: pulumi.Int(20),\n\t\t\t\t\tDuration: pulumi.Int(10),\n\t\t\t\t\tSeverity: pulumi.String(\"Warning\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMetricType: pulumi.String(\"DdlReport\"),\n\t\t\tNotificationSettings: \u0026dataworks.DiAlarmRuleNotificationSettingsArgs{\n\t\t\t\tNotificationChannels: dataworks.DiAlarmRuleNotificationSettingsNotificationChannelArray{\n\t\t\t\t\t\u0026dataworks.DiAlarmRuleNotificationSettingsNotificationChannelArgs{\n\t\t\t\t\t\tSeverity: pulumi.String(\"Warning\"),\n\t\t\t\t\t\tChannels: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Ding\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tNotificationReceivers: dataworks.DiAlarmRuleNotificationSettingsNotificationReceiverArray{\n\t\t\t\t\t\u0026dataworks.DiAlarmRuleNotificationSettingsNotificationReceiverArgs{\n\t\t\t\t\t\tReceiverType: pulumi.String(\"DingToken\"),\n\t\t\t\t\t\tReceiverValues: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1107550004253538\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tInhibitionInterval: pulumi.Int(10),\n\t\t\t},\n\t\t\tDiJobId: defaultUW8inp.DiJobId,\n\t\t\tDiAlarmRuleName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DiJob;\nimport com.pulumi.alicloud.dataworks.DiJobArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsOfflineResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsScheduleResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsCycleScheduleSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTableMappingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTransformationRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobDestinationDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.DiAlarmRule;\nimport com.pulumi.alicloud.dataworks.DiAlarmRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiAlarmRuleTriggerConditionArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiAlarmRuleNotificationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaulteNv8bu = new Project(\"defaulteNv8bu\", ProjectArgs.builder()\n .projectName(name)\n .displayName(name)\n .description(name)\n .paiTaskEnabled(true)\n .build());\n\n var defaultUW8inp = new DiJob(\"defaultUW8inp\", DiJobArgs.builder()\n .description(\"xxxx\")\n .projectId(defaulteNv8bu.id())\n .jobName(\"xxx\")\n .migrationType(\"api_xxx\")\n .sourceDataSourceType(\"xxx\")\n .resourceSettings(DiJobResourceSettingsArgs.builder()\n .offlineResourceSettings(DiJobResourceSettingsOfflineResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .realtimeResourceSettings(DiJobResourceSettingsRealtimeResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .scheduleResourceSettings(DiJobResourceSettingsScheduleResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .build())\n .jobSettings(DiJobJobSettingsArgs.builder()\n .channelSettings(\"xxxx\")\n .columnDataTypeSettings(DiJobJobSettingsColumnDataTypeSettingArgs.builder()\n .destinationDataType(\"xxxx\")\n .sourceDataType(\"xxxx\")\n .build())\n .cycleScheduleSettings(DiJobJobSettingsCycleScheduleSettingsArgs.builder()\n .cycleMigrationType(\"xxxx\")\n .scheduleParameters(\"xxxx\")\n .build())\n .build())\n .sourceDataSourceSettings(DiJobSourceDataSourceSettingArgs.builder()\n .dataSourceName(\"xxxx\")\n .dataSourceProperties(DiJobSourceDataSourceSettingDataSourcePropertiesArgs.builder()\n .encoding(\"xxxx\")\n .timezone(\"xxxx\")\n .build())\n .build())\n .destinationDataSourceType(\"xxxx\")\n .tableMappings(DiJobTableMappingArgs.builder()\n .sourceObjectSelectionRules( \n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"xxxx\")\n .expressionType(\"Exact\")\n .objectType(\"xxxx\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"xxxx\")\n .expressionType(\"Exact\")\n .objectType(\"xxxx\")\n .build())\n .transformationRules(DiJobTableMappingTransformationRuleArgs.builder()\n .ruleName(\"xxxx\")\n .ruleActionType(\"xxxx\")\n .ruleTargetType(\"xxxx\")\n .build())\n .build())\n .transformationRules(DiJobTransformationRuleArgs.builder()\n .ruleActionType(\"xxxx\")\n .ruleExpression(\"xxxx\")\n .ruleName(\"xxxx\")\n .ruleTargetType(\"xxxx\")\n .build())\n .destinationDataSourceSettings(DiJobDestinationDataSourceSettingArgs.builder()\n .dataSourceName(\"xxx\")\n .build())\n .build());\n\n var default_ = new DiAlarmRule(\"default\", DiAlarmRuleArgs.builder()\n .description(\"Description\")\n .triggerConditions(DiAlarmRuleTriggerConditionArgs.builder()\n .ddlReportTags(\"ALTERADDCOLUMN\")\n .threshold(20)\n .duration(10)\n .severity(\"Warning\")\n .build())\n .metricType(\"DdlReport\")\n .notificationSettings(DiAlarmRuleNotificationSettingsArgs.builder()\n .notificationChannels(DiAlarmRuleNotificationSettingsNotificationChannelArgs.builder()\n .severity(\"Warning\")\n .channels(\"Ding\")\n .build())\n .notificationReceivers(DiAlarmRuleNotificationSettingsNotificationReceiverArgs.builder()\n .receiverType(\"DingToken\")\n .receiverValues(\"1107550004253538\")\n .build())\n .inhibitionInterval(10)\n .build())\n .diJobId(defaultUW8inp.diJobId())\n .diAlarmRuleName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaulteNv8bu:\n type: alicloud:dataworks:Project\n properties:\n projectName: ${name}\n displayName: ${name}\n description: ${name}\n paiTaskEnabled: true\n defaultUW8inp:\n type: alicloud:dataworks:DiJob\n properties:\n description: xxxx\n projectId: ${defaulteNv8bu.id}\n jobName: xxx\n migrationType: api_xxx\n sourceDataSourceType: xxx\n resourceSettings:\n offlineResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n realtimeResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n scheduleResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n jobSettings:\n channelSettings: xxxx\n columnDataTypeSettings:\n - destinationDataType: xxxx\n sourceDataType: xxxx\n cycleScheduleSettings:\n cycleMigrationType: xxxx\n scheduleParameters: xxxx\n sourceDataSourceSettings:\n - dataSourceName: xxxx\n dataSourceProperties:\n encoding: xxxx\n timezone: xxxx\n destinationDataSourceType: xxxx\n tableMappings:\n - sourceObjectSelectionRules:\n - action: Include\n expression: xxxx\n expressionType: Exact\n objectType: xxxx\n - action: Include\n expression: xxxx\n expressionType: Exact\n objectType: xxxx\n transformationRules:\n - ruleName: xxxx\n ruleActionType: xxxx\n ruleTargetType: xxxx\n transformationRules:\n - ruleActionType: xxxx\n ruleExpression: xxxx\n ruleName: xxxx\n ruleTargetType: xxxx\n destinationDataSourceSettings:\n - dataSourceName: xxx\n default:\n type: alicloud:dataworks:DiAlarmRule\n properties:\n description: Description\n triggerConditions:\n - ddlReportTags:\n - ALTERADDCOLUMN\n threshold: '20'\n duration: '10'\n severity: Warning\n metricType: DdlReport\n notificationSettings:\n notificationChannels:\n - severity: Warning\n channels:\n - Ding\n notificationReceivers:\n - receiverType: DingToken\n receiverValues:\n - '1107550004253538'\n inhibitionInterval: '10'\n diJobId: ${defaultUW8inp.diJobId}\n diAlarmRuleName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Di Alarm Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/diAlarmRule:DiAlarmRule example \u003cdi_job_id\u003e:\u003cdi_alarm_rule_id\u003e\n```\n\n",
+ "description": "Provides a Data Works Di Alarm Rule resource.\n\nData Integration alarm rules.\n\nFor information about Data Works Di Alarm Rule and how to use it, see [What is Di Alarm Rule](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdialarmrule).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaulteNv8bu = new alicloud.dataworks.Project(\"defaulteNv8bu\", {\n projectName: name,\n displayName: name,\n description: name,\n paiTaskEnabled: true,\n});\nconst defaultUW8inp = new alicloud.dataworks.DiJob(\"defaultUW8inp\", {\n description: \"xxxx\",\n projectId: defaulteNv8bu.id,\n jobName: \"xxx\",\n migrationType: \"api_xxx\",\n sourceDataSourceType: \"xxx\",\n resourceSettings: {\n offlineResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n realtimeResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n scheduleResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"xx\",\n },\n },\n jobSettings: {\n channelSettings: \"xxxx\",\n columnDataTypeSettings: [{\n destinationDataType: \"xxxx\",\n sourceDataType: \"xxxx\",\n }],\n cycleScheduleSettings: {\n cycleMigrationType: \"xxxx\",\n scheduleParameters: \"xxxx\",\n },\n },\n sourceDataSourceSettings: [{\n dataSourceName: \"xxxx\",\n dataSourceProperties: {\n encoding: \"xxxx\",\n timezone: \"xxxx\",\n },\n }],\n destinationDataSourceType: \"xxxx\",\n tableMappings: [{\n sourceObjectSelectionRules: [\n {\n action: \"Include\",\n expression: \"xxxx\",\n expressionType: \"Exact\",\n objectType: \"xxxx\",\n },\n {\n action: \"Include\",\n expression: \"xxxx\",\n expressionType: \"Exact\",\n objectType: \"xxxx\",\n },\n ],\n transformationRules: [{\n ruleName: \"xxxx\",\n ruleActionType: \"xxxx\",\n ruleTargetType: \"xxxx\",\n }],\n }],\n transformationRules: [{\n ruleActionType: \"xxxx\",\n ruleExpression: \"xxxx\",\n ruleName: \"xxxx\",\n ruleTargetType: \"xxxx\",\n }],\n destinationDataSourceSettings: [{\n dataSourceName: \"xxx\",\n }],\n});\nconst _default = new alicloud.dataworks.DiAlarmRule(\"default\", {\n description: \"Description\",\n triggerConditions: [{\n ddlReportTags: [\"ALTERADDCOLUMN\"],\n threshold: 20,\n duration: 10,\n severity: \"Warning\",\n }],\n metricType: \"DdlReport\",\n notificationSettings: {\n notificationChannels: [{\n severity: \"Warning\",\n channels: [\"Ding\"],\n }],\n notificationReceivers: [{\n receiverType: \"DingToken\",\n receiverValues: [\"1107550004253538\"],\n }],\n inhibitionInterval: 10,\n },\n diJobId: defaultUW8inp.diJobId,\n diAlarmRuleName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefaulte_nv8bu = alicloud.dataworks.Project(\"defaulteNv8bu\",\n project_name=name,\n display_name=name,\n description=name,\n pai_task_enabled=True)\ndefault_uw8inp = alicloud.dataworks.DiJob(\"defaultUW8inp\",\n description=\"xxxx\",\n project_id=defaulte_nv8bu.id,\n job_name=\"xxx\",\n migration_type=\"api_xxx\",\n source_data_source_type=\"xxx\",\n resource_settings={\n \"offline_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n \"realtime_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n \"schedule_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"xx\",\n },\n },\n job_settings={\n \"channel_settings\": \"xxxx\",\n \"column_data_type_settings\": [{\n \"destination_data_type\": \"xxxx\",\n \"source_data_type\": \"xxxx\",\n }],\n \"cycle_schedule_settings\": {\n \"cycle_migration_type\": \"xxxx\",\n \"schedule_parameters\": \"xxxx\",\n },\n },\n source_data_source_settings=[{\n \"data_source_name\": \"xxxx\",\n \"data_source_properties\": {\n \"encoding\": \"xxxx\",\n \"timezone\": \"xxxx\",\n },\n }],\n destination_data_source_type=\"xxxx\",\n table_mappings=[{\n \"source_object_selection_rules\": [\n {\n \"action\": \"Include\",\n \"expression\": \"xxxx\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"xxxx\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"xxxx\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"xxxx\",\n },\n ],\n \"transformation_rules\": [{\n \"rule_name\": \"xxxx\",\n \"rule_action_type\": \"xxxx\",\n \"rule_target_type\": \"xxxx\",\n }],\n }],\n transformation_rules=[{\n \"rule_action_type\": \"xxxx\",\n \"rule_expression\": \"xxxx\",\n \"rule_name\": \"xxxx\",\n \"rule_target_type\": \"xxxx\",\n }],\n destination_data_source_settings=[{\n \"data_source_name\": \"xxx\",\n }])\ndefault = alicloud.dataworks.DiAlarmRule(\"default\",\n description=\"Description\",\n trigger_conditions=[{\n \"ddl_report_tags\": [\"ALTERADDCOLUMN\"],\n \"threshold\": 20,\n \"duration\": 10,\n \"severity\": \"Warning\",\n }],\n metric_type=\"DdlReport\",\n notification_settings={\n \"notification_channels\": [{\n \"severity\": \"Warning\",\n \"channels\": [\"Ding\"],\n }],\n \"notification_receivers\": [{\n \"receiver_type\": \"DingToken\",\n \"receiver_values\": [\"1107550004253538\"],\n }],\n \"inhibition_interval\": 10,\n },\n di_job_id=default_uw8inp.di_job_id,\n di_alarm_rule_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaulteNv8bu = new AliCloud.DataWorks.Project(\"defaulteNv8bu\", new()\n {\n ProjectName = name,\n DisplayName = name,\n Description = name,\n PaiTaskEnabled = true,\n });\n\n var defaultUW8inp = new AliCloud.DataWorks.DiJob(\"defaultUW8inp\", new()\n {\n Description = \"xxxx\",\n ProjectId = defaulteNv8bu.Id,\n JobName = \"xxx\",\n MigrationType = \"api_xxx\",\n SourceDataSourceType = \"xxx\",\n ResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsArgs\n {\n OfflineResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsOfflineResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n RealtimeResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n ScheduleResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsScheduleResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"xx\",\n },\n },\n JobSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsArgs\n {\n ChannelSettings = \"xxxx\",\n ColumnDataTypeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsColumnDataTypeSettingArgs\n {\n DestinationDataType = \"xxxx\",\n SourceDataType = \"xxxx\",\n },\n },\n CycleScheduleSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsCycleScheduleSettingsArgs\n {\n CycleMigrationType = \"xxxx\",\n ScheduleParameters = \"xxxx\",\n },\n },\n SourceDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingArgs\n {\n DataSourceName = \"xxxx\",\n DataSourceProperties = new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs\n {\n Encoding = \"xxxx\",\n Timezone = \"xxxx\",\n },\n },\n },\n DestinationDataSourceType = \"xxxx\",\n TableMappings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingArgs\n {\n SourceObjectSelectionRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"xxxx\",\n ExpressionType = \"Exact\",\n ObjectType = \"xxxx\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"xxxx\",\n ExpressionType = \"Exact\",\n ObjectType = \"xxxx\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingTransformationRuleArgs\n {\n RuleName = \"xxxx\",\n RuleActionType = \"xxxx\",\n RuleTargetType = \"xxxx\",\n },\n },\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTransformationRuleArgs\n {\n RuleActionType = \"xxxx\",\n RuleExpression = \"xxxx\",\n RuleName = \"xxxx\",\n RuleTargetType = \"xxxx\",\n },\n },\n DestinationDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobDestinationDataSourceSettingArgs\n {\n DataSourceName = \"xxx\",\n },\n },\n });\n\n var @default = new AliCloud.DataWorks.DiAlarmRule(\"default\", new()\n {\n Description = \"Description\",\n TriggerConditions = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleTriggerConditionArgs\n {\n DdlReportTags = new[]\n {\n \"ALTERADDCOLUMN\",\n },\n Threshold = 20,\n Duration = 10,\n Severity = \"Warning\",\n },\n },\n MetricType = \"DdlReport\",\n NotificationSettings = new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsArgs\n {\n NotificationChannels = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsNotificationChannelArgs\n {\n Severity = \"Warning\",\n Channels = new[]\n {\n \"Ding\",\n },\n },\n },\n NotificationReceivers = new[]\n {\n new AliCloud.DataWorks.Inputs.DiAlarmRuleNotificationSettingsNotificationReceiverArgs\n {\n ReceiverType = \"DingToken\",\n ReceiverValues = new[]\n {\n \"1107550004253538\",\n },\n },\n },\n InhibitionInterval = 10,\n },\n DiJobId = defaultUW8inp.DiJobId,\n DiAlarmRuleName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaulteNv8bu, err := dataworks.NewProject(ctx, \"defaulteNv8bu\", \u0026dataworks.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultUW8inp, err := dataworks.NewDiJob(ctx, \"defaultUW8inp\", \u0026dataworks.DiJobArgs{\n\t\t\tDescription: pulumi.String(\"xxxx\"),\n\t\t\tProjectId: defaulteNv8bu.ID(),\n\t\t\tJobName: pulumi.String(\"xxx\"),\n\t\t\tMigrationType: pulumi.String(\"api_xxx\"),\n\t\t\tSourceDataSourceType: pulumi.String(\"xxx\"),\n\t\t\tResourceSettings: \u0026dataworks.DiJobResourceSettingsArgs{\n\t\t\t\tOfflineResourceSettings: \u0026dataworks.DiJobResourceSettingsOfflineResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t\tRealtimeResourceSettings: \u0026dataworks.DiJobResourceSettingsRealtimeResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t\tScheduleResourceSettings: \u0026dataworks.DiJobResourceSettingsScheduleResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"xx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tJobSettings: \u0026dataworks.DiJobJobSettingsArgs{\n\t\t\t\tChannelSettings: pulumi.String(\"xxxx\"),\n\t\t\t\tColumnDataTypeSettings: dataworks.DiJobJobSettingsColumnDataTypeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsColumnDataTypeSettingArgs{\n\t\t\t\t\t\tDestinationDataType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\tSourceDataType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tCycleScheduleSettings: \u0026dataworks.DiJobJobSettingsCycleScheduleSettingsArgs{\n\t\t\t\t\tCycleMigrationType: pulumi.String(\"xxxx\"),\n\t\t\t\t\tScheduleParameters: pulumi.String(\"xxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceDataSourceSettings: dataworks.DiJobSourceDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobSourceDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"xxxx\"),\n\t\t\t\t\tDataSourceProperties: \u0026dataworks.DiJobSourceDataSourceSettingDataSourcePropertiesArgs{\n\t\t\t\t\t\tEncoding: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\tTimezone: pulumi.String(\"xxxx\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceType: pulumi.String(\"xxxx\"),\n\t\t\tTableMappings: dataworks.DiJobTableMappingArray{\n\t\t\t\t\u0026dataworks.DiJobTableMappingArgs{\n\t\t\t\t\tSourceObjectSelectionRules: dataworks.DiJobTableMappingSourceObjectSelectionRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTransformationRules: dataworks.DiJobTableMappingTransformationRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingTransformationRuleArgs{\n\t\t\t\t\t\t\tRuleName: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tRuleActionType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t\tRuleTargetType: pulumi.String(\"xxxx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransformationRules: dataworks.DiJobTransformationRuleArray{\n\t\t\t\t\u0026dataworks.DiJobTransformationRuleArgs{\n\t\t\t\t\tRuleActionType: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleExpression: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleName: pulumi.String(\"xxxx\"),\n\t\t\t\t\tRuleTargetType: pulumi.String(\"xxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceSettings: dataworks.DiJobDestinationDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobDestinationDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"xxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDiAlarmRule(ctx, \"default\", \u0026dataworks.DiAlarmRuleArgs{\n\t\t\tDescription: pulumi.String(\"Description\"),\n\t\t\tTriggerConditions: dataworks.DiAlarmRuleTriggerConditionArray{\n\t\t\t\t\u0026dataworks.DiAlarmRuleTriggerConditionArgs{\n\t\t\t\t\tDdlReportTags: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ALTERADDCOLUMN\"),\n\t\t\t\t\t},\n\t\t\t\t\tThreshold: pulumi.Int(20),\n\t\t\t\t\tDuration: pulumi.Int(10),\n\t\t\t\t\tSeverity: pulumi.String(\"Warning\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMetricType: pulumi.String(\"DdlReport\"),\n\t\t\tNotificationSettings: \u0026dataworks.DiAlarmRuleNotificationSettingsArgs{\n\t\t\t\tNotificationChannels: dataworks.DiAlarmRuleNotificationSettingsNotificationChannelArray{\n\t\t\t\t\t\u0026dataworks.DiAlarmRuleNotificationSettingsNotificationChannelArgs{\n\t\t\t\t\t\tSeverity: pulumi.String(\"Warning\"),\n\t\t\t\t\t\tChannels: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Ding\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tNotificationReceivers: dataworks.DiAlarmRuleNotificationSettingsNotificationReceiverArray{\n\t\t\t\t\t\u0026dataworks.DiAlarmRuleNotificationSettingsNotificationReceiverArgs{\n\t\t\t\t\t\tReceiverType: pulumi.String(\"DingToken\"),\n\t\t\t\t\t\tReceiverValues: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1107550004253538\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tInhibitionInterval: pulumi.Int(10),\n\t\t\t},\n\t\t\tDiJobId: defaultUW8inp.DiJobId,\n\t\t\tDiAlarmRuleName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DiJob;\nimport com.pulumi.alicloud.dataworks.DiJobArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsOfflineResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsScheduleResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsCycleScheduleSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTableMappingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTransformationRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobDestinationDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.DiAlarmRule;\nimport com.pulumi.alicloud.dataworks.DiAlarmRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiAlarmRuleTriggerConditionArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiAlarmRuleNotificationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaulteNv8bu = new Project(\"defaulteNv8bu\", ProjectArgs.builder()\n .projectName(name)\n .displayName(name)\n .description(name)\n .paiTaskEnabled(true)\n .build());\n\n var defaultUW8inp = new DiJob(\"defaultUW8inp\", DiJobArgs.builder()\n .description(\"xxxx\")\n .projectId(defaulteNv8bu.id())\n .jobName(\"xxx\")\n .migrationType(\"api_xxx\")\n .sourceDataSourceType(\"xxx\")\n .resourceSettings(DiJobResourceSettingsArgs.builder()\n .offlineResourceSettings(DiJobResourceSettingsOfflineResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .realtimeResourceSettings(DiJobResourceSettingsRealtimeResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .scheduleResourceSettings(DiJobResourceSettingsScheduleResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"xx\")\n .build())\n .build())\n .jobSettings(DiJobJobSettingsArgs.builder()\n .channelSettings(\"xxxx\")\n .columnDataTypeSettings(DiJobJobSettingsColumnDataTypeSettingArgs.builder()\n .destinationDataType(\"xxxx\")\n .sourceDataType(\"xxxx\")\n .build())\n .cycleScheduleSettings(DiJobJobSettingsCycleScheduleSettingsArgs.builder()\n .cycleMigrationType(\"xxxx\")\n .scheduleParameters(\"xxxx\")\n .build())\n .build())\n .sourceDataSourceSettings(DiJobSourceDataSourceSettingArgs.builder()\n .dataSourceName(\"xxxx\")\n .dataSourceProperties(DiJobSourceDataSourceSettingDataSourcePropertiesArgs.builder()\n .encoding(\"xxxx\")\n .timezone(\"xxxx\")\n .build())\n .build())\n .destinationDataSourceType(\"xxxx\")\n .tableMappings(DiJobTableMappingArgs.builder()\n .sourceObjectSelectionRules( \n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"xxxx\")\n .expressionType(\"Exact\")\n .objectType(\"xxxx\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"xxxx\")\n .expressionType(\"Exact\")\n .objectType(\"xxxx\")\n .build())\n .transformationRules(DiJobTableMappingTransformationRuleArgs.builder()\n .ruleName(\"xxxx\")\n .ruleActionType(\"xxxx\")\n .ruleTargetType(\"xxxx\")\n .build())\n .build())\n .transformationRules(DiJobTransformationRuleArgs.builder()\n .ruleActionType(\"xxxx\")\n .ruleExpression(\"xxxx\")\n .ruleName(\"xxxx\")\n .ruleTargetType(\"xxxx\")\n .build())\n .destinationDataSourceSettings(DiJobDestinationDataSourceSettingArgs.builder()\n .dataSourceName(\"xxx\")\n .build())\n .build());\n\n var default_ = new DiAlarmRule(\"default\", DiAlarmRuleArgs.builder()\n .description(\"Description\")\n .triggerConditions(DiAlarmRuleTriggerConditionArgs.builder()\n .ddlReportTags(\"ALTERADDCOLUMN\")\n .threshold(20)\n .duration(10)\n .severity(\"Warning\")\n .build())\n .metricType(\"DdlReport\")\n .notificationSettings(DiAlarmRuleNotificationSettingsArgs.builder()\n .notificationChannels(DiAlarmRuleNotificationSettingsNotificationChannelArgs.builder()\n .severity(\"Warning\")\n .channels(\"Ding\")\n .build())\n .notificationReceivers(DiAlarmRuleNotificationSettingsNotificationReceiverArgs.builder()\n .receiverType(\"DingToken\")\n .receiverValues(\"1107550004253538\")\n .build())\n .inhibitionInterval(10)\n .build())\n .diJobId(defaultUW8inp.diJobId())\n .diAlarmRuleName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaulteNv8bu:\n type: alicloud:dataworks:Project\n properties:\n projectName: ${name}\n displayName: ${name}\n description: ${name}\n paiTaskEnabled: true\n defaultUW8inp:\n type: alicloud:dataworks:DiJob\n properties:\n description: xxxx\n projectId: ${defaulteNv8bu.id}\n jobName: xxx\n migrationType: api_xxx\n sourceDataSourceType: xxx\n resourceSettings:\n offlineResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n realtimeResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n scheduleResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: xx\n jobSettings:\n channelSettings: xxxx\n columnDataTypeSettings:\n - destinationDataType: xxxx\n sourceDataType: xxxx\n cycleScheduleSettings:\n cycleMigrationType: xxxx\n scheduleParameters: xxxx\n sourceDataSourceSettings:\n - dataSourceName: xxxx\n dataSourceProperties:\n encoding: xxxx\n timezone: xxxx\n destinationDataSourceType: xxxx\n tableMappings:\n - sourceObjectSelectionRules:\n - action: Include\n expression: xxxx\n expressionType: Exact\n objectType: xxxx\n - action: Include\n expression: xxxx\n expressionType: Exact\n objectType: xxxx\n transformationRules:\n - ruleName: xxxx\n ruleActionType: xxxx\n ruleTargetType: xxxx\n transformationRules:\n - ruleActionType: xxxx\n ruleExpression: xxxx\n ruleName: xxxx\n ruleTargetType: xxxx\n destinationDataSourceSettings:\n - dataSourceName: xxx\n default:\n type: alicloud:dataworks:DiAlarmRule\n properties:\n description: Description\n triggerConditions:\n - ddlReportTags:\n - ALTERADDCOLUMN\n threshold: '20'\n duration: '10'\n severity: Warning\n metricType: DdlReport\n notificationSettings:\n notificationChannels:\n - severity: Warning\n channels:\n - Ding\n notificationReceivers:\n - receiverType: DingToken\n receiverValues:\n - '1107550004253538'\n inhibitionInterval: '10'\n diJobId: ${defaultUW8inp.diJobId}\n diAlarmRuleName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Di Alarm Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/diAlarmRule:DiAlarmRule example \u003cdi_job_id\u003e:\u003cdi_alarm_rule_id\u003e\n```\n\n",
"properties": {
"description": {
"type": "string"
@@ -136760,7 +139389,7 @@
}
},
"alicloud:dataworks/diJob:DiJob": {
- "description": "Provides a Data Works Di Job resource.\n\nData Integration Tasks.\n\nFor information about Data Works Di Job and how to use it, see [What is Di Job](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdijob).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultMMHL8U = new alicloud.dataworks.Project(\"defaultMMHL8U\", {\n projectName: name,\n displayName: name,\n description: name,\n paiTaskEnabled: true,\n});\nconst _default = new alicloud.dataworks.DiJob(\"default\", {\n description: name,\n projectId: defaultMMHL8U.id,\n jobName: \"zhenyuan_example_case\",\n migrationType: \"api_FullAndRealtimeIncremental\",\n sourceDataSourceSettings: [{\n dataSourceName: \"dw_mysql\",\n dataSourceProperties: {\n encoding: \"utf-8\",\n timezone: \"Asia/Shanghai\",\n },\n }],\n destinationDataSourceType: \"Hologres\",\n tableMappings: [{\n sourceObjectSelectionRules: [\n {\n action: \"Include\",\n expression: \"dw_mysql\",\n expressionType: \"Exact\",\n objectType: \"Datasource\",\n },\n {\n action: \"Include\",\n expression: \"example_db1\",\n expressionType: \"Exact\",\n objectType: \"Database\",\n },\n {\n action: \"Include\",\n expression: \"lsc_example01\",\n expressionType: \"Exact\",\n objectType: \"Table\",\n },\n ],\n transformationRules: [{\n ruleName: \"my_table_rename_rule\",\n ruleActionType: \"Rename\",\n ruleTargetType: \"Table\",\n }],\n }],\n sourceDataSourceType: \"MySQL\",\n resourceSettings: {\n offlineResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n realtimeResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n scheduleResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n },\n transformationRules: [{\n ruleActionType: \"Rename\",\n ruleExpression: \"{\\\"expression\\\":\\\"table2\\\"}\",\n ruleName: \"my_table_rename_rule\",\n ruleTargetType: \"Table\",\n }],\n destinationDataSourceSettings: [{\n dataSourceName: \"dw_example_holo\",\n }],\n jobSettings: {\n columnDataTypeSettings: [{\n destinationDataType: \"bigint\",\n sourceDataType: \"longtext\",\n }],\n ddlHandlingSettings: [{\n action: \"Ignore\",\n type: \"CreateTable\",\n }],\n runtimeSettings: [{\n name: \"runtime.realtime.concurrent\",\n value: \"1\",\n }],\n channelSettings: \"1\",\n cycleScheduleSettings: {\n cycleMigrationType: \"2\",\n scheduleParameters: \"3\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault_mmhl8_u = alicloud.dataworks.Project(\"defaultMMHL8U\",\n project_name=name,\n display_name=name,\n description=name,\n pai_task_enabled=True)\ndefault = alicloud.dataworks.DiJob(\"default\",\n description=name,\n project_id=default_mmhl8_u.id,\n job_name=\"zhenyuan_example_case\",\n migration_type=\"api_FullAndRealtimeIncremental\",\n source_data_source_settings=[{\n \"data_source_name\": \"dw_mysql\",\n \"data_source_properties\": {\n \"encoding\": \"utf-8\",\n \"timezone\": \"Asia/Shanghai\",\n },\n }],\n destination_data_source_type=\"Hologres\",\n table_mappings=[{\n \"source_object_selection_rules\": [\n {\n \"action\": \"Include\",\n \"expression\": \"dw_mysql\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Datasource\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"example_db1\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Database\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"lsc_example01\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Table\",\n },\n ],\n \"transformation_rules\": [{\n \"rule_name\": \"my_table_rename_rule\",\n \"rule_action_type\": \"Rename\",\n \"rule_target_type\": \"Table\",\n }],\n }],\n source_data_source_type=\"MySQL\",\n resource_settings={\n \"offline_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n \"realtime_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n \"schedule_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n },\n transformation_rules=[{\n \"rule_action_type\": \"Rename\",\n \"rule_expression\": \"{\\\"expression\\\":\\\"table2\\\"}\",\n \"rule_name\": \"my_table_rename_rule\",\n \"rule_target_type\": \"Table\",\n }],\n destination_data_source_settings=[{\n \"data_source_name\": \"dw_example_holo\",\n }],\n job_settings={\n \"column_data_type_settings\": [{\n \"destination_data_type\": \"bigint\",\n \"source_data_type\": \"longtext\",\n }],\n \"ddl_handling_settings\": [{\n \"action\": \"Ignore\",\n \"type\": \"CreateTable\",\n }],\n \"runtime_settings\": [{\n \"name\": \"runtime.realtime.concurrent\",\n \"value\": \"1\",\n }],\n \"channel_settings\": \"1\",\n \"cycle_schedule_settings\": {\n \"cycle_migration_type\": \"2\",\n \"schedule_parameters\": \"3\",\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultMMHL8U = new AliCloud.DataWorks.Project(\"defaultMMHL8U\", new()\n {\n ProjectName = name,\n DisplayName = name,\n Description = name,\n PaiTaskEnabled = true,\n });\n\n var @default = new AliCloud.DataWorks.DiJob(\"default\", new()\n {\n Description = name,\n ProjectId = defaultMMHL8U.Id,\n JobName = \"zhenyuan_example_case\",\n MigrationType = \"api_FullAndRealtimeIncremental\",\n SourceDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingArgs\n {\n DataSourceName = \"dw_mysql\",\n DataSourceProperties = new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs\n {\n Encoding = \"utf-8\",\n Timezone = \"Asia/Shanghai\",\n },\n },\n },\n DestinationDataSourceType = \"Hologres\",\n TableMappings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingArgs\n {\n SourceObjectSelectionRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"dw_mysql\",\n ExpressionType = \"Exact\",\n ObjectType = \"Datasource\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"example_db1\",\n ExpressionType = \"Exact\",\n ObjectType = \"Database\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"lsc_example01\",\n ExpressionType = \"Exact\",\n ObjectType = \"Table\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingTransformationRuleArgs\n {\n RuleName = \"my_table_rename_rule\",\n RuleActionType = \"Rename\",\n RuleTargetType = \"Table\",\n },\n },\n },\n },\n SourceDataSourceType = \"MySQL\",\n ResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsArgs\n {\n OfflineResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsOfflineResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n RealtimeResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n ScheduleResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsScheduleResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTransformationRuleArgs\n {\n RuleActionType = \"Rename\",\n RuleExpression = \"{\\\"expression\\\":\\\"table2\\\"}\",\n RuleName = \"my_table_rename_rule\",\n RuleTargetType = \"Table\",\n },\n },\n DestinationDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobDestinationDataSourceSettingArgs\n {\n DataSourceName = \"dw_example_holo\",\n },\n },\n JobSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsArgs\n {\n ColumnDataTypeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsColumnDataTypeSettingArgs\n {\n DestinationDataType = \"bigint\",\n SourceDataType = \"longtext\",\n },\n },\n DdlHandlingSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsDdlHandlingSettingArgs\n {\n Action = \"Ignore\",\n Type = \"CreateTable\",\n },\n },\n RuntimeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsRuntimeSettingArgs\n {\n Name = \"runtime.realtime.concurrent\",\n Value = \"1\",\n },\n },\n ChannelSettings = \"1\",\n CycleScheduleSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsCycleScheduleSettingsArgs\n {\n CycleMigrationType = \"2\",\n ScheduleParameters = \"3\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultMMHL8U, err := dataworks.NewProject(ctx, \"defaultMMHL8U\", \u0026dataworks.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDiJob(ctx, \"default\", \u0026dataworks.DiJobArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tProjectId: defaultMMHL8U.ID(),\n\t\t\tJobName: pulumi.String(\"zhenyuan_example_case\"),\n\t\t\tMigrationType: pulumi.String(\"api_FullAndRealtimeIncremental\"),\n\t\t\tSourceDataSourceSettings: dataworks.DiJobSourceDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobSourceDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"dw_mysql\"),\n\t\t\t\t\tDataSourceProperties: \u0026dataworks.DiJobSourceDataSourceSettingDataSourcePropertiesArgs{\n\t\t\t\t\t\tEncoding: pulumi.String(\"utf-8\"),\n\t\t\t\t\t\tTimezone: pulumi.String(\"Asia/Shanghai\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceType: pulumi.String(\"Hologres\"),\n\t\t\tTableMappings: dataworks.DiJobTableMappingArray{\n\t\t\t\t\u0026dataworks.DiJobTableMappingArgs{\n\t\t\t\t\tSourceObjectSelectionRules: dataworks.DiJobTableMappingSourceObjectSelectionRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"dw_mysql\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Datasource\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"example_db1\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Database\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"lsc_example01\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Table\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTransformationRules: dataworks.DiJobTableMappingTransformationRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingTransformationRuleArgs{\n\t\t\t\t\t\t\tRuleName: pulumi.String(\"my_table_rename_rule\"),\n\t\t\t\t\t\t\tRuleActionType: pulumi.String(\"Rename\"),\n\t\t\t\t\t\t\tRuleTargetType: pulumi.String(\"Table\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceDataSourceType: pulumi.String(\"MySQL\"),\n\t\t\tResourceSettings: \u0026dataworks.DiJobResourceSettingsArgs{\n\t\t\t\tOfflineResourceSettings: \u0026dataworks.DiJobResourceSettingsOfflineResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t\tRealtimeResourceSettings: \u0026dataworks.DiJobResourceSettingsRealtimeResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t\tScheduleResourceSettings: \u0026dataworks.DiJobResourceSettingsScheduleResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransformationRules: dataworks.DiJobTransformationRuleArray{\n\t\t\t\t\u0026dataworks.DiJobTransformationRuleArgs{\n\t\t\t\t\tRuleActionType: pulumi.String(\"Rename\"),\n\t\t\t\t\tRuleExpression: pulumi.String(\"{\\\"expression\\\":\\\"table2\\\"}\"),\n\t\t\t\t\tRuleName: pulumi.String(\"my_table_rename_rule\"),\n\t\t\t\t\tRuleTargetType: pulumi.String(\"Table\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceSettings: dataworks.DiJobDestinationDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobDestinationDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"dw_example_holo\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tJobSettings: \u0026dataworks.DiJobJobSettingsArgs{\n\t\t\t\tColumnDataTypeSettings: dataworks.DiJobJobSettingsColumnDataTypeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsColumnDataTypeSettingArgs{\n\t\t\t\t\t\tDestinationDataType: pulumi.String(\"bigint\"),\n\t\t\t\t\t\tSourceDataType: pulumi.String(\"longtext\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDdlHandlingSettings: dataworks.DiJobJobSettingsDdlHandlingSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsDdlHandlingSettingArgs{\n\t\t\t\t\t\tAction: pulumi.String(\"Ignore\"),\n\t\t\t\t\t\tType: pulumi.String(\"CreateTable\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRuntimeSettings: dataworks.DiJobJobSettingsRuntimeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsRuntimeSettingArgs{\n\t\t\t\t\t\tName: pulumi.String(\"runtime.realtime.concurrent\"),\n\t\t\t\t\t\tValue: pulumi.String(\"1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tChannelSettings: pulumi.String(\"1\"),\n\t\t\t\tCycleScheduleSettings: \u0026dataworks.DiJobJobSettingsCycleScheduleSettingsArgs{\n\t\t\t\t\tCycleMigrationType: pulumi.String(\"2\"),\n\t\t\t\t\tScheduleParameters: pulumi.String(\"3\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DiJob;\nimport com.pulumi.alicloud.dataworks.DiJobArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTableMappingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsOfflineResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsScheduleResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTransformationRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobDestinationDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsCycleScheduleSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultMMHL8U = new Project(\"defaultMMHL8U\", ProjectArgs.builder()\n .projectName(name)\n .displayName(name)\n .description(name)\n .paiTaskEnabled(true)\n .build());\n\n var default_ = new DiJob(\"default\", DiJobArgs.builder()\n .description(name)\n .projectId(defaultMMHL8U.id())\n .jobName(\"zhenyuan_example_case\")\n .migrationType(\"api_FullAndRealtimeIncremental\")\n .sourceDataSourceSettings(DiJobSourceDataSourceSettingArgs.builder()\n .dataSourceName(\"dw_mysql\")\n .dataSourceProperties(DiJobSourceDataSourceSettingDataSourcePropertiesArgs.builder()\n .encoding(\"utf-8\")\n .timezone(\"Asia/Shanghai\")\n .build())\n .build())\n .destinationDataSourceType(\"Hologres\")\n .tableMappings(DiJobTableMappingArgs.builder()\n .sourceObjectSelectionRules( \n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"dw_mysql\")\n .expressionType(\"Exact\")\n .objectType(\"Datasource\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"example_db1\")\n .expressionType(\"Exact\")\n .objectType(\"Database\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"lsc_example01\")\n .expressionType(\"Exact\")\n .objectType(\"Table\")\n .build())\n .transformationRules(DiJobTableMappingTransformationRuleArgs.builder()\n .ruleName(\"my_table_rename_rule\")\n .ruleActionType(\"Rename\")\n .ruleTargetType(\"Table\")\n .build())\n .build())\n .sourceDataSourceType(\"MySQL\")\n .resourceSettings(DiJobResourceSettingsArgs.builder()\n .offlineResourceSettings(DiJobResourceSettingsOfflineResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .realtimeResourceSettings(DiJobResourceSettingsRealtimeResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .scheduleResourceSettings(DiJobResourceSettingsScheduleResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .build())\n .transformationRules(DiJobTransformationRuleArgs.builder()\n .ruleActionType(\"Rename\")\n .ruleExpression(\"{\\\"expression\\\":\\\"table2\\\"}\")\n .ruleName(\"my_table_rename_rule\")\n .ruleTargetType(\"Table\")\n .build())\n .destinationDataSourceSettings(DiJobDestinationDataSourceSettingArgs.builder()\n .dataSourceName(\"dw_example_holo\")\n .build())\n .jobSettings(DiJobJobSettingsArgs.builder()\n .columnDataTypeSettings(DiJobJobSettingsColumnDataTypeSettingArgs.builder()\n .destinationDataType(\"bigint\")\n .sourceDataType(\"longtext\")\n .build())\n .ddlHandlingSettings(DiJobJobSettingsDdlHandlingSettingArgs.builder()\n .action(\"Ignore\")\n .type(\"CreateTable\")\n .build())\n .runtimeSettings(DiJobJobSettingsRuntimeSettingArgs.builder()\n .name(\"runtime.realtime.concurrent\")\n .value(\"1\")\n .build())\n .channelSettings(\"1\")\n .cycleScheduleSettings(DiJobJobSettingsCycleScheduleSettingsArgs.builder()\n .cycleMigrationType(\"2\")\n .scheduleParameters(\"3\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultMMHL8U:\n type: alicloud:dataworks:Project\n properties:\n projectName: ${name}\n displayName: ${name}\n description: ${name}\n paiTaskEnabled: true\n default:\n type: alicloud:dataworks:DiJob\n properties:\n description: ${name}\n projectId: ${defaultMMHL8U.id}\n jobName: zhenyuan_example_case\n migrationType: api_FullAndRealtimeIncremental\n sourceDataSourceSettings:\n - dataSourceName: dw_mysql\n dataSourceProperties:\n encoding: utf-8\n timezone: Asia/Shanghai\n destinationDataSourceType: Hologres\n tableMappings:\n - sourceObjectSelectionRules:\n - action: Include\n expression: dw_mysql\n expressionType: Exact\n objectType: Datasource\n - action: Include\n expression: example_db1\n expressionType: Exact\n objectType: Database\n - action: Include\n expression: lsc_example01\n expressionType: Exact\n objectType: Table\n transformationRules:\n - ruleName: my_table_rename_rule\n ruleActionType: Rename\n ruleTargetType: Table\n sourceDataSourceType: MySQL\n resourceSettings:\n offlineResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n realtimeResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n scheduleResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n transformationRules:\n - ruleActionType: Rename\n ruleExpression: '{\"expression\":\"table2\"}'\n ruleName: my_table_rename_rule\n ruleTargetType: Table\n destinationDataSourceSettings:\n - dataSourceName: dw_example_holo\n jobSettings:\n columnDataTypeSettings:\n - destinationDataType: bigint\n sourceDataType: longtext\n ddlHandlingSettings:\n - action: Ignore\n type: CreateTable\n runtimeSettings:\n - name: runtime.realtime.concurrent\n value: '1'\n channelSettings: '1'\n cycleScheduleSettings:\n cycleMigrationType: '2'\n scheduleParameters: '3'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Di Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/diJob:DiJob example \u003cproject_id\u003e:\u003cdi_job_id\u003e\n```\n\n",
+ "description": "Provides a Data Works Di Job resource.\n\nData Integration Tasks.\n\nFor information about Data Works Di Job and how to use it, see [What is Di Job](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createdijob).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultMMHL8U = new alicloud.dataworks.Project(\"defaultMMHL8U\", {\n projectName: name,\n displayName: name,\n description: name,\n paiTaskEnabled: true,\n});\nconst _default = new alicloud.dataworks.DiJob(\"default\", {\n description: name,\n projectId: defaultMMHL8U.id,\n jobName: \"zhenyuan_example_case\",\n migrationType: \"api_FullAndRealtimeIncremental\",\n sourceDataSourceSettings: [{\n dataSourceName: \"dw_mysql\",\n dataSourceProperties: {\n encoding: \"utf-8\",\n timezone: \"Asia/Shanghai\",\n },\n }],\n destinationDataSourceType: \"Hologres\",\n tableMappings: [{\n sourceObjectSelectionRules: [\n {\n action: \"Include\",\n expression: \"dw_mysql\",\n expressionType: \"Exact\",\n objectType: \"Datasource\",\n },\n {\n action: \"Include\",\n expression: \"example_db1\",\n expressionType: \"Exact\",\n objectType: \"Database\",\n },\n {\n action: \"Include\",\n expression: \"lsc_example01\",\n expressionType: \"Exact\",\n objectType: \"Table\",\n },\n ],\n transformationRules: [{\n ruleName: \"my_table_rename_rule\",\n ruleActionType: \"Rename\",\n ruleTargetType: \"Table\",\n }],\n }],\n sourceDataSourceType: \"MySQL\",\n resourceSettings: {\n offlineResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n realtimeResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n scheduleResourceSettings: {\n requestedCu: 2,\n resourceGroupIdentifier: \"S_res_group_524257424564736_1716799673667\",\n },\n },\n transformationRules: [{\n ruleActionType: \"Rename\",\n ruleExpression: \"{\\\"expression\\\":\\\"table2\\\"}\",\n ruleName: \"my_table_rename_rule\",\n ruleTargetType: \"Table\",\n }],\n destinationDataSourceSettings: [{\n dataSourceName: \"dw_example_holo\",\n }],\n jobSettings: {\n columnDataTypeSettings: [{\n destinationDataType: \"bigint\",\n sourceDataType: \"longtext\",\n }],\n ddlHandlingSettings: [{\n action: \"Ignore\",\n type: \"CreateTable\",\n }],\n runtimeSettings: [{\n name: \"runtime.realtime.concurrent\",\n value: \"1\",\n }],\n channelSettings: \"1\",\n cycleScheduleSettings: {\n cycleMigrationType: \"2\",\n scheduleParameters: \"3\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault_mmhl8_u = alicloud.dataworks.Project(\"defaultMMHL8U\",\n project_name=name,\n display_name=name,\n description=name,\n pai_task_enabled=True)\ndefault = alicloud.dataworks.DiJob(\"default\",\n description=name,\n project_id=default_mmhl8_u.id,\n job_name=\"zhenyuan_example_case\",\n migration_type=\"api_FullAndRealtimeIncremental\",\n source_data_source_settings=[{\n \"data_source_name\": \"dw_mysql\",\n \"data_source_properties\": {\n \"encoding\": \"utf-8\",\n \"timezone\": \"Asia/Shanghai\",\n },\n }],\n destination_data_source_type=\"Hologres\",\n table_mappings=[{\n \"source_object_selection_rules\": [\n {\n \"action\": \"Include\",\n \"expression\": \"dw_mysql\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Datasource\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"example_db1\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Database\",\n },\n {\n \"action\": \"Include\",\n \"expression\": \"lsc_example01\",\n \"expression_type\": \"Exact\",\n \"object_type\": \"Table\",\n },\n ],\n \"transformation_rules\": [{\n \"rule_name\": \"my_table_rename_rule\",\n \"rule_action_type\": \"Rename\",\n \"rule_target_type\": \"Table\",\n }],\n }],\n source_data_source_type=\"MySQL\",\n resource_settings={\n \"offline_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n \"realtime_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n \"schedule_resource_settings\": {\n \"requested_cu\": 2,\n \"resource_group_identifier\": \"S_res_group_524257424564736_1716799673667\",\n },\n },\n transformation_rules=[{\n \"rule_action_type\": \"Rename\",\n \"rule_expression\": \"{\\\"expression\\\":\\\"table2\\\"}\",\n \"rule_name\": \"my_table_rename_rule\",\n \"rule_target_type\": \"Table\",\n }],\n destination_data_source_settings=[{\n \"data_source_name\": \"dw_example_holo\",\n }],\n job_settings={\n \"column_data_type_settings\": [{\n \"destination_data_type\": \"bigint\",\n \"source_data_type\": \"longtext\",\n }],\n \"ddl_handling_settings\": [{\n \"action\": \"Ignore\",\n \"type\": \"CreateTable\",\n }],\n \"runtime_settings\": [{\n \"name\": \"runtime.realtime.concurrent\",\n \"value\": \"1\",\n }],\n \"channel_settings\": \"1\",\n \"cycle_schedule_settings\": {\n \"cycle_migration_type\": \"2\",\n \"schedule_parameters\": \"3\",\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultMMHL8U = new AliCloud.DataWorks.Project(\"defaultMMHL8U\", new()\n {\n ProjectName = name,\n DisplayName = name,\n Description = name,\n PaiTaskEnabled = true,\n });\n\n var @default = new AliCloud.DataWorks.DiJob(\"default\", new()\n {\n Description = name,\n ProjectId = defaultMMHL8U.Id,\n JobName = \"zhenyuan_example_case\",\n MigrationType = \"api_FullAndRealtimeIncremental\",\n SourceDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingArgs\n {\n DataSourceName = \"dw_mysql\",\n DataSourceProperties = new AliCloud.DataWorks.Inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs\n {\n Encoding = \"utf-8\",\n Timezone = \"Asia/Shanghai\",\n },\n },\n },\n DestinationDataSourceType = \"Hologres\",\n TableMappings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingArgs\n {\n SourceObjectSelectionRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"dw_mysql\",\n ExpressionType = \"Exact\",\n ObjectType = \"Datasource\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"example_db1\",\n ExpressionType = \"Exact\",\n ObjectType = \"Database\",\n },\n new AliCloud.DataWorks.Inputs.DiJobTableMappingSourceObjectSelectionRuleArgs\n {\n Action = \"Include\",\n Expression = \"lsc_example01\",\n ExpressionType = \"Exact\",\n ObjectType = \"Table\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTableMappingTransformationRuleArgs\n {\n RuleName = \"my_table_rename_rule\",\n RuleActionType = \"Rename\",\n RuleTargetType = \"Table\",\n },\n },\n },\n },\n SourceDataSourceType = \"MySQL\",\n ResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsArgs\n {\n OfflineResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsOfflineResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n RealtimeResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n ScheduleResourceSettings = new AliCloud.DataWorks.Inputs.DiJobResourceSettingsScheduleResourceSettingsArgs\n {\n RequestedCu = 2,\n ResourceGroupIdentifier = \"S_res_group_524257424564736_1716799673667\",\n },\n },\n TransformationRules = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobTransformationRuleArgs\n {\n RuleActionType = \"Rename\",\n RuleExpression = \"{\\\"expression\\\":\\\"table2\\\"}\",\n RuleName = \"my_table_rename_rule\",\n RuleTargetType = \"Table\",\n },\n },\n DestinationDataSourceSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobDestinationDataSourceSettingArgs\n {\n DataSourceName = \"dw_example_holo\",\n },\n },\n JobSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsArgs\n {\n ColumnDataTypeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsColumnDataTypeSettingArgs\n {\n DestinationDataType = \"bigint\",\n SourceDataType = \"longtext\",\n },\n },\n DdlHandlingSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsDdlHandlingSettingArgs\n {\n Action = \"Ignore\",\n Type = \"CreateTable\",\n },\n },\n RuntimeSettings = new[]\n {\n new AliCloud.DataWorks.Inputs.DiJobJobSettingsRuntimeSettingArgs\n {\n Name = \"runtime.realtime.concurrent\",\n Value = \"1\",\n },\n },\n ChannelSettings = \"1\",\n CycleScheduleSettings = new AliCloud.DataWorks.Inputs.DiJobJobSettingsCycleScheduleSettingsArgs\n {\n CycleMigrationType = \"2\",\n ScheduleParameters = \"3\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultMMHL8U, err := dataworks.NewProject(ctx, \"defaultMMHL8U\", \u0026dataworks.ProjectArgs{\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDiJob(ctx, \"default\", \u0026dataworks.DiJobArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tProjectId: defaultMMHL8U.ID(),\n\t\t\tJobName: pulumi.String(\"zhenyuan_example_case\"),\n\t\t\tMigrationType: pulumi.String(\"api_FullAndRealtimeIncremental\"),\n\t\t\tSourceDataSourceSettings: dataworks.DiJobSourceDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobSourceDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"dw_mysql\"),\n\t\t\t\t\tDataSourceProperties: \u0026dataworks.DiJobSourceDataSourceSettingDataSourcePropertiesArgs{\n\t\t\t\t\t\tEncoding: pulumi.String(\"utf-8\"),\n\t\t\t\t\t\tTimezone: pulumi.String(\"Asia/Shanghai\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceType: pulumi.String(\"Hologres\"),\n\t\t\tTableMappings: dataworks.DiJobTableMappingArray{\n\t\t\t\t\u0026dataworks.DiJobTableMappingArgs{\n\t\t\t\t\tSourceObjectSelectionRules: dataworks.DiJobTableMappingSourceObjectSelectionRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"dw_mysql\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Datasource\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"example_db1\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Database\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingSourceObjectSelectionRuleArgs{\n\t\t\t\t\t\t\tAction: pulumi.String(\"Include\"),\n\t\t\t\t\t\t\tExpression: pulumi.String(\"lsc_example01\"),\n\t\t\t\t\t\t\tExpressionType: pulumi.String(\"Exact\"),\n\t\t\t\t\t\t\tObjectType: pulumi.String(\"Table\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTransformationRules: dataworks.DiJobTableMappingTransformationRuleArray{\n\t\t\t\t\t\t\u0026dataworks.DiJobTableMappingTransformationRuleArgs{\n\t\t\t\t\t\t\tRuleName: pulumi.String(\"my_table_rename_rule\"),\n\t\t\t\t\t\t\tRuleActionType: pulumi.String(\"Rename\"),\n\t\t\t\t\t\t\tRuleTargetType: pulumi.String(\"Table\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceDataSourceType: pulumi.String(\"MySQL\"),\n\t\t\tResourceSettings: \u0026dataworks.DiJobResourceSettingsArgs{\n\t\t\t\tOfflineResourceSettings: \u0026dataworks.DiJobResourceSettingsOfflineResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t\tRealtimeResourceSettings: \u0026dataworks.DiJobResourceSettingsRealtimeResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t\tScheduleResourceSettings: \u0026dataworks.DiJobResourceSettingsScheduleResourceSettingsArgs{\n\t\t\t\t\tRequestedCu: pulumi.Float64(2),\n\t\t\t\t\tResourceGroupIdentifier: pulumi.String(\"S_res_group_524257424564736_1716799673667\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTransformationRules: dataworks.DiJobTransformationRuleArray{\n\t\t\t\t\u0026dataworks.DiJobTransformationRuleArgs{\n\t\t\t\t\tRuleActionType: pulumi.String(\"Rename\"),\n\t\t\t\t\tRuleExpression: pulumi.String(\"{\\\"expression\\\":\\\"table2\\\"}\"),\n\t\t\t\t\tRuleName: pulumi.String(\"my_table_rename_rule\"),\n\t\t\t\t\tRuleTargetType: pulumi.String(\"Table\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDestinationDataSourceSettings: dataworks.DiJobDestinationDataSourceSettingArray{\n\t\t\t\t\u0026dataworks.DiJobDestinationDataSourceSettingArgs{\n\t\t\t\t\tDataSourceName: pulumi.String(\"dw_example_holo\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tJobSettings: \u0026dataworks.DiJobJobSettingsArgs{\n\t\t\t\tColumnDataTypeSettings: dataworks.DiJobJobSettingsColumnDataTypeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsColumnDataTypeSettingArgs{\n\t\t\t\t\t\tDestinationDataType: pulumi.String(\"bigint\"),\n\t\t\t\t\t\tSourceDataType: pulumi.String(\"longtext\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDdlHandlingSettings: dataworks.DiJobJobSettingsDdlHandlingSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsDdlHandlingSettingArgs{\n\t\t\t\t\t\tAction: pulumi.String(\"Ignore\"),\n\t\t\t\t\t\tType: pulumi.String(\"CreateTable\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRuntimeSettings: dataworks.DiJobJobSettingsRuntimeSettingArray{\n\t\t\t\t\t\u0026dataworks.DiJobJobSettingsRuntimeSettingArgs{\n\t\t\t\t\t\tName: pulumi.String(\"runtime.realtime.concurrent\"),\n\t\t\t\t\t\tValue: pulumi.String(\"1\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tChannelSettings: pulumi.String(\"1\"),\n\t\t\t\tCycleScheduleSettings: \u0026dataworks.DiJobJobSettingsCycleScheduleSettingsArgs{\n\t\t\t\t\tCycleMigrationType: pulumi.String(\"2\"),\n\t\t\t\t\tScheduleParameters: pulumi.String(\"3\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.DiJob;\nimport com.pulumi.alicloud.dataworks.DiJobArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobSourceDataSourceSettingDataSourcePropertiesArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTableMappingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsOfflineResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsRealtimeResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobResourceSettingsScheduleResourceSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobTransformationRuleArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobDestinationDataSourceSettingArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsArgs;\nimport com.pulumi.alicloud.dataworks.inputs.DiJobJobSettingsCycleScheduleSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultMMHL8U = new Project(\"defaultMMHL8U\", ProjectArgs.builder()\n .projectName(name)\n .displayName(name)\n .description(name)\n .paiTaskEnabled(true)\n .build());\n\n var default_ = new DiJob(\"default\", DiJobArgs.builder()\n .description(name)\n .projectId(defaultMMHL8U.id())\n .jobName(\"zhenyuan_example_case\")\n .migrationType(\"api_FullAndRealtimeIncremental\")\n .sourceDataSourceSettings(DiJobSourceDataSourceSettingArgs.builder()\n .dataSourceName(\"dw_mysql\")\n .dataSourceProperties(DiJobSourceDataSourceSettingDataSourcePropertiesArgs.builder()\n .encoding(\"utf-8\")\n .timezone(\"Asia/Shanghai\")\n .build())\n .build())\n .destinationDataSourceType(\"Hologres\")\n .tableMappings(DiJobTableMappingArgs.builder()\n .sourceObjectSelectionRules( \n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"dw_mysql\")\n .expressionType(\"Exact\")\n .objectType(\"Datasource\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"example_db1\")\n .expressionType(\"Exact\")\n .objectType(\"Database\")\n .build(),\n DiJobTableMappingSourceObjectSelectionRuleArgs.builder()\n .action(\"Include\")\n .expression(\"lsc_example01\")\n .expressionType(\"Exact\")\n .objectType(\"Table\")\n .build())\n .transformationRules(DiJobTableMappingTransformationRuleArgs.builder()\n .ruleName(\"my_table_rename_rule\")\n .ruleActionType(\"Rename\")\n .ruleTargetType(\"Table\")\n .build())\n .build())\n .sourceDataSourceType(\"MySQL\")\n .resourceSettings(DiJobResourceSettingsArgs.builder()\n .offlineResourceSettings(DiJobResourceSettingsOfflineResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .realtimeResourceSettings(DiJobResourceSettingsRealtimeResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .scheduleResourceSettings(DiJobResourceSettingsScheduleResourceSettingsArgs.builder()\n .requestedCu(2.0)\n .resourceGroupIdentifier(\"S_res_group_524257424564736_1716799673667\")\n .build())\n .build())\n .transformationRules(DiJobTransformationRuleArgs.builder()\n .ruleActionType(\"Rename\")\n .ruleExpression(\"{\\\"expression\\\":\\\"table2\\\"}\")\n .ruleName(\"my_table_rename_rule\")\n .ruleTargetType(\"Table\")\n .build())\n .destinationDataSourceSettings(DiJobDestinationDataSourceSettingArgs.builder()\n .dataSourceName(\"dw_example_holo\")\n .build())\n .jobSettings(DiJobJobSettingsArgs.builder()\n .columnDataTypeSettings(DiJobJobSettingsColumnDataTypeSettingArgs.builder()\n .destinationDataType(\"bigint\")\n .sourceDataType(\"longtext\")\n .build())\n .ddlHandlingSettings(DiJobJobSettingsDdlHandlingSettingArgs.builder()\n .action(\"Ignore\")\n .type(\"CreateTable\")\n .build())\n .runtimeSettings(DiJobJobSettingsRuntimeSettingArgs.builder()\n .name(\"runtime.realtime.concurrent\")\n .value(\"1\")\n .build())\n .channelSettings(\"1\")\n .cycleScheduleSettings(DiJobJobSettingsCycleScheduleSettingsArgs.builder()\n .cycleMigrationType(\"2\")\n .scheduleParameters(\"3\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultMMHL8U:\n type: alicloud:dataworks:Project\n properties:\n projectName: ${name}\n displayName: ${name}\n description: ${name}\n paiTaskEnabled: true\n default:\n type: alicloud:dataworks:DiJob\n properties:\n description: ${name}\n projectId: ${defaultMMHL8U.id}\n jobName: zhenyuan_example_case\n migrationType: api_FullAndRealtimeIncremental\n sourceDataSourceSettings:\n - dataSourceName: dw_mysql\n dataSourceProperties:\n encoding: utf-8\n timezone: Asia/Shanghai\n destinationDataSourceType: Hologres\n tableMappings:\n - sourceObjectSelectionRules:\n - action: Include\n expression: dw_mysql\n expressionType: Exact\n objectType: Datasource\n - action: Include\n expression: example_db1\n expressionType: Exact\n objectType: Database\n - action: Include\n expression: lsc_example01\n expressionType: Exact\n objectType: Table\n transformationRules:\n - ruleName: my_table_rename_rule\n ruleActionType: Rename\n ruleTargetType: Table\n sourceDataSourceType: MySQL\n resourceSettings:\n offlineResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n realtimeResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n scheduleResourceSettings:\n requestedCu: 2\n resourceGroupIdentifier: S_res_group_524257424564736_1716799673667\n transformationRules:\n - ruleActionType: Rename\n ruleExpression: '{\"expression\":\"table2\"}'\n ruleName: my_table_rename_rule\n ruleTargetType: Table\n destinationDataSourceSettings:\n - dataSourceName: dw_example_holo\n jobSettings:\n columnDataTypeSettings:\n - destinationDataType: bigint\n sourceDataType: longtext\n ddlHandlingSettings:\n - action: Ignore\n type: CreateTable\n runtimeSettings:\n - name: runtime.realtime.concurrent\n value: '1'\n channelSettings: '1'\n cycleScheduleSettings:\n cycleMigrationType: '2'\n scheduleParameters: '3'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Di Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/diJob:DiJob example \u003cproject_id\u003e:\u003cdi_job_id\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -137001,7 +139630,7 @@
}
},
"alicloud:dataworks/dwResourceGroup:DwResourceGroup": {
- "description": "Provides a Data Works Dw Resource Group resource.\n\n\n\nFor information about Data Works Dw Resource Group and how to use it, see [What is Dw Resource Group](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createresourcegroup).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultZImuCO = new alicloud.dataworks.Project(\"defaultZImuCO\", {\n description: \"default_pj002\",\n projectName: name,\n displayName: \"default_pj002\",\n paiTaskEnabled: true,\n});\nconst defaulte4zhaL = new alicloud.vpc.Network(\"defaulte4zhaL\", {\n description: \"default_resgv2_vpc001\",\n vpcName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/12\",\n});\nconst default675v38 = new alicloud.vpc.Switch(\"default675v38\", {\n description: \"default_resg_vsw001\",\n vpcId: defaulte4zhaL.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/24\",\n});\nconst _default = new alicloud.dataworks.DwResourceGroup(\"default\", {\n paymentType: \"PostPaid\",\n defaultVpcId: defaulte4zhaL.id,\n remark: \"openapi_example\",\n resourceGroupName: \"openapi_pop2_example_resg00002\",\n defaultVswitchId: default675v38.id,\n paymentDurationUnit: \"Month\",\n specification: 500,\n paymentDuration: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault_z_imu_co = alicloud.dataworks.Project(\"defaultZImuCO\",\n description=\"default_pj002\",\n project_name=name,\n display_name=\"default_pj002\",\n pai_task_enabled=True)\ndefaulte4zha_l = alicloud.vpc.Network(\"defaulte4zhaL\",\n description=\"default_resgv2_vpc001\",\n vpc_name=std.format(input=\"%s1\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/12\")\ndefault675v38 = alicloud.vpc.Switch(\"default675v38\",\n description=\"default_resg_vsw001\",\n vpc_id=defaulte4zha_l.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/24\")\ndefault = alicloud.dataworks.DwResourceGroup(\"default\",\n payment_type=\"PostPaid\",\n default_vpc_id=defaulte4zha_l.id,\n remark=\"openapi_example\",\n resource_group_name=\"openapi_pop2_example_resg00002\",\n default_vswitch_id=default675v38.id,\n payment_duration_unit=\"Month\",\n specification=500,\n payment_duration=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultZImuCO = new AliCloud.DataWorks.Project(\"defaultZImuCO\", new()\n {\n Description = \"default_pj002\",\n ProjectName = name,\n DisplayName = \"default_pj002\",\n PaiTaskEnabled = true,\n });\n\n var defaulte4zhaL = new AliCloud.Vpc.Network(\"defaulte4zhaL\", new()\n {\n Description = \"default_resgv2_vpc001\",\n VpcName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var default675v38 = new AliCloud.Vpc.Switch(\"default675v38\", new()\n {\n Description = \"default_resg_vsw001\",\n VpcId = defaulte4zhaL.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var @default = new AliCloud.DataWorks.DwResourceGroup(\"default\", new()\n {\n PaymentType = \"PostPaid\",\n DefaultVpcId = defaulte4zhaL.Id,\n Remark = \"openapi_example\",\n ResourceGroupName = \"openapi_pop2_example_resg00002\",\n DefaultVswitchId = default675v38.Id,\n PaymentDurationUnit = \"Month\",\n Specification = 500,\n PaymentDuration = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dataworks.NewProject(ctx, \"defaultZImuCO\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"default_pj002\"),\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(\"default_pj002\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaulte4zhaL, err := vpc.NewNetwork(ctx, \"defaulte4zhaL\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(\"default_resgv2_vpc001\"),\n\t\t\tVpcName: pulumi.String(invokeFormat.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault675v38, err := vpc.NewSwitch(ctx, \"default675v38\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(\"default_resg_vsw001\"),\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDwResourceGroup(ctx, \"default\", \u0026dataworks.DwResourceGroupArgs{\n\t\t\tPaymentType: pulumi.String(\"PostPaid\"),\n\t\t\tDefaultVpcId: defaulte4zhaL.ID(),\n\t\t\tRemark: pulumi.String(\"openapi_example\"),\n\t\t\tResourceGroupName: pulumi.String(\"openapi_pop2_example_resg00002\"),\n\t\t\tDefaultVswitchId: default675v38.ID(),\n\t\t\tPaymentDurationUnit: pulumi.String(\"Month\"),\n\t\t\tSpecification: pulumi.Int(500),\n\t\t\tPaymentDuration: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.dataworks.DwResourceGroup;\nimport com.pulumi.alicloud.dataworks.DwResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultZImuCO = new Project(\"defaultZImuCO\", ProjectArgs.builder()\n .description(\"default_pj002\")\n .projectName(name)\n .displayName(\"default_pj002\")\n .paiTaskEnabled(true)\n .build());\n\n var defaulte4zhaL = new Network(\"defaulte4zhaL\", NetworkArgs.builder()\n .description(\"default_resgv2_vpc001\")\n .vpcName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default675v38 = new Switch(\"default675v38\", SwitchArgs.builder()\n .description(\"default_resg_vsw001\")\n .vpcId(defaulte4zhaL.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var default_ = new DwResourceGroup(\"default\", DwResourceGroupArgs.builder()\n .paymentType(\"PostPaid\")\n .defaultVpcId(defaulte4zhaL.id())\n .remark(\"openapi_example\")\n .resourceGroupName(\"openapi_pop2_example_resg00002\")\n .defaultVswitchId(default675v38.id())\n .paymentDurationUnit(\"Month\")\n .specification(500)\n .paymentDuration(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultZImuCO:\n type: alicloud:dataworks:Project\n properties:\n description: default_pj002\n projectName: ${name}\n displayName: default_pj002\n paiTaskEnabled: true\n defaulte4zhaL:\n type: alicloud:vpc:Network\n properties:\n description: default_resgv2_vpc001\n vpcName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/12\n default675v38:\n type: alicloud:vpc:Switch\n properties:\n description: default_resg_vsw001\n vpcId: ${defaulte4zhaL.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/24\n default:\n type: alicloud:dataworks:DwResourceGroup\n properties:\n paymentType: PostPaid\n defaultVpcId: ${defaulte4zhaL.id}\n remark: openapi_example\n resourceGroupName: openapi_pop2_example_resg00002\n defaultVswitchId: ${default675v38.id}\n paymentDurationUnit: Month\n specification: '500'\n paymentDuration: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Dw Resource Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dwResourceGroup:DwResourceGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Data Works Dw Resource Group resource.\n\n\n\nFor information about Data Works Dw Resource Group and how to use it, see [What is Dw Resource Group](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createresourcegroup).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst defaultZImuCO = new alicloud.dataworks.Project(\"defaultZImuCO\", {\n description: \"default_pj002\",\n projectName: name,\n displayName: \"default_pj002\",\n paiTaskEnabled: true,\n});\nconst defaulte4zhaL = new alicloud.vpc.Network(\"defaulte4zhaL\", {\n description: \"default_resgv2_vpc001\",\n vpcName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/12\",\n});\nconst default675v38 = new alicloud.vpc.Switch(\"default675v38\", {\n description: \"default_resg_vsw001\",\n vpcId: defaulte4zhaL.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s2\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/24\",\n});\nconst _default = new alicloud.dataworks.DwResourceGroup(\"default\", {\n paymentType: \"PostPaid\",\n defaultVpcId: defaulte4zhaL.id,\n remark: \"openapi_example\",\n resourceGroupName: \"openapi_pop2_example_resg00002\",\n defaultVswitchId: default675v38.id,\n paymentDurationUnit: \"Month\",\n specification: 500,\n paymentDuration: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault_z_imu_co = alicloud.dataworks.Project(\"defaultZImuCO\",\n description=\"default_pj002\",\n project_name=name,\n display_name=\"default_pj002\",\n pai_task_enabled=True)\ndefaulte4zha_l = alicloud.vpc.Network(\"defaulte4zhaL\",\n description=\"default_resgv2_vpc001\",\n vpc_name=std.format(input=\"%s1\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/12\")\ndefault675v38 = alicloud.vpc.Switch(\"default675v38\",\n description=\"default_resg_vsw001\",\n vpc_id=defaulte4zha_l.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s2\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/24\")\ndefault = alicloud.dataworks.DwResourceGroup(\"default\",\n payment_type=\"PostPaid\",\n default_vpc_id=defaulte4zha_l.id,\n remark=\"openapi_example\",\n resource_group_name=\"openapi_pop2_example_resg00002\",\n default_vswitch_id=default675v38.id,\n payment_duration_unit=\"Month\",\n specification=500,\n payment_duration=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var defaultZImuCO = new AliCloud.DataWorks.Project(\"defaultZImuCO\", new()\n {\n Description = \"default_pj002\",\n ProjectName = name,\n DisplayName = \"default_pj002\",\n PaiTaskEnabled = true,\n });\n\n var defaulte4zhaL = new AliCloud.Vpc.Network(\"defaulte4zhaL\", new()\n {\n Description = \"default_resgv2_vpc001\",\n VpcName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var default675v38 = new AliCloud.Vpc.Switch(\"default675v38\", new()\n {\n Description = \"default_resg_vsw001\",\n VpcId = defaulte4zhaL.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s2\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var @default = new AliCloud.DataWorks.DwResourceGroup(\"default\", new()\n {\n PaymentType = \"PostPaid\",\n DefaultVpcId = defaulte4zhaL.Id,\n Remark = \"openapi_example\",\n ResourceGroupName = \"openapi_pop2_example_resg00002\",\n DefaultVswitchId = default675v38.Id,\n PaymentDurationUnit = \"Month\",\n Specification = 500,\n PaymentDuration = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dataworks.NewProject(ctx, \"defaultZImuCO\", \u0026dataworks.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"default_pj002\"),\n\t\t\tProjectName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(\"default_pj002\"),\n\t\t\tPaiTaskEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaulte4zhaL, err := vpc.NewNetwork(ctx, \"defaulte4zhaL\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(\"default_resgv2_vpc001\"),\n\t\t\tVpcName: pulumi.String(invokeFormat.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s2\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault675v38, err := vpc.NewSwitch(ctx, \"default675v38\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(\"default_resg_vsw001\"),\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat1.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewDwResourceGroup(ctx, \"default\", \u0026dataworks.DwResourceGroupArgs{\n\t\t\tPaymentType: pulumi.String(\"PostPaid\"),\n\t\t\tDefaultVpcId: defaulte4zhaL.ID(),\n\t\t\tRemark: pulumi.String(\"openapi_example\"),\n\t\t\tResourceGroupName: pulumi.String(\"openapi_pop2_example_resg00002\"),\n\t\t\tDefaultVswitchId: default675v38.ID(),\n\t\t\tPaymentDurationUnit: pulumi.String(\"Month\"),\n\t\t\tSpecification: pulumi.Int(500),\n\t\t\tPaymentDuration: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.dataworks.DwResourceGroup;\nimport com.pulumi.alicloud.dataworks.DwResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var defaultZImuCO = new Project(\"defaultZImuCO\", ProjectArgs.builder()\n .description(\"default_pj002\")\n .projectName(name)\n .displayName(\"default_pj002\")\n .paiTaskEnabled(true)\n .build());\n\n var defaulte4zhaL = new Network(\"defaulte4zhaL\", NetworkArgs.builder()\n .description(\"default_resgv2_vpc001\")\n .vpcName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default675v38 = new Switch(\"default675v38\", SwitchArgs.builder()\n .description(\"default_resg_vsw001\")\n .vpcId(defaulte4zhaL.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s2\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var default_ = new DwResourceGroup(\"default\", DwResourceGroupArgs.builder()\n .paymentType(\"PostPaid\")\n .defaultVpcId(defaulte4zhaL.id())\n .remark(\"openapi_example\")\n .resourceGroupName(\"openapi_pop2_example_resg00002\")\n .defaultVswitchId(default675v38.id())\n .paymentDurationUnit(\"Month\")\n .specification(500)\n .paymentDuration(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n defaultZImuCO:\n type: alicloud:dataworks:Project\n properties:\n description: default_pj002\n projectName: ${name}\n displayName: default_pj002\n paiTaskEnabled: true\n defaulte4zhaL:\n type: alicloud:vpc:Network\n properties:\n description: default_resgv2_vpc001\n vpcName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/12\n default675v38:\n type: alicloud:vpc:Switch\n properties:\n description: default_resg_vsw001\n vpcId: ${defaulte4zhaL.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s2'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/24\n default:\n type: alicloud:dataworks:DwResourceGroup\n properties:\n paymentType: PostPaid\n defaultVpcId: ${defaulte4zhaL.id}\n remark: openapi_example\n resourceGroupName: openapi_pop2_example_resg00002\n defaultVswitchId: ${default675v38.id}\n paymentDurationUnit: Month\n specification: '500'\n paymentDuration: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Dw Resource Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/dwResourceGroup:DwResourceGroup example \u003cid\u003e\n```\n\n",
"properties": {
"autoRenew": {
"type": "boolean",
@@ -137191,7 +139820,7 @@
}
},
"alicloud:dataworks/folder:Folder": {
- "description": "Provides a Data Works Folder resource.\n\nFor information about Data Works Folder and how to use it, see [What is Folder](https://help.aliyun.com/document_detail/173940.html).\n\n\u003e **NOTE:** Available in v1.131.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.dataworks.Folder(\"example\", {\n projectId: \"320687\",\n folderPath: \"Business Flow/tfTestAcc/folderDi/tftest1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.dataworks.Folder(\"example\",\n project_id=\"320687\",\n folder_path=\"Business Flow/tfTestAcc/folderDi/tftest1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.DataWorks.Folder(\"example\", new()\n {\n ProjectId = \"320687\",\n FolderPath = \"Business Flow/tfTestAcc/folderDi/tftest1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dataworks.NewFolder(ctx, \"example\", \u0026dataworks.FolderArgs{\n\t\t\tProjectId: pulumi.String(\"320687\"),\n\t\t\tFolderPath: pulumi.String(\"Business Flow/tfTestAcc/folderDi/tftest1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Folder;\nimport com.pulumi.alicloud.dataworks.FolderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Folder(\"example\", FolderArgs.builder()\n .projectId(\"320687\")\n .folderPath(\"Business Flow/tfTestAcc/folderDi/tftest1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:dataworks:Folder\n properties:\n projectId: '320687'\n folderPath: Business Flow/tfTestAcc/folderDi/tftest1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Folder can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/folder:Folder example \u003cfolder_id\u003e:\u003c$.ProjectId\u003e\n```\n\n",
+ "description": "Provides a Data Works Folder resource.\n\nFor information about Data Works Folder and how to use it, see [What is Folder](https://help.aliyun.com/document_detail/173940.html).\n\n\u003e **NOTE:** Available in v1.131.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.dataworks.Folder(\"example\", {\n projectId: \"320687\",\n folderPath: \"Business Flow/tfTestAcc/folderDi/tftest1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.dataworks.Folder(\"example\",\n project_id=\"320687\",\n folder_path=\"Business Flow/tfTestAcc/folderDi/tftest1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.DataWorks.Folder(\"example\", new()\n {\n ProjectId = \"320687\",\n FolderPath = \"Business Flow/tfTestAcc/folderDi/tftest1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dataworks.NewFolder(ctx, \"example\", \u0026dataworks.FolderArgs{\n\t\t\tProjectId: pulumi.String(\"320687\"),\n\t\t\tFolderPath: pulumi.String(\"Business Flow/tfTestAcc/folderDi/tftest1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dataworks.Folder;\nimport com.pulumi.alicloud.dataworks.FolderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Folder(\"example\", FolderArgs.builder()\n .projectId(\"320687\")\n .folderPath(\"Business Flow/tfTestAcc/folderDi/tftest1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:dataworks:Folder\n properties:\n projectId: '320687'\n folderPath: Business Flow/tfTestAcc/folderDi/tftest1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Folder can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/folder:Folder example \u003cfolder_id\u003e:\u003c$.ProjectId\u003e\n```\n\n",
"properties": {
"folderId": {
"type": "string"
@@ -137253,7 +139882,7 @@
}
},
"alicloud:dataworks/network:Network": {
- "description": "Provides a Data Works Network resource.\n\nResource Group Network.\n\nFor information about Data Works Network and how to use it, see [What is Network](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createnetwork).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst default5Bia4h = new alicloud.vpc.Network(\"default5Bia4h\", {\n description: name,\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultss7s7F = new alicloud.vpc.Switch(\"defaultss7s7F\", {\n description: name,\n vpcId: default5Bia4h.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"10.0.0.0/24\",\n});\nconst defaultVJvKvl = new alicloud.dataworks.DwResourceGroup(\"defaultVJvKvl\", {\n paymentDurationUnit: \"Month\",\n paymentType: \"PostPaid\",\n specification: 500,\n defaultVswitchId: defaultss7s7F.id,\n remark: name,\n resourceGroupName: \"network_openapi_example01\",\n defaultVpcId: default5Bia4h.id,\n});\nconst defaulte4zhaL = new alicloud.vpc.Network(\"defaulte4zhaL\", {\n description: name,\n vpcName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/12\",\n});\nconst default675v38 = new alicloud.vpc.Switch(\"default675v38\", {\n description: name,\n vpcId: defaulte4zhaL.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s4\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/24\",\n});\nconst _default = new alicloud.dataworks.Network(\"default\", {\n vpcId: defaulte4zhaL.id,\n vswitchId: default675v38.id,\n dwResourceGroupId: defaultVJvKvl.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault5_bia4h = alicloud.vpc.Network(\"default5Bia4h\",\n description=name,\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefaultss7s7_f = alicloud.vpc.Switch(\"defaultss7s7F\",\n description=name,\n vpc_id=default5_bia4h.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result,\n cidr_block=\"10.0.0.0/24\")\ndefault_v_jv_kvl = alicloud.dataworks.DwResourceGroup(\"defaultVJvKvl\",\n payment_duration_unit=\"Month\",\n payment_type=\"PostPaid\",\n specification=500,\n default_vswitch_id=defaultss7s7_f.id,\n remark=name,\n resource_group_name=\"network_openapi_example01\",\n default_vpc_id=default5_bia4h.id)\ndefaulte4zha_l = alicloud.vpc.Network(\"defaulte4zhaL\",\n description=name,\n vpc_name=std.format(input=\"%s3\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/12\")\ndefault675v38 = alicloud.vpc.Switch(\"default675v38\",\n description=name,\n vpc_id=defaulte4zha_l.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s4\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/24\")\ndefault = alicloud.dataworks.Network(\"default\",\n vpc_id=defaulte4zha_l.id,\n vswitch_id=default675v38.id,\n dw_resource_group_id=default_v_jv_kvl.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var default5Bia4h = new AliCloud.Vpc.Network(\"default5Bia4h\", new()\n {\n Description = name,\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultss7s7F = new AliCloud.Vpc.Switch(\"defaultss7s7F\", new()\n {\n Description = name,\n VpcId = default5Bia4h.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"10.0.0.0/24\",\n });\n\n var defaultVJvKvl = new AliCloud.DataWorks.DwResourceGroup(\"defaultVJvKvl\", new()\n {\n PaymentDurationUnit = \"Month\",\n PaymentType = \"PostPaid\",\n Specification = 500,\n DefaultVswitchId = defaultss7s7F.Id,\n Remark = name,\n ResourceGroupName = \"network_openapi_example01\",\n DefaultVpcId = default5Bia4h.Id,\n });\n\n var defaulte4zhaL = new AliCloud.Vpc.Network(\"defaulte4zhaL\", new()\n {\n Description = name,\n VpcName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var default675v38 = new AliCloud.Vpc.Switch(\"default675v38\", new()\n {\n Description = name,\n VpcId = defaulte4zhaL.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s4\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var @default = new AliCloud.DataWorks.Network(\"default\", new()\n {\n VpcId = defaulte4zhaL.Id,\n VswitchId = default675v38.Id,\n DwResourceGroupId = defaultVJvKvl.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefault5Bia4h, err := vpc.NewNetwork(ctx, \"default5Bia4h\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultss7s7F, err := vpc.NewSwitch(ctx, \"defaultss7s7F\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: default5Bia4h.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVJvKvl, err := dataworks.NewDwResourceGroup(ctx, \"defaultVJvKvl\", \u0026dataworks.DwResourceGroupArgs{\n\t\t\tPaymentDurationUnit: pulumi.String(\"Month\"),\n\t\t\tPaymentType: pulumi.String(\"PostPaid\"),\n\t\t\tSpecification: pulumi.Int(500),\n\t\t\tDefaultVswitchId: defaultss7s7F.ID(),\n\t\t\tRemark: pulumi.String(name),\n\t\t\tResourceGroupName: pulumi.String(\"network_openapi_example01\"),\n\t\t\tDefaultVpcId: default5Bia4h.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaulte4zhaL, err := vpc.NewNetwork(ctx, \"defaulte4zhaL\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcName: pulumi.String(invokeFormat1.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s4\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault675v38, err := vpc.NewSwitch(ctx, \"default675v38\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewNetwork(ctx, \"default\", \u0026dataworks.NetworkArgs{\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tVswitchId: default675v38.ID(),\n\t\t\tDwResourceGroupId: defaultVJvKvl.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dataworks.DwResourceGroup;\nimport com.pulumi.alicloud.dataworks.DwResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default5Bia4h = new com.pulumi.alicloud.vpc.Network(\"default5Bia4h\", com.pulumi.alicloud.vpc.NetworkArgs.builder()\n .description(name)\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultss7s7F = new Switch(\"defaultss7s7F\", SwitchArgs.builder()\n .description(name)\n .vpcId(default5Bia4h.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .cidrBlock(\"10.0.0.0/24\")\n .build());\n\n var defaultVJvKvl = new DwResourceGroup(\"defaultVJvKvl\", DwResourceGroupArgs.builder()\n .paymentDurationUnit(\"Month\")\n .paymentType(\"PostPaid\")\n .specification(500)\n .defaultVswitchId(defaultss7s7F.id())\n .remark(name)\n .resourceGroupName(\"network_openapi_example01\")\n .defaultVpcId(default5Bia4h.id())\n .build());\n\n var defaulte4zhaL = new com.pulumi.alicloud.vpc.Network(\"defaulte4zhaL\", com.pulumi.alicloud.vpc.NetworkArgs.builder()\n .description(name)\n .vpcName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default675v38 = new Switch(\"default675v38\", SwitchArgs.builder()\n .description(name)\n .vpcId(defaulte4zhaL.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s4\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var default_ = new com.pulumi.alicloud.dataworks.Network(\"default\", com.pulumi.alicloud.dataworks.NetworkArgs.builder()\n .vpcId(defaulte4zhaL.id())\n .vswitchId(default675v38.id())\n .dwResourceGroupId(defaultVJvKvl.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default5Bia4h:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultss7s7F:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${default5Bia4h.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n cidrBlock: 10.0.0.0/24\n defaultVJvKvl:\n type: alicloud:dataworks:DwResourceGroup\n properties:\n paymentDurationUnit: Month\n paymentType: PostPaid\n specification: '500'\n defaultVswitchId: ${defaultss7s7F.id}\n remark: ${name}\n resourceGroupName: network_openapi_example01\n defaultVpcId: ${default5Bia4h.id}\n defaulte4zhaL:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n vpcName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/12\n default675v38:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${defaulte4zhaL.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s4'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/24\n default:\n type: alicloud:dataworks:Network\n properties:\n vpcId: ${defaulte4zhaL.id}\n vswitchId: ${default675v38.id}\n dwResourceGroupId: ${defaultVJvKvl.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Network can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/network:Network example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Data Works Network resource.\n\nResource Group Network.\n\nFor information about Data Works Network and how to use it, see [What is Network](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createnetwork).\n\n\u003e **NOTE:** Available since v1.241.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst default5Bia4h = new alicloud.vpc.Network(\"default5Bia4h\", {\n description: name,\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultss7s7F = new alicloud.vpc.Switch(\"defaultss7s7F\", {\n description: name,\n vpcId: default5Bia4h.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s1\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"10.0.0.0/24\",\n});\nconst defaultVJvKvl = new alicloud.dataworks.DwResourceGroup(\"defaultVJvKvl\", {\n paymentDurationUnit: \"Month\",\n paymentType: \"PostPaid\",\n specification: 500,\n defaultVswitchId: defaultss7s7F.id,\n remark: name,\n resourceGroupName: \"network_openapi_example01\",\n defaultVpcId: default5Bia4h.id,\n});\nconst defaulte4zhaL = new alicloud.vpc.Network(\"defaulte4zhaL\", {\n description: name,\n vpcName: std.format({\n input: \"%s3\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/12\",\n});\nconst default675v38 = new alicloud.vpc.Switch(\"default675v38\", {\n description: name,\n vpcId: defaulte4zhaL.id,\n zoneId: \"cn-beijing-g\",\n vswitchName: std.format({\n input: \"%s4\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n cidrBlock: \"172.16.0.0/24\",\n});\nconst _default = new alicloud.dataworks.Network(\"default\", {\n vpcId: defaulte4zhaL.id,\n vswitchId: default675v38.id,\n dwResourceGroupId: defaultVJvKvl.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault5_bia4h = alicloud.vpc.Network(\"default5Bia4h\",\n description=name,\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefaultss7s7_f = alicloud.vpc.Switch(\"defaultss7s7F\",\n description=name,\n vpc_id=default5_bia4h.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s1\",\n args=[name]).result,\n cidr_block=\"10.0.0.0/24\")\ndefault_v_jv_kvl = alicloud.dataworks.DwResourceGroup(\"defaultVJvKvl\",\n payment_duration_unit=\"Month\",\n payment_type=\"PostPaid\",\n specification=500,\n default_vswitch_id=defaultss7s7_f.id,\n remark=name,\n resource_group_name=\"network_openapi_example01\",\n default_vpc_id=default5_bia4h.id)\ndefaulte4zha_l = alicloud.vpc.Network(\"defaulte4zhaL\",\n description=name,\n vpc_name=std.format(input=\"%s3\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/12\")\ndefault675v38 = alicloud.vpc.Switch(\"default675v38\",\n description=name,\n vpc_id=defaulte4zha_l.id,\n zone_id=\"cn-beijing-g\",\n vswitch_name=std.format(input=\"%s4\",\n args=[name]).result,\n cidr_block=\"172.16.0.0/24\")\ndefault = alicloud.dataworks.Network(\"default\",\n vpc_id=defaulte4zha_l.id,\n vswitch_id=default675v38.id,\n dw_resource_group_id=default_v_jv_kvl.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var default5Bia4h = new AliCloud.Vpc.Network(\"default5Bia4h\", new()\n {\n Description = name,\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultss7s7F = new AliCloud.Vpc.Switch(\"defaultss7s7F\", new()\n {\n Description = name,\n VpcId = default5Bia4h.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s1\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"10.0.0.0/24\",\n });\n\n var defaultVJvKvl = new AliCloud.DataWorks.DwResourceGroup(\"defaultVJvKvl\", new()\n {\n PaymentDurationUnit = \"Month\",\n PaymentType = \"PostPaid\",\n Specification = 500,\n DefaultVswitchId = defaultss7s7F.Id,\n Remark = name,\n ResourceGroupName = \"network_openapi_example01\",\n DefaultVpcId = default5Bia4h.Id,\n });\n\n var defaulte4zhaL = new AliCloud.Vpc.Network(\"defaulte4zhaL\", new()\n {\n Description = name,\n VpcName = Std.Format.Invoke(new()\n {\n Input = \"%s3\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/12\",\n });\n\n var default675v38 = new AliCloud.Vpc.Switch(\"default675v38\", new()\n {\n Description = name,\n VpcId = defaulte4zhaL.Id,\n ZoneId = \"cn-beijing-g\",\n VswitchName = Std.Format.Invoke(new()\n {\n Input = \"%s4\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n CidrBlock = \"172.16.0.0/24\",\n });\n\n var @default = new AliCloud.DataWorks.Network(\"default\", new()\n {\n VpcId = defaulte4zhaL.Id,\n VswitchId = default675v38.Id,\n DwResourceGroupId = defaultVJvKvl.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefault5Bia4h, err := vpc.NewNetwork(ctx, \"default5Bia4h\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s1\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultss7s7F, err := vpc.NewSwitch(ctx, \"defaultss7s7F\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: default5Bia4h.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultVJvKvl, err := dataworks.NewDwResourceGroup(ctx, \"defaultVJvKvl\", \u0026dataworks.DwResourceGroupArgs{\n\t\t\tPaymentDurationUnit: pulumi.String(\"Month\"),\n\t\t\tPaymentType: pulumi.String(\"PostPaid\"),\n\t\t\tSpecification: pulumi.Int(500),\n\t\t\tDefaultVswitchId: defaultss7s7F.ID(),\n\t\t\tRemark: pulumi.String(name),\n\t\t\tResourceGroupName: pulumi.String(\"network_openapi_example01\"),\n\t\t\tDefaultVpcId: default5Bia4h.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s3\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaulte4zhaL, err := vpc.NewNetwork(ctx, \"defaulte4zhaL\", \u0026vpc.NetworkArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcName: pulumi.String(invokeFormat1.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s4\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefault675v38, err := vpc.NewSwitch(ctx, \"default675v38\", \u0026vpc.SwitchArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-beijing-g\"),\n\t\t\tVswitchName: pulumi.String(invokeFormat2.Result),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewNetwork(ctx, \"default\", \u0026dataworks.NetworkArgs{\n\t\t\tVpcId: defaulte4zhaL.ID(),\n\t\t\tVswitchId: default675v38.ID(),\n\t\t\tDwResourceGroupId: defaultVJvKvl.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dataworks.DwResourceGroup;\nimport com.pulumi.alicloud.dataworks.DwResourceGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default5Bia4h = new com.pulumi.alicloud.vpc.Network(\"default5Bia4h\", com.pulumi.alicloud.vpc.NetworkArgs.builder()\n .description(name)\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultss7s7F = new Switch(\"defaultss7s7F\", SwitchArgs.builder()\n .description(name)\n .vpcId(default5Bia4h.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s1\")\n .args(name)\n .build()).result())\n .cidrBlock(\"10.0.0.0/24\")\n .build());\n\n var defaultVJvKvl = new DwResourceGroup(\"defaultVJvKvl\", DwResourceGroupArgs.builder()\n .paymentDurationUnit(\"Month\")\n .paymentType(\"PostPaid\")\n .specification(500)\n .defaultVswitchId(defaultss7s7F.id())\n .remark(name)\n .resourceGroupName(\"network_openapi_example01\")\n .defaultVpcId(default5Bia4h.id())\n .build());\n\n var defaulte4zhaL = new com.pulumi.alicloud.vpc.Network(\"defaulte4zhaL\", com.pulumi.alicloud.vpc.NetworkArgs.builder()\n .description(name)\n .vpcName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s3\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/12\")\n .build());\n\n var default675v38 = new Switch(\"default675v38\", SwitchArgs.builder()\n .description(name)\n .vpcId(defaulte4zhaL.id())\n .zoneId(\"cn-beijing-g\")\n .vswitchName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s4\")\n .args(name)\n .build()).result())\n .cidrBlock(\"172.16.0.0/24\")\n .build());\n\n var default_ = new com.pulumi.alicloud.dataworks.Network(\"default\", com.pulumi.alicloud.dataworks.NetworkArgs.builder()\n .vpcId(defaulte4zhaL.id())\n .vswitchId(default675v38.id())\n .dwResourceGroupId(defaultVJvKvl.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default5Bia4h:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultss7s7F:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${default5Bia4h.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s1'\n args:\n - ${name}\n return: result\n cidrBlock: 10.0.0.0/24\n defaultVJvKvl:\n type: alicloud:dataworks:DwResourceGroup\n properties:\n paymentDurationUnit: Month\n paymentType: PostPaid\n specification: '500'\n defaultVswitchId: ${defaultss7s7F.id}\n remark: ${name}\n resourceGroupName: network_openapi_example01\n defaultVpcId: ${default5Bia4h.id}\n defaulte4zhaL:\n type: alicloud:vpc:Network\n properties:\n description: ${name}\n vpcName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s3'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/12\n default675v38:\n type: alicloud:vpc:Switch\n properties:\n description: ${name}\n vpcId: ${defaulte4zhaL.id}\n zoneId: cn-beijing-g\n vswitchName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s4'\n args:\n - ${name}\n return: result\n cidrBlock: 172.16.0.0/24\n default:\n type: alicloud:dataworks:Network\n properties:\n vpcId: ${defaulte4zhaL.id}\n vswitchId: ${default675v38.id}\n dwResourceGroupId: ${defaultVJvKvl.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Network can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/network:Network example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "integer",
@@ -137336,7 +139965,7 @@
}
},
"alicloud:dataworks/project:Project": {
- "description": "Provides a Data Works Project resource.\n\n\n\nFor information about Data Works Project and how to use it, see [What is Project](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createproject).\n\n\u003e **NOTE:** Available since v1.229.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultProject = new alicloud.dataworks.Project(\"default\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_project = alicloud.dataworks.Project(\"default\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultProject = new AliCloud.DataWorks.Project(\"default\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewProject(ctx, \"default\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultProject:\n type: alicloud:dataworks:Project\n name: default\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Project can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/project:Project example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Data Works Project resource.\n\n\n\nFor information about Data Works Project and how to use it, see [What is Project](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createproject).\n\n\u003e **NOTE:** Available since v1.229.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultProject = new alicloud.dataworks.Project(\"default\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_project = alicloud.dataworks.Project(\"default\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultProject = new AliCloud.DataWorks.Project(\"default\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewProject(ctx, \"default\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultProject = new Project(\"defaultProject\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultProject:\n type: alicloud:dataworks:Project\n name: default\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Project can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/project:Project example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -137482,7 +140111,7 @@
}
},
"alicloud:dataworks/projectMember:ProjectMember": {
- "description": "Provides a Data Works Project Member resource.\n\n\n\nFor information about Data Works Project Member and how to use it, see [What is Project Member](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createprojectmember).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst adminCode = config.get(\"adminCode\") || \"role_project_admin\";\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst defaultKCTrB2 = new alicloud.ram.User(\"defaultKCTrB2\", {\n displayName: `${name}${randint.id}`,\n name: `${name}${randint.id}`,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultQeRfvU = new alicloud.dataworks.Project(\"defaultQeRfvU\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultProjectMember = new alicloud.dataworks.ProjectMember(\"default\", {\n userId: defaultKCTrB2.id,\n projectId: defaultQeRfvU.id,\n roles: [{\n code: adminCode,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nadmin_code = config.get(\"adminCode\")\nif admin_code is None:\n admin_code = \"role_project_admin\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault_kc_tr_b2 = alicloud.ram.User(\"defaultKCTrB2\",\n display_name=f\"{name}{randint['id']}\",\n name=f\"{name}{randint['id']}\")\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_qe_rfv_u = alicloud.dataworks.Project(\"defaultQeRfvU\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\ndefault_project_member = alicloud.dataworks.ProjectMember(\"default\",\n user_id=default_kc_tr_b2.id,\n project_id=default_qe_rfv_u.id,\n roles=[{\n \"code\": admin_code,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var adminCode = config.Get(\"adminCode\") ?? \"role_project_admin\";\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var defaultKCTrB2 = new AliCloud.Ram.User(\"defaultKCTrB2\", new()\n {\n DisplayName = $\"{name}{randint.Id}\",\n Name = $\"{name}{randint.Id}\",\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultQeRfvU = new AliCloud.DataWorks.Project(\"defaultQeRfvU\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n var defaultProjectMember = new AliCloud.DataWorks.ProjectMember(\"default\", new()\n {\n UserId = defaultKCTrB2.Id,\n ProjectId = defaultQeRfvU.Id,\n Roles = new[]\n {\n new AliCloud.DataWorks.Inputs.ProjectMemberRoleArgs\n {\n Code = adminCode,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tadminCode := \"role_project_admin\"\n\t\tif param := cfg.Get(\"adminCode\"); param != \"\" {\n\t\t\tadminCode = param\n\t\t}\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKCTrB2, err := ram.NewUser(ctx, \"defaultKCTrB2\", \u0026ram.UserArgs{\n\t\t\tDisplayName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQeRfvU, err := dataworks.NewProject(ctx, \"defaultQeRfvU\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewProjectMember(ctx, \"default\", \u0026dataworks.ProjectMemberArgs{\n\t\t\tUserId: defaultKCTrB2.ID(),\n\t\t\tProjectId: defaultQeRfvU.ID(),\n\t\t\tRoles: dataworks.ProjectMemberRoleArray{\n\t\t\t\t\u0026dataworks.ProjectMemberRoleArgs{\n\t\t\t\t\tCode: pulumi.String(adminCode),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.ProjectMember;\nimport com.pulumi.alicloud.dataworks.ProjectMemberArgs;\nimport com.pulumi.alicloud.dataworks.inputs.ProjectMemberRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var adminCode = config.get(\"adminCode\").orElse(\"role_project_admin\");\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n var defaultKCTrB2 = new User(\"defaultKCTrB2\", UserArgs.builder()\n .displayName(String.format(\"%s%s\", name,randint.id()))\n .name(String.format(\"%s%s\", name,randint.id()))\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultQeRfvU = new Project(\"defaultQeRfvU\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n var defaultProjectMember = new ProjectMember(\"defaultProjectMember\", ProjectMemberArgs.builder()\n .userId(defaultKCTrB2.id())\n .projectId(defaultQeRfvU.id())\n .roles(ProjectMemberRoleArgs.builder()\n .code(adminCode)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n adminCode:\n type: string\n default: role_project_admin\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultKCTrB2:\n type: alicloud:ram:User\n properties:\n displayName: ${name}${randint.id}\n name: ${name}${randint.id}\n defaultQeRfvU:\n type: alicloud:dataworks:Project\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\n defaultProjectMember:\n type: alicloud:dataworks:ProjectMember\n name: default\n properties:\n userId: ${defaultKCTrB2.id}\n projectId: ${defaultQeRfvU.id}\n roles:\n - code: ${adminCode}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nData Works Project Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/projectMember:ProjectMember example \u003cproject_id\u003e:\u003cuser_id\u003e\n```\n\n",
+ "description": "Provides a Data Works Project Member resource.\n\n\n\nFor information about Data Works Project Member and how to use it, see [What is Project Member](https://www.alibabacloud.com/help/en/dataworks/developer-reference/api-dataworks-public-2024-05-18-createprojectmember).\n\n\u003e **NOTE:** Available since v1.237.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst adminCode = config.get(\"adminCode\") || \"role_project_admin\";\nconst name = config.get(\"name\") || \"tf_example\";\nconst randint = new random.index.Integer(\"randint\", {\n max: 999,\n min: 1,\n});\nconst defaultKCTrB2 = new alicloud.ram.User(\"defaultKCTrB2\", {\n displayName: `${name}${randint.id}`,\n name: `${name}${randint.id}`,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultQeRfvU = new alicloud.dataworks.Project(\"defaultQeRfvU\", {\n status: \"Available\",\n description: \"tf_desc\",\n projectName: `${name}${randint.id}`,\n paiTaskEnabled: false,\n displayName: \"tf_new_api_display\",\n devRoleDisabled: true,\n devEnvironmentEnabled: false,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultProjectMember = new alicloud.dataworks.ProjectMember(\"default\", {\n userId: defaultKCTrB2.id,\n projectId: defaultQeRfvU.id,\n roles: [{\n code: adminCode,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nadmin_code = config.get(\"adminCode\")\nif admin_code is None:\n admin_code = \"role_project_admin\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\nrandint = random.index.Integer(\"randint\",\n max=999,\n min=1)\ndefault_kc_tr_b2 = alicloud.ram.User(\"defaultKCTrB2\",\n display_name=f\"{name}{randint['id']}\",\n name=f\"{name}{randint['id']}\")\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_qe_rfv_u = alicloud.dataworks.Project(\"defaultQeRfvU\",\n status=\"Available\",\n description=\"tf_desc\",\n project_name=f\"{name}{randint['id']}\",\n pai_task_enabled=False,\n display_name=\"tf_new_api_display\",\n dev_role_disabled=True,\n dev_environment_enabled=False,\n resource_group_id=default.ids[0])\ndefault_project_member = alicloud.dataworks.ProjectMember(\"default\",\n user_id=default_kc_tr_b2.id,\n project_id=default_qe_rfv_u.id,\n roles=[{\n \"code\": admin_code,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var adminCode = config.Get(\"adminCode\") ?? \"role_project_admin\";\n var name = config.Get(\"name\") ?? \"tf_example\";\n var randint = new Random.Index.Integer(\"randint\", new()\n {\n Max = 999,\n Min = 1,\n });\n\n var defaultKCTrB2 = new AliCloud.Ram.User(\"defaultKCTrB2\", new()\n {\n DisplayName = $\"{name}{randint.Id}\",\n Name = $\"{name}{randint.Id}\",\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultQeRfvU = new AliCloud.DataWorks.Project(\"defaultQeRfvU\", new()\n {\n Status = \"Available\",\n Description = \"tf_desc\",\n ProjectName = $\"{name}{randint.Id}\",\n PaiTaskEnabled = false,\n DisplayName = \"tf_new_api_display\",\n DevRoleDisabled = true,\n DevEnvironmentEnabled = false,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n var defaultProjectMember = new AliCloud.DataWorks.ProjectMember(\"default\", new()\n {\n UserId = defaultKCTrB2.Id,\n ProjectId = defaultQeRfvU.Id,\n Roles = new[]\n {\n new AliCloud.DataWorks.Inputs.ProjectMemberRoleArgs\n {\n Code = adminCode,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dataworks\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tadminCode := \"role_project_admin\"\n\t\tif param := cfg.Get(\"adminCode\"); param != \"\" {\n\t\t\tadminCode = param\n\t\t}\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\trandint, err := random.NewInteger(ctx, \"randint\", \u0026random.IntegerArgs{\n\t\t\tMax: 999,\n\t\t\tMin: 1,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKCTrB2, err := ram.NewUser(ctx, \"defaultKCTrB2\", \u0026ram.UserArgs{\n\t\t\tDisplayName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultQeRfvU, err := dataworks.NewProject(ctx, \"defaultQeRfvU\", \u0026dataworks.ProjectArgs{\n\t\t\tStatus: pulumi.String(\"Available\"),\n\t\t\tDescription: pulumi.String(\"tf_desc\"),\n\t\t\tProjectName: pulumi.Sprintf(\"%v%v\", name, randint.Id),\n\t\t\tPaiTaskEnabled: pulumi.Bool(false),\n\t\t\tDisplayName: pulumi.String(\"tf_new_api_display\"),\n\t\t\tDevRoleDisabled: pulumi.Bool(true),\n\t\t\tDevEnvironmentEnabled: pulumi.Bool(false),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dataworks.NewProjectMember(ctx, \"default\", \u0026dataworks.ProjectMemberArgs{\n\t\t\tUserId: defaultKCTrB2.ID(),\n\t\t\tProjectId: defaultQeRfvU.ID(),\n\t\t\tRoles: dataworks.ProjectMemberRoleArray{\n\t\t\t\t\u0026dataworks.ProjectMemberRoleArgs{\n\t\t\t\t\tCode: pulumi.String(adminCode),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dataworks.Project;\nimport com.pulumi.alicloud.dataworks.ProjectArgs;\nimport com.pulumi.alicloud.dataworks.ProjectMember;\nimport com.pulumi.alicloud.dataworks.ProjectMemberArgs;\nimport com.pulumi.alicloud.dataworks.inputs.ProjectMemberRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var adminCode = config.get(\"adminCode\").orElse(\"role_project_admin\");\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var randint = new Integer(\"randint\", IntegerArgs.builder()\n .max(999)\n .min(1)\n .build());\n\n var defaultKCTrB2 = new User(\"defaultKCTrB2\", UserArgs.builder()\n .displayName(String.format(\"%s%s\", name,randint.id()))\n .name(String.format(\"%s%s\", name,randint.id()))\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultQeRfvU = new Project(\"defaultQeRfvU\", ProjectArgs.builder()\n .status(\"Available\")\n .description(\"tf_desc\")\n .projectName(String.format(\"%s%s\", name,randint.id()))\n .paiTaskEnabled(false)\n .displayName(\"tf_new_api_display\")\n .devRoleDisabled(true)\n .devEnvironmentEnabled(false)\n .resourceGroupId(default_.ids()[0])\n .build());\n\n var defaultProjectMember = new ProjectMember(\"defaultProjectMember\", ProjectMemberArgs.builder()\n .userId(defaultKCTrB2.id())\n .projectId(defaultQeRfvU.id())\n .roles(ProjectMemberRoleArgs.builder()\n .code(adminCode)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n adminCode:\n type: string\n default: role_project_admin\n name:\n type: string\n default: tf_example\nresources:\n randint:\n type: random:Integer\n properties:\n max: 999\n min: 1\n defaultKCTrB2:\n type: alicloud:ram:User\n properties:\n displayName: ${name}${randint.id}\n name: ${name}${randint.id}\n defaultQeRfvU:\n type: alicloud:dataworks:Project\n properties:\n status: Available\n description: tf_desc\n projectName: ${name}${randint.id}\n paiTaskEnabled: 'false'\n displayName: tf_new_api_display\n devRoleDisabled: 'true'\n devEnvironmentEnabled: 'false'\n resourceGroupId: ${default.ids[0]}\n defaultProjectMember:\n type: alicloud:dataworks:ProjectMember\n name: default\n properties:\n userId: ${defaultKCTrB2.id}\n projectId: ${defaultQeRfvU.id}\n roles:\n - code: ${adminCode}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nData Works Project Member can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dataworks/projectMember:ProjectMember example \u003cproject_id\u003e:\u003cuser_id\u003e\n```\n\n",
"properties": {
"projectId": {
"type": "integer",
@@ -137561,7 +140190,7 @@
}
},
"alicloud:dbs/backupPlan:BackupPlan": {
- "description": "Provides a DBS Backup Plan resource.\n\nFor information about DBS Backup Plan and how to use it, see [What is Backup Plan](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dbs-2019-03-06-createandstartbackupplan).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[1]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, defaultGetZones]).then(([defaultGetNetworks, defaultGetZones]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: defaultGetZones.zones?.[1]?.id,\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst zoneId = defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.ids?.[1]);\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: vswitchId,\n instanceName: name,\n});\nconst defaultDatabase = new alicloud.rds.Database(\"default\", {\n instanceId: defaultInstance.id,\n name: \"tfdatabase\",\n});\nconst defaultRdsAccount = new alicloud.rds.RdsAccount(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfnormal000\",\n accountPassword: \"Test12345\",\n});\nconst defaultAccountPrivilege = new alicloud.rds.AccountPrivilege(\"default\", {\n instanceId: defaultInstance.id,\n accountName: defaultRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [defaultDatabase.name],\n});\nconst defaultBackupPlan = new alicloud.dbs.BackupPlan(\"default\", {\n backupPlanName: name,\n paymentType: \"PayAsYouGo\",\n instanceClass: \"xlarge\",\n backupMethod: \"logical\",\n databaseType: \"MySQL\",\n databaseRegion: \"cn-hangzhou\",\n storageRegion: \"cn-hangzhou\",\n instanceType: \"RDS\",\n sourceEndpointInstanceType: \"RDS\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n sourceEndpointRegion: \"cn-hangzhou\",\n sourceEndpointInstanceId: defaultInstance.id,\n sourceEndpointUserName: defaultAccountPrivilege.accountName,\n sourceEndpointPassword: defaultRdsAccount.accountPassword,\n backupObjects: pulumi.interpolate`[{\"DBName\":\"${defaultDatabase.name}\"}]`,\n backupPeriod: \"Monday\",\n backupStartTime: \"14:22\",\n backupStorageType: \"system\",\n backupRetentionPeriod: 740,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[1].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default_get_zones.zones[1].id)\nvswitch_id = default_get_switches.ids[0]\nzone_id = default_get_zones.ids[1]\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=vswitch_id,\n instance_name=name)\ndefault_database = alicloud.rds.Database(\"default\",\n instance_id=default_instance.id,\n name=\"tfdatabase\")\ndefault_rds_account = alicloud.rds.RdsAccount(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfnormal000\",\n account_password=\"Test12345\")\ndefault_account_privilege = alicloud.rds.AccountPrivilege(\"default\",\n instance_id=default_instance.id,\n account_name=default_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[default_database.name])\ndefault_backup_plan = alicloud.dbs.BackupPlan(\"default\",\n backup_plan_name=name,\n payment_type=\"PayAsYouGo\",\n instance_class=\"xlarge\",\n backup_method=\"logical\",\n database_type=\"MySQL\",\n database_region=\"cn-hangzhou\",\n storage_region=\"cn-hangzhou\",\n instance_type=\"RDS\",\n source_endpoint_instance_type=\"RDS\",\n resource_group_id=default.ids[0],\n source_endpoint_region=\"cn-hangzhou\",\n source_endpoint_instance_id=default_instance.id,\n source_endpoint_user_name=default_account_privilege.account_name,\n source_endpoint_password=default_rds_account.account_password,\n backup_objects=default_database.name.apply(lambda name: f\"[{{\\\"DBName\\\":\\\"{name}\\\"}}]\"),\n backup_period=\"Monday\",\n backup_start_time=\"14:22\",\n backup_storage_type=\"system\",\n backup_retention_period=740)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var zoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Ids[1]);\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = vswitchId,\n InstanceName = name,\n });\n\n var defaultDatabase = new AliCloud.Rds.Database(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Name = \"tfdatabase\",\n });\n\n var defaultRdsAccount = new AliCloud.Rds.RdsAccount(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfnormal000\",\n AccountPassword = \"Test12345\",\n });\n\n var defaultAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n AccountName = defaultRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n defaultDatabase.Name,\n },\n });\n\n var defaultBackupPlan = new AliCloud.DBS.BackupPlan(\"default\", new()\n {\n BackupPlanName = name,\n PaymentType = \"PayAsYouGo\",\n InstanceClass = \"xlarge\",\n BackupMethod = \"logical\",\n DatabaseType = \"MySQL\",\n DatabaseRegion = \"cn-hangzhou\",\n StorageRegion = \"cn-hangzhou\",\n InstanceType = \"RDS\",\n SourceEndpointInstanceType = \"RDS\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n SourceEndpointRegion = \"cn-hangzhou\",\n SourceEndpointInstanceId = defaultInstance.Id,\n SourceEndpointUserName = defaultAccountPrivilege.AccountName,\n SourceEndpointPassword = defaultRdsAccount.AccountPassword,\n BackupObjects = defaultDatabase.Name.Apply(name =\u003e $\"[{{\\\"DBName\\\":\\\"{name}\\\"}}]\"),\n BackupPeriod = \"Monday\",\n BackupStartTime = \"14:22\",\n BackupStorageType = \"system\",\n BackupRetentionPeriod = 740,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dbs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\t_ := defaultGetZones.Ids[1]\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDatabase, err := rds.NewDatabase(ctx, \"default\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tName: pulumi.String(\"tfdatabase\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRdsAccount, err := rds.NewRdsAccount(ctx, \"default\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfnormal000\"),\n\t\t\tAccountPassword: pulumi.String(\"Test12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccountPrivilege, err := rds.NewAccountPrivilege(ctx, \"default\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: defaultRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\tdefaultDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dbs.NewBackupPlan(ctx, \"default\", \u0026dbs.BackupPlanArgs{\n\t\t\tBackupPlanName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceClass: pulumi.String(\"xlarge\"),\n\t\t\tBackupMethod: pulumi.String(\"logical\"),\n\t\t\tDatabaseType: pulumi.String(\"MySQL\"),\n\t\t\tDatabaseRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tStorageRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tSourceEndpointRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tSourceEndpointInstanceId: defaultInstance.ID(),\n\t\t\tSourceEndpointUserName: defaultAccountPrivilege.AccountName,\n\t\t\tSourceEndpointPassword: defaultRdsAccount.AccountPassword,\n\t\t\tBackupObjects: defaultDatabase.Name.ApplyT(func(name string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"[{\\\"DBName\\\":\\\"%v\\\"}]\", name), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tBackupPeriod: pulumi.String(\"Monday\"),\n\t\t\tBackupStartTime: pulumi.String(\"14:22\"),\n\t\t\tBackupStorageType: pulumi.String(\"system\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(740),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dbs.BackupPlan;\nimport com.pulumi.alicloud.dbs.BackupPlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[1].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(defaultGetZones.zones()[1].id())\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n final var zoneId = defaultGetZones.ids()[1];\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(vswitchId)\n .instanceName(name)\n .build());\n\n var defaultDatabase = new Database(\"defaultDatabase\", DatabaseArgs.builder()\n .instanceId(defaultInstance.id())\n .name(\"tfdatabase\")\n .build());\n\n var defaultRdsAccount = new RdsAccount(\"defaultRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfnormal000\")\n .accountPassword(\"Test12345\")\n .build());\n\n var defaultAccountPrivilege = new AccountPrivilege(\"defaultAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(defaultInstance.id())\n .accountName(defaultRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(defaultDatabase.name())\n .build());\n\n var defaultBackupPlan = new BackupPlan(\"defaultBackupPlan\", BackupPlanArgs.builder()\n .backupPlanName(name)\n .paymentType(\"PayAsYouGo\")\n .instanceClass(\"xlarge\")\n .backupMethod(\"logical\")\n .databaseType(\"MySQL\")\n .databaseRegion(\"cn-hangzhou\")\n .storageRegion(\"cn-hangzhou\")\n .instanceType(\"RDS\")\n .sourceEndpointInstanceType(\"RDS\")\n .resourceGroupId(default_.ids()[0])\n .sourceEndpointRegion(\"cn-hangzhou\")\n .sourceEndpointInstanceId(defaultInstance.id())\n .sourceEndpointUserName(defaultAccountPrivilege.accountName())\n .sourceEndpointPassword(defaultRdsAccount.accountPassword())\n .backupObjects(defaultDatabase.name().applyValue(_name -\u003e String.format(\"[{{\\\"DBName\\\":\\\"%s\\\"}}]\", _name)))\n .backupPeriod(\"Monday\")\n .backupStartTime(\"14:22\")\n .backupStorageType(\"system\")\n .backupRetentionPeriod(740)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${vswitchId}\n instanceName: ${name}\n defaultDatabase:\n type: alicloud:rds:Database\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n name: tfdatabase\n defaultRdsAccount:\n type: alicloud:rds:RdsAccount\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfnormal000\n accountPassword: Test12345\n defaultAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n accountName: ${defaultRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${defaultDatabase.name}\n defaultBackupPlan:\n type: alicloud:dbs:BackupPlan\n name: default\n properties:\n backupPlanName: ${name}\n paymentType: PayAsYouGo\n instanceClass: xlarge\n backupMethod: logical\n databaseType: MySQL\n databaseRegion: cn-hangzhou\n storageRegion: cn-hangzhou\n instanceType: RDS\n sourceEndpointInstanceType: RDS\n resourceGroupId: ${default.ids[0]}\n sourceEndpointRegion: cn-hangzhou\n sourceEndpointInstanceId: ${defaultInstance.id}\n sourceEndpointUserName: ${defaultAccountPrivilege.accountName}\n sourceEndpointPassword: ${defaultRdsAccount.accountPassword}\n backupObjects: '[{\"DBName\":\"${defaultDatabase.name}\"}]'\n backupPeriod: Monday\n backupStartTime: 14:22\n backupStorageType: system\n backupRetentionPeriod: 740\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[1].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${defaultGetZones.zones[1].id}\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneId: ${defaultGetZones.ids[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDBS Backup Plan can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dbs/backupPlan:BackupPlan example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DBS Backup Plan resource.\n\nFor information about DBS Backup Plan and how to use it, see [What is Backup Plan](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dbs-2019-03-06-createandstartbackupplan).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[1]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING\",\n});\nconst defaultGetSwitches = Promise.all([defaultGetNetworks, defaultGetZones]).then(([defaultGetNetworks, defaultGetZones]) =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n zoneId: defaultGetZones.zones?.[1]?.id,\n}));\nconst vswitchId = defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]);\nconst zoneId = defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.ids?.[1]);\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultGetNetworks.then(defaultGetNetworks =\u003e defaultGetNetworks.ids?.[0]),\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: vswitchId,\n instanceName: name,\n});\nconst defaultDatabase = new alicloud.rds.Database(\"default\", {\n instanceId: defaultInstance.id,\n name: \"tfdatabase\",\n});\nconst defaultRdsAccount = new alicloud.rds.RdsAccount(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfnormal000\",\n accountPassword: \"Test12345\",\n});\nconst defaultAccountPrivilege = new alicloud.rds.AccountPrivilege(\"default\", {\n instanceId: defaultInstance.id,\n accountName: defaultRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [defaultDatabase.name],\n});\nconst defaultBackupPlan = new alicloud.dbs.BackupPlan(\"default\", {\n backupPlanName: name,\n paymentType: \"PayAsYouGo\",\n instanceClass: \"xlarge\",\n backupMethod: \"logical\",\n databaseType: \"MySQL\",\n databaseRegion: \"cn-hangzhou\",\n storageRegion: \"cn-hangzhou\",\n instanceType: \"RDS\",\n sourceEndpointInstanceType: \"RDS\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n sourceEndpointRegion: \"cn-hangzhou\",\n sourceEndpointInstanceId: defaultInstance.id,\n sourceEndpointUserName: defaultAccountPrivilege.accountName,\n sourceEndpointPassword: defaultRdsAccount.accountPassword,\n backupObjects: pulumi.interpolate`[{\"DBName\":\"${defaultDatabase.name}\"}]`,\n backupPeriod: \"Monday\",\n backupStartTime: \"14:22\",\n backupStorageType: \"system\",\n backupRetentionPeriod: 740,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[1].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],\n zone_id=default_get_zones.zones[1].id)\nvswitch_id = default_get_switches.ids[0]\nzone_id = default_get_zones.ids[1]\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=vswitch_id,\n instance_name=name)\ndefault_database = alicloud.rds.Database(\"default\",\n instance_id=default_instance.id,\n name=\"tfdatabase\")\ndefault_rds_account = alicloud.rds.RdsAccount(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfnormal000\",\n account_password=\"Test12345\")\ndefault_account_privilege = alicloud.rds.AccountPrivilege(\"default\",\n instance_id=default_instance.id,\n account_name=default_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[default_database.name])\ndefault_backup_plan = alicloud.dbs.BackupPlan(\"default\",\n backup_plan_name=name,\n payment_type=\"PayAsYouGo\",\n instance_class=\"xlarge\",\n backup_method=\"logical\",\n database_type=\"MySQL\",\n database_region=\"cn-hangzhou\",\n storage_region=\"cn-hangzhou\",\n instance_type=\"RDS\",\n source_endpoint_instance_type=\"RDS\",\n resource_group_id=default.ids[0],\n source_endpoint_region=\"cn-hangzhou\",\n source_endpoint_instance_id=default_instance.id,\n source_endpoint_user_name=default_account_privilege.account_name,\n source_endpoint_password=default_rds_account.account_password,\n backup_objects=default_database.name.apply(lambda name: f\"[{{\\\"DBName\\\":\\\"{name}\\\"}}]\"),\n backup_period=\"Monday\",\n backup_start_time=\"14:22\",\n backup_storage_type=\"system\",\n backup_retention_period=740)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n });\n\n var vswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]);\n\n var zoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Ids[1]);\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = vswitchId,\n InstanceName = name,\n });\n\n var defaultDatabase = new AliCloud.Rds.Database(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n Name = \"tfdatabase\",\n });\n\n var defaultRdsAccount = new AliCloud.Rds.RdsAccount(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfnormal000\",\n AccountPassword = \"Test12345\",\n });\n\n var defaultAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n AccountName = defaultRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n defaultDatabase.Name,\n },\n });\n\n var defaultBackupPlan = new AliCloud.DBS.BackupPlan(\"default\", new()\n {\n BackupPlanName = name,\n PaymentType = \"PayAsYouGo\",\n InstanceClass = \"xlarge\",\n BackupMethod = \"logical\",\n DatabaseType = \"MySQL\",\n DatabaseRegion = \"cn-hangzhou\",\n StorageRegion = \"cn-hangzhou\",\n InstanceType = \"RDS\",\n SourceEndpointInstanceType = \"RDS\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n SourceEndpointRegion = \"cn-hangzhou\",\n SourceEndpointInstanceId = defaultInstance.Id,\n SourceEndpointUserName = defaultAccountPrivilege.AccountName,\n SourceEndpointPassword = defaultRdsAccount.AccountPassword,\n BackupObjects = defaultDatabase.Name.Apply(name =\u003e $\"[{{\\\"DBName\\\":\\\"{name}\\\"}}]\"),\n BackupPeriod = \"Monday\",\n BackupStartTime = \"14:22\",\n BackupStorageType = \"system\",\n BackupRetentionPeriod = 740,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dbs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvswitchId := defaultGetSwitches.Ids[0]\n\t\t_ := defaultGetZones.Ids[1]\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: pulumi.String(defaultGetNetworks.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: pulumi.String(vswitchId),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDatabase, err := rds.NewDatabase(ctx, \"default\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tName: pulumi.String(\"tfdatabase\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultRdsAccount, err := rds.NewRdsAccount(ctx, \"default\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfnormal000\"),\n\t\t\tAccountPassword: pulumi.String(\"Test12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccountPrivilege, err := rds.NewAccountPrivilege(ctx, \"default\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: defaultRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\tdefaultDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dbs.NewBackupPlan(ctx, \"default\", \u0026dbs.BackupPlanArgs{\n\t\t\tBackupPlanName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceClass: pulumi.String(\"xlarge\"),\n\t\t\tBackupMethod: pulumi.String(\"logical\"),\n\t\t\tDatabaseType: pulumi.String(\"MySQL\"),\n\t\t\tDatabaseRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tStorageRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tSourceEndpointRegion: pulumi.String(\"cn-hangzhou\"),\n\t\t\tSourceEndpointInstanceId: defaultInstance.ID(),\n\t\t\tSourceEndpointUserName: defaultAccountPrivilege.AccountName,\n\t\t\tSourceEndpointPassword: defaultRdsAccount.AccountPassword,\n\t\t\tBackupObjects: defaultDatabase.Name.ApplyT(func(name string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"[{\\\"DBName\\\":\\\"%v\\\"}]\", name), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tBackupPeriod: pulumi.String(\"Monday\"),\n\t\t\tBackupStartTime: pulumi.String(\"14:22\"),\n\t\t\tBackupStorageType: pulumi.String(\"system\"),\n\t\t\tBackupRetentionPeriod: pulumi.Int(740),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dbs.BackupPlan;\nimport com.pulumi.alicloud.dbs.BackupPlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[1].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .zoneId(defaultGetZones.zones()[1].id())\n .build());\n\n final var vswitchId = defaultGetSwitches.ids()[0];\n\n final var zoneId = defaultGetZones.ids()[1];\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(vswitchId)\n .instanceName(name)\n .build());\n\n var defaultDatabase = new Database(\"defaultDatabase\", DatabaseArgs.builder()\n .instanceId(defaultInstance.id())\n .name(\"tfdatabase\")\n .build());\n\n var defaultRdsAccount = new RdsAccount(\"defaultRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfnormal000\")\n .accountPassword(\"Test12345\")\n .build());\n\n var defaultAccountPrivilege = new AccountPrivilege(\"defaultAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(defaultInstance.id())\n .accountName(defaultRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(defaultDatabase.name())\n .build());\n\n var defaultBackupPlan = new BackupPlan(\"defaultBackupPlan\", BackupPlanArgs.builder()\n .backupPlanName(name)\n .paymentType(\"PayAsYouGo\")\n .instanceClass(\"xlarge\")\n .backupMethod(\"logical\")\n .databaseType(\"MySQL\")\n .databaseRegion(\"cn-hangzhou\")\n .storageRegion(\"cn-hangzhou\")\n .instanceType(\"RDS\")\n .sourceEndpointInstanceType(\"RDS\")\n .resourceGroupId(default_.ids()[0])\n .sourceEndpointRegion(\"cn-hangzhou\")\n .sourceEndpointInstanceId(defaultInstance.id())\n .sourceEndpointUserName(defaultAccountPrivilege.accountName())\n .sourceEndpointPassword(defaultRdsAccount.accountPassword())\n .backupObjects(defaultDatabase.name().applyValue(_name -\u003e String.format(\"[{{\\\"DBName\\\":\\\"%s\\\"}}]\", _name)))\n .backupPeriod(\"Monday\")\n .backupStartTime(\"14:22\")\n .backupStorageType(\"system\")\n .backupRetentionPeriod(740)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultGetNetworks.ids[0]}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${vswitchId}\n instanceName: ${name}\n defaultDatabase:\n type: alicloud:rds:Database\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n name: tfdatabase\n defaultRdsAccount:\n type: alicloud:rds:RdsAccount\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfnormal000\n accountPassword: Test12345\n defaultAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n accountName: ${defaultRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${defaultDatabase.name}\n defaultBackupPlan:\n type: alicloud:dbs:BackupPlan\n name: default\n properties:\n backupPlanName: ${name}\n paymentType: PayAsYouGo\n instanceClass: xlarge\n backupMethod: logical\n databaseType: MySQL\n databaseRegion: cn-hangzhou\n storageRegion: cn-hangzhou\n instanceType: RDS\n sourceEndpointInstanceType: RDS\n resourceGroupId: ${default.ids[0]}\n sourceEndpointRegion: cn-hangzhou\n sourceEndpointInstanceId: ${defaultInstance.id}\n sourceEndpointUserName: ${defaultAccountPrivilege.accountName}\n sourceEndpointPassword: ${defaultRdsAccount.accountPassword}\n backupObjects: '[{\"DBName\":\"${defaultDatabase.name}\"}]'\n backupPeriod: Monday\n backupStartTime: 14:22\n backupStorageType: system\n backupRetentionPeriod: 740\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[1].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n zoneId: ${defaultGetZones.zones[1].id}\n vswitchId: ${defaultGetSwitches.ids[0]}\n zoneId: ${defaultGetZones.ids[1]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDBS Backup Plan can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dbs/backupPlan:BackupPlan example \u003cid\u003e\n```\n\n",
"properties": {
"backupGatewayId": {
"type": "string",
@@ -138115,7 +140744,7 @@
}
},
"alicloud:dcdn/domain:Domain": {
- "description": "Provides a DCDN Domain resource.\n\nFull station accelerated domain name.\n\nFor information about DCDN Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/doc-detail/130628.htm).\n\n\u003e **NOTE:** Available since v1.94.0.\n\n\u003e **NOTE:** Field \u003cspan pulumi-lang-nodejs=\"`forceSet`\" pulumi-lang-dotnet=\"`ForceSet`\" pulumi-lang-go=\"`forceSet`\" pulumi-lang-python=\"`force_set`\" pulumi-lang-yaml=\"`forceSet`\" pulumi-lang-java=\"`forceSet`\"\u003e`force_set`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityToken`\" pulumi-lang-dotnet=\"`SecurityToken`\" pulumi-lang-go=\"`securityToken`\" pulumi-lang-python=\"`security_token`\" pulumi-lang-yaml=\"`securityToken`\" pulumi-lang-java=\"`securityToken`\"\u003e`security_token`\u003c/span\u003e has been removed from provider version 1.227.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/domain:Domain example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DCDN Domain resource.\n\nFull station accelerated domain name.\n\nFor information about DCDN Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/doc-detail/130628.htm).\n\n\u003e **NOTE:** Available since v1.94.0.\n\n\u003e **NOTE:** Field \u003cspan pulumi-lang-nodejs=\"`forceSet`\" pulumi-lang-dotnet=\"`ForceSet`\" pulumi-lang-go=\"`forceSet`\" pulumi-lang-python=\"`force_set`\" pulumi-lang-yaml=\"`forceSet`\" pulumi-lang-java=\"`forceSet`\"\u003e`force_set`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityToken`\" pulumi-lang-dotnet=\"`SecurityToken`\" pulumi-lang-go=\"`securityToken`\" pulumi-lang-python=\"`security_token`\" pulumi-lang-yaml=\"`securityToken`\" pulumi-lang-java=\"`securityToken`\"\u003e`security_token`\u003c/span\u003e has been removed from provider version 1.227.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/domain:Domain example \u003cid\u003e\n```\n\n",
"properties": {
"certId": {
"type": "string",
@@ -138402,7 +141031,7 @@
}
},
"alicloud:dcdn/domainConfig:DomainConfig": {
- "description": "Provides a DCDN Accelerated Domain resource.\n\nFor information about domain config and how to use it, see [Batch set config](https://www.alibabacloud.com/help/en/doc-detail/130632.htm).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"alibaba-example.com\";\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: domainName,\n scope: \"overseas\",\n status: \"online\",\n sources: [{\n content: \"1.1.1.1\",\n type: \"ipaddr\",\n priority: \"20\",\n port: 80,\n weight: \"10\",\n }],\n});\nconst ipAllowListSet = new alicloud.dcdn.DomainConfig(\"ip_allow_list_set\", {\n domainName: example.domainName,\n functionName: \"ip_allow_list_set\",\n functionArgs: [{\n argName: \"ip_list\",\n argValue: \"192.168.0.1\",\n }],\n});\nconst refererWhiteListSet = new alicloud.dcdn.DomainConfig(\"referer_white_list_set\", {\n domainName: example.domainName,\n functionName: \"referer_white_list_set\",\n functionArgs: [{\n argName: \"refer_domain_allow_list\",\n argValue: \"110.110.110.110\",\n }],\n});\nconst filetypeBasedTtlSet = new alicloud.dcdn.DomainConfig(\"filetype_based_ttl_set\", {\n domainName: example.domainName,\n functionName: \"filetype_based_ttl_set\",\n functionArgs: [\n {\n argName: \"ttl\",\n argValue: \"300\",\n },\n {\n argName: \"file_type\",\n argValue: \"jpg\",\n },\n {\n argName: \"weight\",\n argValue: \"1\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alibaba-example.com\"\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=domain_name,\n scope=\"overseas\",\n status=\"online\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"type\": \"ipaddr\",\n \"priority\": \"20\",\n \"port\": 80,\n \"weight\": \"10\",\n }])\nip_allow_list_set = alicloud.dcdn.DomainConfig(\"ip_allow_list_set\",\n domain_name=example.domain_name,\n function_name=\"ip_allow_list_set\",\n function_args=[{\n \"arg_name\": \"ip_list\",\n \"arg_value\": \"192.168.0.1\",\n }])\nreferer_white_list_set = alicloud.dcdn.DomainConfig(\"referer_white_list_set\",\n domain_name=example.domain_name,\n function_name=\"referer_white_list_set\",\n function_args=[{\n \"arg_name\": \"refer_domain_allow_list\",\n \"arg_value\": \"110.110.110.110\",\n }])\nfiletype_based_ttl_set = alicloud.dcdn.DomainConfig(\"filetype_based_ttl_set\",\n domain_name=example.domain_name,\n function_name=\"filetype_based_ttl_set\",\n function_args=[\n {\n \"arg_name\": \"ttl\",\n \"arg_value\": \"300\",\n },\n {\n \"arg_name\": \"file_type\",\n \"arg_value\": \"jpg\",\n },\n {\n \"arg_name\": \"weight\",\n \"arg_value\": \"1\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"alibaba-example.com\";\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = domainName,\n Scope = \"overseas\",\n Status = \"online\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Type = \"ipaddr\",\n Priority = \"20\",\n Port = 80,\n Weight = \"10\",\n },\n },\n });\n\n var ipAllowListSet = new AliCloud.Dcdn.DomainConfig(\"ip_allow_list_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"ip_allow_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ip_list\",\n ArgValue = \"192.168.0.1\",\n },\n },\n });\n\n var refererWhiteListSet = new AliCloud.Dcdn.DomainConfig(\"referer_white_list_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"referer_white_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"refer_domain_allow_list\",\n ArgValue = \"110.110.110.110\",\n },\n },\n });\n\n var filetypeBasedTtlSet = new AliCloud.Dcdn.DomainConfig(\"filetype_based_ttl_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"filetype_based_ttl_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ttl\",\n ArgValue = \"300\",\n },\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"file_type\",\n ArgValue = \"jpg\",\n },\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"weight\",\n ArgValue = \"1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"alibaba-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.String(domainName),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tStatus: pulumi.String(\"online\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"ip_allow_list_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"ip_allow_list_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ip_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"192.168.0.1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"referer_white_list_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"referer_white_list_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"refer_domain_allow_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"110.110.110.110\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"filetype_based_ttl_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"filetype_based_ttl_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ttl\"),\n\t\t\t\t\tArgValue: pulumi.String(\"300\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"file_type\"),\n\t\t\t\t\tArgValue: pulumi.String(\"jpg\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"weight\"),\n\t\t\t\t\tArgValue: pulumi.String(\"1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.DomainConfig;\nimport com.pulumi.alicloud.dcdn.DomainConfigArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainConfigFunctionArgArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"alibaba-example.com\");\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(domainName)\n .scope(\"overseas\")\n .status(\"online\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .type(\"ipaddr\")\n .priority(\"20\")\n .port(80)\n .weight(\"10\")\n .build())\n .build());\n\n var ipAllowListSet = new DomainConfig(\"ipAllowListSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"ip_allow_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"ip_list\")\n .argValue(\"192.168.0.1\")\n .build())\n .build());\n\n var refererWhiteListSet = new DomainConfig(\"refererWhiteListSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"referer_white_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"refer_domain_allow_list\")\n .argValue(\"110.110.110.110\")\n .build())\n .build());\n\n var filetypeBasedTtlSet = new DomainConfig(\"filetypeBasedTtlSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"filetype_based_ttl_set\")\n .functionArgs( \n DomainConfigFunctionArgArgs.builder()\n .argName(\"ttl\")\n .argValue(\"300\")\n .build(),\n DomainConfigFunctionArgArgs.builder()\n .argName(\"file_type\")\n .argValue(\"jpg\")\n .build(),\n DomainConfigFunctionArgArgs.builder()\n .argName(\"weight\")\n .argValue(\"1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: alibaba-example.com\nresources:\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}\n scope: overseas\n status: online\n sources:\n - content: 1.1.1.1\n type: ipaddr\n priority: 20\n port: 80\n weight: 10\n ipAllowListSet:\n type: alicloud:dcdn:DomainConfig\n name: ip_allow_list_set\n properties:\n domainName: ${example.domainName}\n functionName: ip_allow_list_set\n functionArgs:\n - argName: ip_list\n argValue: 192.168.0.1\n refererWhiteListSet:\n type: alicloud:dcdn:DomainConfig\n name: referer_white_list_set\n properties:\n domainName: ${example.domainName}\n functionName: referer_white_list_set\n functionArgs:\n - argName: refer_domain_allow_list\n argValue: 110.110.110.110\n filetypeBasedTtlSet:\n type: alicloud:dcdn:DomainConfig\n name: filetype_based_ttl_set\n properties:\n domainName: ${example.domainName}\n functionName: filetype_based_ttl_set\n functionArgs:\n - argName: ttl\n argValue: '300'\n - argName: file_type\n argValue: jpg\n - argName: weight\n argValue: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN domain config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e:\u003cconfig_id\u003e\n```\n\n",
+ "description": "Provides a DCDN Accelerated Domain resource.\n\nFor information about domain config and how to use it, see [Batch set config](https://www.alibabacloud.com/help/en/doc-detail/130632.htm).\n\n\u003e **NOTE:** Available since v1.131.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"alibaba-example.com\";\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: domainName,\n scope: \"overseas\",\n status: \"online\",\n sources: [{\n content: \"1.1.1.1\",\n type: \"ipaddr\",\n priority: \"20\",\n port: 80,\n weight: \"10\",\n }],\n});\nconst ipAllowListSet = new alicloud.dcdn.DomainConfig(\"ip_allow_list_set\", {\n domainName: example.domainName,\n functionName: \"ip_allow_list_set\",\n functionArgs: [{\n argName: \"ip_list\",\n argValue: \"192.168.0.1\",\n }],\n});\nconst refererWhiteListSet = new alicloud.dcdn.DomainConfig(\"referer_white_list_set\", {\n domainName: example.domainName,\n functionName: \"referer_white_list_set\",\n functionArgs: [{\n argName: \"refer_domain_allow_list\",\n argValue: \"110.110.110.110\",\n }],\n});\nconst filetypeBasedTtlSet = new alicloud.dcdn.DomainConfig(\"filetype_based_ttl_set\", {\n domainName: example.domainName,\n functionName: \"filetype_based_ttl_set\",\n functionArgs: [\n {\n argName: \"ttl\",\n argValue: \"300\",\n },\n {\n argName: \"file_type\",\n argValue: \"jpg\",\n },\n {\n argName: \"weight\",\n argValue: \"1\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alibaba-example.com\"\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=domain_name,\n scope=\"overseas\",\n status=\"online\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"type\": \"ipaddr\",\n \"priority\": \"20\",\n \"port\": 80,\n \"weight\": \"10\",\n }])\nip_allow_list_set = alicloud.dcdn.DomainConfig(\"ip_allow_list_set\",\n domain_name=example.domain_name,\n function_name=\"ip_allow_list_set\",\n function_args=[{\n \"arg_name\": \"ip_list\",\n \"arg_value\": \"192.168.0.1\",\n }])\nreferer_white_list_set = alicloud.dcdn.DomainConfig(\"referer_white_list_set\",\n domain_name=example.domain_name,\n function_name=\"referer_white_list_set\",\n function_args=[{\n \"arg_name\": \"refer_domain_allow_list\",\n \"arg_value\": \"110.110.110.110\",\n }])\nfiletype_based_ttl_set = alicloud.dcdn.DomainConfig(\"filetype_based_ttl_set\",\n domain_name=example.domain_name,\n function_name=\"filetype_based_ttl_set\",\n function_args=[\n {\n \"arg_name\": \"ttl\",\n \"arg_value\": \"300\",\n },\n {\n \"arg_name\": \"file_type\",\n \"arg_value\": \"jpg\",\n },\n {\n \"arg_name\": \"weight\",\n \"arg_value\": \"1\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"alibaba-example.com\";\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = domainName,\n Scope = \"overseas\",\n Status = \"online\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Type = \"ipaddr\",\n Priority = \"20\",\n Port = 80,\n Weight = \"10\",\n },\n },\n });\n\n var ipAllowListSet = new AliCloud.Dcdn.DomainConfig(\"ip_allow_list_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"ip_allow_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ip_list\",\n ArgValue = \"192.168.0.1\",\n },\n },\n });\n\n var refererWhiteListSet = new AliCloud.Dcdn.DomainConfig(\"referer_white_list_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"referer_white_list_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"refer_domain_allow_list\",\n ArgValue = \"110.110.110.110\",\n },\n },\n });\n\n var filetypeBasedTtlSet = new AliCloud.Dcdn.DomainConfig(\"filetype_based_ttl_set\", new()\n {\n DomainName = example.DomainName,\n FunctionName = \"filetype_based_ttl_set\",\n FunctionArgs = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"ttl\",\n ArgValue = \"300\",\n },\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"file_type\",\n ArgValue = \"jpg\",\n },\n new AliCloud.Dcdn.Inputs.DomainConfigFunctionArgArgs\n {\n ArgName = \"weight\",\n ArgValue = \"1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"alibaba-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.String(domainName),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tStatus: pulumi.String(\"online\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"ip_allow_list_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"ip_allow_list_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ip_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"192.168.0.1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"referer_white_list_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"referer_white_list_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"refer_domain_allow_list\"),\n\t\t\t\t\tArgValue: pulumi.String(\"110.110.110.110\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewDomainConfig(ctx, \"filetype_based_ttl_set\", \u0026dcdn.DomainConfigArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tFunctionName: pulumi.String(\"filetype_based_ttl_set\"),\n\t\t\tFunctionArgs: dcdn.DomainConfigFunctionArgArray{\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"ttl\"),\n\t\t\t\t\tArgValue: pulumi.String(\"300\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"file_type\"),\n\t\t\t\t\tArgValue: pulumi.String(\"jpg\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.DomainConfigFunctionArgArgs{\n\t\t\t\t\tArgName: pulumi.String(\"weight\"),\n\t\t\t\t\tArgValue: pulumi.String(\"1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.DomainConfig;\nimport com.pulumi.alicloud.dcdn.DomainConfigArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainConfigFunctionArgArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"alibaba-example.com\");\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(domainName)\n .scope(\"overseas\")\n .status(\"online\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .type(\"ipaddr\")\n .priority(\"20\")\n .port(80)\n .weight(\"10\")\n .build())\n .build());\n\n var ipAllowListSet = new DomainConfig(\"ipAllowListSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"ip_allow_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"ip_list\")\n .argValue(\"192.168.0.1\")\n .build())\n .build());\n\n var refererWhiteListSet = new DomainConfig(\"refererWhiteListSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"referer_white_list_set\")\n .functionArgs(DomainConfigFunctionArgArgs.builder()\n .argName(\"refer_domain_allow_list\")\n .argValue(\"110.110.110.110\")\n .build())\n .build());\n\n var filetypeBasedTtlSet = new DomainConfig(\"filetypeBasedTtlSet\", DomainConfigArgs.builder()\n .domainName(example.domainName())\n .functionName(\"filetype_based_ttl_set\")\n .functionArgs( \n DomainConfigFunctionArgArgs.builder()\n .argName(\"ttl\")\n .argValue(\"300\")\n .build(),\n DomainConfigFunctionArgArgs.builder()\n .argName(\"file_type\")\n .argValue(\"jpg\")\n .build(),\n DomainConfigFunctionArgArgs.builder()\n .argName(\"weight\")\n .argValue(\"1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: alibaba-example.com\nresources:\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}\n scope: overseas\n status: online\n sources:\n - content: 1.1.1.1\n type: ipaddr\n priority: 20\n port: 80\n weight: 10\n ipAllowListSet:\n type: alicloud:dcdn:DomainConfig\n name: ip_allow_list_set\n properties:\n domainName: ${example.domainName}\n functionName: ip_allow_list_set\n functionArgs:\n - argName: ip_list\n argValue: 192.168.0.1\n refererWhiteListSet:\n type: alicloud:dcdn:DomainConfig\n name: referer_white_list_set\n properties:\n domainName: ${example.domainName}\n functionName: referer_white_list_set\n functionArgs:\n - argName: refer_domain_allow_list\n argValue: 110.110.110.110\n filetypeBasedTtlSet:\n type: alicloud:dcdn:DomainConfig\n name: filetype_based_ttl_set\n properties:\n domainName: ${example.domainName}\n functionName: filetype_based_ttl_set\n functionArgs:\n - argName: ttl\n argValue: '300'\n - argName: file_type\n argValue: jpg\n - argName: weight\n argValue: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN domain config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/domainConfig:DomainConfig example \u003cdomain_name\u003e:\u003cfunction_name\u003e:\u003cconfig_id\u003e\n```\n\n",
"properties": {
"configId": {
"type": "string",
@@ -138505,7 +141134,7 @@
}
},
"alicloud:dcdn/er:Er": {
- "description": "Provides a DCDN Er resource.\n\nFor information about DCDN Er and how to use it, see [What is Er](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-createroutine).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.dcdn.Er(\"default\", {\n erName: name,\n description: name,\n envConf: {\n staging: {\n specName: \"5ms\",\n allowedHosts: [\"example.com\"],\n },\n production: {\n specName: \"5ms\",\n allowedHosts: [\"example.com\"],\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.dcdn.Er(\"default\",\n er_name=name,\n description=name,\n env_conf={\n \"staging\": {\n \"spec_name\": \"5ms\",\n \"allowed_hosts\": [\"example.com\"],\n },\n \"production\": {\n \"spec_name\": \"5ms\",\n \"allowed_hosts\": [\"example.com\"],\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Dcdn.Er(\"default\", new()\n {\n ErName = name,\n Description = name,\n EnvConf = new AliCloud.Dcdn.Inputs.ErEnvConfArgs\n {\n Staging = new AliCloud.Dcdn.Inputs.ErEnvConfStagingArgs\n {\n SpecName = \"5ms\",\n AllowedHosts = new[]\n {\n \"example.com\",\n },\n },\n Production = new AliCloud.Dcdn.Inputs.ErEnvConfProductionArgs\n {\n SpecName = \"5ms\",\n AllowedHosts = new[]\n {\n \"example.com\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dcdn.NewEr(ctx, \"default\", \u0026dcdn.ErArgs{\n\t\t\tErName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tEnvConf: \u0026dcdn.ErEnvConfArgs{\n\t\t\t\tStaging: \u0026dcdn.ErEnvConfStagingArgs{\n\t\t\t\t\tSpecName: pulumi.String(\"5ms\"),\n\t\t\t\t\tAllowedHosts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tProduction: \u0026dcdn.ErEnvConfProductionArgs{\n\t\t\t\t\tSpecName: pulumi.String(\"5ms\"),\n\t\t\t\t\tAllowedHosts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dcdn.Er;\nimport com.pulumi.alicloud.dcdn.ErArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfStagingArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfProductionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Er(\"default\", ErArgs.builder()\n .erName(name)\n .description(name)\n .envConf(ErEnvConfArgs.builder()\n .staging(ErEnvConfStagingArgs.builder()\n .specName(\"5ms\")\n .allowedHosts(\"example.com\")\n .build())\n .production(ErEnvConfProductionArgs.builder()\n .specName(\"5ms\")\n .allowedHosts(\"example.com\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:dcdn:Er\n properties:\n erName: ${name}\n description: ${name}\n envConf:\n staging:\n specName: 5ms\n allowedHosts:\n - example.com\n production:\n specName: 5ms\n allowedHosts:\n - example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Er can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/er:Er example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DCDN Er resource.\n\nFor information about DCDN Er and how to use it, see [What is Er](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-createroutine).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.dcdn.Er(\"default\", {\n erName: name,\n description: name,\n envConf: {\n staging: {\n specName: \"5ms\",\n allowedHosts: [\"example.com\"],\n },\n production: {\n specName: \"5ms\",\n allowedHosts: [\"example.com\"],\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.dcdn.Er(\"default\",\n er_name=name,\n description=name,\n env_conf={\n \"staging\": {\n \"spec_name\": \"5ms\",\n \"allowed_hosts\": [\"example.com\"],\n },\n \"production\": {\n \"spec_name\": \"5ms\",\n \"allowed_hosts\": [\"example.com\"],\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Dcdn.Er(\"default\", new()\n {\n ErName = name,\n Description = name,\n EnvConf = new AliCloud.Dcdn.Inputs.ErEnvConfArgs\n {\n Staging = new AliCloud.Dcdn.Inputs.ErEnvConfStagingArgs\n {\n SpecName = \"5ms\",\n AllowedHosts = new[]\n {\n \"example.com\",\n },\n },\n Production = new AliCloud.Dcdn.Inputs.ErEnvConfProductionArgs\n {\n SpecName = \"5ms\",\n AllowedHosts = new[]\n {\n \"example.com\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dcdn.NewEr(ctx, \"default\", \u0026dcdn.ErArgs{\n\t\t\tErName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tEnvConf: \u0026dcdn.ErEnvConfArgs{\n\t\t\t\tStaging: \u0026dcdn.ErEnvConfStagingArgs{\n\t\t\t\t\tSpecName: pulumi.String(\"5ms\"),\n\t\t\t\t\tAllowedHosts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tProduction: \u0026dcdn.ErEnvConfProductionArgs{\n\t\t\t\t\tSpecName: pulumi.String(\"5ms\"),\n\t\t\t\t\tAllowedHosts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"example.com\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dcdn.Er;\nimport com.pulumi.alicloud.dcdn.ErArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfStagingArgs;\nimport com.pulumi.alicloud.dcdn.inputs.ErEnvConfProductionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Er(\"default\", ErArgs.builder()\n .erName(name)\n .description(name)\n .envConf(ErEnvConfArgs.builder()\n .staging(ErEnvConfStagingArgs.builder()\n .specName(\"5ms\")\n .allowedHosts(\"example.com\")\n .build())\n .production(ErEnvConfProductionArgs.builder()\n .specName(\"5ms\")\n .allowedHosts(\"example.com\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:dcdn:Er\n properties:\n erName: ${name}\n description: ${name}\n envConf:\n staging:\n specName: 5ms\n allowedHosts:\n - example.com\n production:\n specName: 5ms\n allowedHosts:\n - example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Er can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/er:Er example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -138563,7 +141192,7 @@
}
},
"alicloud:dcdn/ipaDomain:IpaDomain": {
- "description": "Provides a DCDN Ipa Domain resource.\n\nFor information about DCDN Ipa Domain and how to use it, see [What is Ipa Domain](https://www.alibabacloud.com/help/en/doc-detail/130634.html).\n\n\u003e **NOTE:** Available since v1.158.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst example = new alicloud.dcdn.IpaDomain(\"example\", {\n domainName: `example-${defaultInteger.result}.com`,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n scope: \"overseas\",\n status: \"online\",\n sources: [{\n content: \"www.alicloud-provider.cn\",\n port: 8898,\n priority: \"20\",\n type: \"domain\",\n weight: 10,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.resourcemanager.get_resource_groups()\nexample = alicloud.dcdn.IpaDomain(\"example\",\n domain_name=f\"example-{default_integer['result']}.com\",\n resource_group_id=default.groups[0].id,\n scope=\"overseas\",\n status=\"online\",\n sources=[{\n \"content\": \"www.alicloud-provider.cn\",\n \"port\": 8898,\n \"priority\": \"20\",\n \"type\": \"domain\",\n \"weight\": 10,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var example = new AliCloud.Dcdn.IpaDomain(\"example\", new()\n {\n DomainName = $\"example-{defaultInteger.Result}.com\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n Scope = \"overseas\",\n Status = \"online\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.IpaDomainSourceArgs\n {\n Content = \"www.alicloud-provider.cn\",\n Port = 8898,\n Priority = \"20\",\n Type = \"domain\",\n Weight = 10,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewIpaDomain(ctx, \"example\", \u0026dcdn.IpaDomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"example-%v.com\", defaultInteger.Result),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tStatus: pulumi.String(\"online\"),\n\t\t\tSources: dcdn.IpaDomainSourceArray{\n\t\t\t\t\u0026dcdn.IpaDomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"www.alicloud-provider.cn\"),\n\t\t\t\t\tPort: pulumi.Int(8898),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"domain\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dcdn.IpaDomain;\nimport com.pulumi.alicloud.dcdn.IpaDomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.IpaDomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var example = new IpaDomain(\"example\", IpaDomainArgs.builder()\n .domainName(String.format(\"example-%s.com\", defaultInteger.result()))\n .resourceGroupId(default_.groups()[0].id())\n .scope(\"overseas\")\n .status(\"online\")\n .sources(IpaDomainSourceArgs.builder()\n .content(\"www.alicloud-provider.cn\")\n .port(8898)\n .priority(\"20\")\n .type(\"domain\")\n .weight(10)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:IpaDomain\n properties:\n domainName: example-${defaultInteger.result}.com\n resourceGroupId: ${default.groups[0].id}\n scope: overseas\n status: online\n sources:\n - content: www.alicloud-provider.cn\n port: 8898\n priority: '20'\n type: domain\n weight: 10\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Ipa Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/ipaDomain:IpaDomain example \u003cdomain_name\u003e\n```\n\n",
+ "description": "Provides a DCDN Ipa Domain resource.\n\nFor information about DCDN Ipa Domain and how to use it, see [What is Ipa Domain](https://www.alibabacloud.com/help/en/doc-detail/130634.html).\n\n\u003e **NOTE:** Available since v1.158.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst example = new alicloud.dcdn.IpaDomain(\"example\", {\n domainName: `example-${defaultInteger.result}.com`,\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n scope: \"overseas\",\n status: \"online\",\n sources: [{\n content: \"www.alicloud-provider.cn\",\n port: 8898,\n priority: \"20\",\n type: \"domain\",\n weight: 10,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.resourcemanager.get_resource_groups()\nexample = alicloud.dcdn.IpaDomain(\"example\",\n domain_name=f\"example-{default_integer['result']}.com\",\n resource_group_id=default.groups[0].id,\n scope=\"overseas\",\n status=\"online\",\n sources=[{\n \"content\": \"www.alicloud-provider.cn\",\n \"port\": 8898,\n \"priority\": \"20\",\n \"type\": \"domain\",\n \"weight\": 10,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var example = new AliCloud.Dcdn.IpaDomain(\"example\", new()\n {\n DomainName = $\"example-{defaultInteger.Result}.com\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n Scope = \"overseas\",\n Status = \"online\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.IpaDomainSourceArgs\n {\n Content = \"www.alicloud-provider.cn\",\n Port = 8898,\n Priority = \"20\",\n Type = \"domain\",\n Weight = 10,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewIpaDomain(ctx, \"example\", \u0026dcdn.IpaDomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"example-%v.com\", defaultInteger.Result),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tStatus: pulumi.String(\"online\"),\n\t\t\tSources: dcdn.IpaDomainSourceArray{\n\t\t\t\t\u0026dcdn.IpaDomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"www.alicloud-provider.cn\"),\n\t\t\t\t\tPort: pulumi.Int(8898),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"domain\"),\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.dcdn.IpaDomain;\nimport com.pulumi.alicloud.dcdn.IpaDomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.IpaDomainSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var example = new IpaDomain(\"example\", IpaDomainArgs.builder()\n .domainName(String.format(\"example-%s.com\", defaultInteger.result()))\n .resourceGroupId(default_.groups()[0].id())\n .scope(\"overseas\")\n .status(\"online\")\n .sources(IpaDomainSourceArgs.builder()\n .content(\"www.alicloud-provider.cn\")\n .port(8898)\n .priority(\"20\")\n .type(\"domain\")\n .weight(10)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:IpaDomain\n properties:\n domainName: example-${defaultInteger.result}.com\n resourceGroupId: ${default.groups[0].id}\n scope: overseas\n status: online\n sources:\n - content: www.alicloud-provider.cn\n port: 8898\n priority: '20'\n type: domain\n weight: 10\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Ipa Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/ipaDomain:IpaDomain example \u003cdomain_name\u003e\n```\n\n",
"properties": {
"domainName": {
"type": "string",
@@ -138660,7 +141289,7 @@
}
},
"alicloud:dcdn/kv:Kv": {
- "description": "Provides a Dcdn Kv resource.\n\nFor information about Dcdn Kv and how to use it, see [What is Kv](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-putdcdnkv).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultKvNamespace = new alicloud.dcdn.KvNamespace(\"default\", {\n description: name,\n namespace: `${name}-${_default.result}`,\n});\nconst defaultKv = new alicloud.dcdn.Kv(\"default\", {\n value: \"example-value\",\n key: `${name}-${_default.result}`,\n namespace: defaultKvNamespace.namespace,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_kv_namespace = alicloud.dcdn.KvNamespace(\"default\",\n description=name,\n namespace=f\"{name}-{default['result']}\")\ndefault_kv = alicloud.dcdn.Kv(\"default\",\n value=\"example-value\",\n key=f\"{name}-{default['result']}\",\n namespace=default_kv_namespace.namespace)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultKvNamespace = new AliCloud.Dcdn.KvNamespace(\"default\", new()\n {\n Description = name,\n Namespace = $\"{name}-{@default.Result}\",\n });\n\n var defaultKv = new AliCloud.Dcdn.Kv(\"default\", new()\n {\n Value = \"example-value\",\n Key = $\"{name}-{@default.Result}\",\n Namespace = defaultKvNamespace.Namespace,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKvNamespace, err := dcdn.NewKvNamespace(ctx, \"default\", \u0026dcdn.KvNamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewKv(ctx, \"default\", \u0026dcdn.KvArgs{\n\t\t\tValue: pulumi.String(\"example-value\"),\n\t\t\tKey: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tNamespace: defaultKvNamespace.Namespace,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.KvNamespace;\nimport com.pulumi.alicloud.dcdn.KvNamespaceArgs;\nimport com.pulumi.alicloud.dcdn.Kv;\nimport com.pulumi.alicloud.dcdn.KvArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultKvNamespace = new KvNamespace(\"defaultKvNamespace\", KvNamespaceArgs.builder()\n .description(name)\n .namespace(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultKv = new Kv(\"defaultKv\", KvArgs.builder()\n .value(\"example-value\")\n .key(String.format(\"%s-%s\", name,default_.result()))\n .namespace(defaultKvNamespace.namespace())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultKvNamespace:\n type: alicloud:dcdn:KvNamespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}-${default.result}\n defaultKv:\n type: alicloud:dcdn:Kv\n name: default\n properties:\n value: example-value\n key: ${name}-${default.result}\n namespace: ${defaultKvNamespace.namespace}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDcdn Kv can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/kv:Kv example \u003cnamespace\u003e:\u003ckey\u003e\n```\n\n",
+ "description": "Provides a Dcdn Kv resource.\n\nFor information about Dcdn Kv and how to use it, see [What is Kv](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-putdcdnkv).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultKvNamespace = new alicloud.dcdn.KvNamespace(\"default\", {\n description: name,\n namespace: `${name}-${_default.result}`,\n});\nconst defaultKv = new alicloud.dcdn.Kv(\"default\", {\n value: \"example-value\",\n key: `${name}-${_default.result}`,\n namespace: defaultKvNamespace.namespace,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_kv_namespace = alicloud.dcdn.KvNamespace(\"default\",\n description=name,\n namespace=f\"{name}-{default['result']}\")\ndefault_kv = alicloud.dcdn.Kv(\"default\",\n value=\"example-value\",\n key=f\"{name}-{default['result']}\",\n namespace=default_kv_namespace.namespace)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultKvNamespace = new AliCloud.Dcdn.KvNamespace(\"default\", new()\n {\n Description = name,\n Namespace = $\"{name}-{@default.Result}\",\n });\n\n var defaultKv = new AliCloud.Dcdn.Kv(\"default\", new()\n {\n Value = \"example-value\",\n Key = $\"{name}-{@default.Result}\",\n Namespace = defaultKvNamespace.Namespace,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKvNamespace, err := dcdn.NewKvNamespace(ctx, \"default\", \u0026dcdn.KvNamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewKv(ctx, \"default\", \u0026dcdn.KvArgs{\n\t\t\tValue: pulumi.String(\"example-value\"),\n\t\t\tKey: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tNamespace: defaultKvNamespace.Namespace,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.KvNamespace;\nimport com.pulumi.alicloud.dcdn.KvNamespaceArgs;\nimport com.pulumi.alicloud.dcdn.Kv;\nimport com.pulumi.alicloud.dcdn.KvArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultKvNamespace = new KvNamespace(\"defaultKvNamespace\", KvNamespaceArgs.builder()\n .description(name)\n .namespace(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultKv = new Kv(\"defaultKv\", KvArgs.builder()\n .value(\"example-value\")\n .key(String.format(\"%s-%s\", name,default_.result()))\n .namespace(defaultKvNamespace.namespace())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultKvNamespace:\n type: alicloud:dcdn:KvNamespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}-${default.result}\n defaultKv:\n type: alicloud:dcdn:Kv\n name: default\n properties:\n value: example-value\n key: ${name}-${default.result}\n namespace: ${defaultKvNamespace.namespace}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDcdn Kv can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/kv:Kv example \u003cnamespace\u003e:\u003ckey\u003e\n```\n\n",
"properties": {
"key": {
"type": "string",
@@ -138723,7 +141352,7 @@
}
},
"alicloud:dcdn/kvNamespace:KvNamespace": {
- "description": "Provides a Dcdn Kv Namespace resource.\n\nFor information about Dcdn Kv Namespace and how to use it, see [What is Kv Namespace](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-putdcdnkvnamespace).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultKvNamespace = new alicloud.dcdn.KvNamespace(\"default\", {\n description: name,\n namespace: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_kv_namespace = alicloud.dcdn.KvNamespace(\"default\",\n description=name,\n namespace=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultKvNamespace = new AliCloud.Dcdn.KvNamespace(\"default\", new()\n {\n Description = name,\n Namespace = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewKvNamespace(ctx, \"default\", \u0026dcdn.KvNamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.KvNamespace;\nimport com.pulumi.alicloud.dcdn.KvNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultKvNamespace = new KvNamespace(\"defaultKvNamespace\", KvNamespaceArgs.builder()\n .description(name)\n .namespace(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultKvNamespace:\n type: alicloud:dcdn:KvNamespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDcdn Kv Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/kvNamespace:KvNamespace example \n```\n\n",
+ "description": "Provides a Dcdn Kv Namespace resource.\n\nFor information about Dcdn Kv Namespace and how to use it, see [What is Kv Namespace](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-putdcdnkvnamespace).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultKvNamespace = new alicloud.dcdn.KvNamespace(\"default\", {\n description: name,\n namespace: `${name}-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_kv_namespace = alicloud.dcdn.KvNamespace(\"default\",\n description=name,\n namespace=f\"{name}-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultKvNamespace = new AliCloud.Dcdn.KvNamespace(\"default\", new()\n {\n Description = name,\n Namespace = $\"{name}-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewKvNamespace(ctx, \"default\", \u0026dcdn.KvNamespaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespace: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.KvNamespace;\nimport com.pulumi.alicloud.dcdn.KvNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultKvNamespace = new KvNamespace(\"defaultKvNamespace\", KvNamespaceArgs.builder()\n .description(name)\n .namespace(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultKvNamespace:\n type: alicloud:dcdn:KvNamespace\n name: default\n properties:\n description: ${name}\n namespace: ${name}-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDcdn Kv Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/kvNamespace:KvNamespace example \n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -138781,7 +141410,7 @@
}
},
"alicloud:dcdn/wafDomain:WafDomain": {
- "description": "Provides a DCDN Waf Domain resource.\n\nFor information about DCDN Waf Domain and how to use it, see [What is Waf Domain](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-batchsetdcdnwafdomainconfigs).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\nconst exampleWafDomain = new alicloud.dcdn.WafDomain(\"example\", {\n domainName: example.domainName,\n clientIpTag: \"X-Forwarded-For\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\nexample_waf_domain = alicloud.dcdn.WafDomain(\"example\",\n domain_name=example.domain_name,\n client_ip_tag=\"X-Forwarded-For\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n var exampleWafDomain = new AliCloud.Dcdn.WafDomain(\"example\", new()\n {\n DomainName = example.DomainName,\n ClientIpTag = \"X-Forwarded-For\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafDomain(ctx, \"example\", \u0026dcdn.WafDomainArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tClientIpTag: pulumi.String(\"X-Forwarded-For\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.WafDomain;\nimport com.pulumi.alicloud.dcdn.WafDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n var exampleWafDomain = new WafDomain(\"exampleWafDomain\", WafDomainArgs.builder()\n .domainName(example.domainName())\n .clientIpTag(\"X-Forwarded-For\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n exampleWafDomain:\n type: alicloud:dcdn:WafDomain\n name: example\n properties:\n domainName: ${example.domainName}\n clientIpTag: X-Forwarded-For\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Waf Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafDomain:WafDomain example \u003cdomain_name\u003e\n```\n\n",
+ "description": "Provides a DCDN Waf Domain resource.\n\nFor information about DCDN Waf Domain and how to use it, see [What is Waf Domain](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-batchsetdcdnwafdomainconfigs).\n\n\u003e **NOTE:** Available since v1.185.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\nconst exampleWafDomain = new alicloud.dcdn.WafDomain(\"example\", {\n domainName: example.domainName,\n clientIpTag: \"X-Forwarded-For\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\nexample_waf_domain = alicloud.dcdn.WafDomain(\"example\",\n domain_name=example.domain_name,\n client_ip_tag=\"X-Forwarded-For\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n var exampleWafDomain = new AliCloud.Dcdn.WafDomain(\"example\", new()\n {\n DomainName = example.DomainName,\n ClientIpTag = \"X-Forwarded-For\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafDomain(ctx, \"example\", \u0026dcdn.WafDomainArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tClientIpTag: pulumi.String(\"X-Forwarded-For\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.WafDomain;\nimport com.pulumi.alicloud.dcdn.WafDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n var exampleWafDomain = new WafDomain(\"exampleWafDomain\", WafDomainArgs.builder()\n .domainName(example.domainName())\n .clientIpTag(\"X-Forwarded-For\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n exampleWafDomain:\n type: alicloud:dcdn:WafDomain\n name: example\n properties:\n domainName: ${example.domainName}\n clientIpTag: X-Forwarded-For\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Waf Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafDomain:WafDomain example \u003cdomain_name\u003e\n```\n\n",
"properties": {
"clientIpTag": {
"type": "string",
@@ -138826,7 +141455,7 @@
}
},
"alicloud:dcdn/wafPolicy:WafPolicy": {
- "description": "Provides a DCDN Waf Policy resource.\n\nFor information about DCDN Waf Policy and how to use it, see [What is Waf Policy](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-createdcdnwafpolicy).\n\n\u003e **NOTE:** Available since v1.184.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new WafPolicy(\"example\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:WafPolicy\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Waf Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafPolicy:WafPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DCDN Waf Policy resource.\n\nFor information about DCDN Waf Policy and how to use it, see [What is Waf Policy](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-createdcdnwafpolicy).\n\n\u003e **NOTE:** Available since v1.184.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new WafPolicy(\"example\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:WafPolicy\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Waf Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafPolicy:WafPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"defenseScene": {
"type": "string",
@@ -138903,7 +141532,7 @@
}
},
"alicloud:dcdn/wafPolicyDomainAttachment:WafPolicyDomainAttachment": {
- "description": "Provides a DCDN Waf Policy Domain Attachment resource.\n\nFor information about DCDN Waf Policy Domain Attachment and how to use it, see [What is Waf Policy Domain Attachment](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-modifydcdnwafpolicydomains).\n\n\u003e **NOTE:** Available since v1.186.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\nconst exampleWafDomain = new alicloud.dcdn.WafDomain(\"example\", {\n domainName: example.domainName,\n clientIpTag: \"X-Forwarded-For\",\n});\nconst exampleWafPolicy = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\nconst exampleWafPolicyDomainAttachment = new alicloud.dcdn.WafPolicyDomainAttachment(\"example\", {\n domainName: exampleWafDomain.domainName,\n policyId: exampleWafPolicy.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\nexample_waf_domain = alicloud.dcdn.WafDomain(\"example\",\n domain_name=example.domain_name,\n client_ip_tag=\"X-Forwarded-For\")\nexample_waf_policy = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\nexample_waf_policy_domain_attachment = alicloud.dcdn.WafPolicyDomainAttachment(\"example\",\n domain_name=example_waf_domain.domain_name,\n policy_id=example_waf_policy.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n var exampleWafDomain = new AliCloud.Dcdn.WafDomain(\"example\", new()\n {\n DomainName = example.DomainName,\n ClientIpTag = \"X-Forwarded-For\",\n });\n\n var exampleWafPolicy = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n var exampleWafPolicyDomainAttachment = new AliCloud.Dcdn.WafPolicyDomainAttachment(\"example\", new()\n {\n DomainName = exampleWafDomain.DomainName,\n PolicyId = exampleWafPolicy.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWafDomain, err := dcdn.NewWafDomain(ctx, \"example\", \u0026dcdn.WafDomainArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tClientIpTag: pulumi.String(\"X-Forwarded-For\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWafPolicy, err := dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafPolicyDomainAttachment(ctx, \"example\", \u0026dcdn.WafPolicyDomainAttachmentArgs{\n\t\t\tDomainName: exampleWafDomain.DomainName,\n\t\t\tPolicyId: exampleWafPolicy.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.WafDomain;\nimport com.pulumi.alicloud.dcdn.WafDomainArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicyDomainAttachment;\nimport com.pulumi.alicloud.dcdn.WafPolicyDomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n var exampleWafDomain = new WafDomain(\"exampleWafDomain\", WafDomainArgs.builder()\n .domainName(example.domainName())\n .clientIpTag(\"X-Forwarded-For\")\n .build());\n\n var exampleWafPolicy = new WafPolicy(\"exampleWafPolicy\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n var exampleWafPolicyDomainAttachment = new WafPolicyDomainAttachment(\"exampleWafPolicyDomainAttachment\", WafPolicyDomainAttachmentArgs.builder()\n .domainName(exampleWafDomain.domainName())\n .policyId(exampleWafPolicy.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n exampleWafDomain:\n type: alicloud:dcdn:WafDomain\n name: example\n properties:\n domainName: ${example.domainName}\n clientIpTag: X-Forwarded-For\n exampleWafPolicy:\n type: alicloud:dcdn:WafPolicy\n name: example\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n exampleWafPolicyDomainAttachment:\n type: alicloud:dcdn:WafPolicyDomainAttachment\n name: example\n properties:\n domainName: ${exampleWafDomain.domainName}\n policyId: ${exampleWafPolicy.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDCDN Waf Policy Domain Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafPolicyDomainAttachment:WafPolicyDomainAttachment example policy_id:domain_name\n```\n\n",
+ "description": "Provides a DCDN Waf Policy Domain Attachment resource.\n\nFor information about DCDN Waf Policy Domain Attachment and how to use it, see [What is Waf Policy Domain Attachment](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-modifydcdnwafpolicydomains).\n\n\u003e **NOTE:** Available since v1.186.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"tf-example.com\";\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.Domain(\"example\", {\n domainName: `${domainName}-${_default.result}`,\n scope: \"overseas\",\n sources: [{\n content: \"1.1.1.1\",\n port: 80,\n priority: \"20\",\n type: \"ipaddr\",\n weight: \"10\",\n }],\n});\nconst exampleWafDomain = new alicloud.dcdn.WafDomain(\"example\", {\n domainName: example.domainName,\n clientIpTag: \"X-Forwarded-For\",\n});\nconst exampleWafPolicy = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\nconst exampleWafPolicyDomainAttachment = new alicloud.dcdn.WafPolicyDomainAttachment(\"example\", {\n domainName: exampleWafDomain.domainName,\n policyId: exampleWafPolicy.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"tf-example.com\"\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.Domain(\"example\",\n domain_name=f\"{domain_name}-{default['result']}\",\n scope=\"overseas\",\n sources=[{\n \"content\": \"1.1.1.1\",\n \"port\": 80,\n \"priority\": \"20\",\n \"type\": \"ipaddr\",\n \"weight\": \"10\",\n }])\nexample_waf_domain = alicloud.dcdn.WafDomain(\"example\",\n domain_name=example.domain_name,\n client_ip_tag=\"X-Forwarded-For\")\nexample_waf_policy = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\nexample_waf_policy_domain_attachment = alicloud.dcdn.WafPolicyDomainAttachment(\"example\",\n domain_name=example_waf_domain.domain_name,\n policy_id=example_waf_policy.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"tf-example.com\";\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.Domain(\"example\", new()\n {\n DomainName = $\"{domainName}-{@default.Result}\",\n Scope = \"overseas\",\n Sources = new[]\n {\n new AliCloud.Dcdn.Inputs.DomainSourceArgs\n {\n Content = \"1.1.1.1\",\n Port = 80,\n Priority = \"20\",\n Type = \"ipaddr\",\n Weight = \"10\",\n },\n },\n });\n\n var exampleWafDomain = new AliCloud.Dcdn.WafDomain(\"example\", new()\n {\n DomainName = example.DomainName,\n ClientIpTag = \"X-Forwarded-For\",\n });\n\n var exampleWafPolicy = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n var exampleWafPolicyDomainAttachment = new AliCloud.Dcdn.WafPolicyDomainAttachment(\"example\", new()\n {\n DomainName = exampleWafDomain.DomainName,\n PolicyId = exampleWafPolicy.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"tf-example.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewDomain(ctx, \"example\", \u0026dcdn.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"%v-%v\", domainName, _default.Result),\n\t\t\tScope: pulumi.String(\"overseas\"),\n\t\t\tSources: dcdn.DomainSourceArray{\n\t\t\t\t\u0026dcdn.DomainSourceArgs{\n\t\t\t\t\tContent: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\tPriority: pulumi.String(\"20\"),\n\t\t\t\t\tType: pulumi.String(\"ipaddr\"),\n\t\t\t\t\tWeight: pulumi.String(\"10\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWafDomain, err := dcdn.NewWafDomain(ctx, \"example\", \u0026dcdn.WafDomainArgs{\n\t\t\tDomainName: example.DomainName,\n\t\t\tClientIpTag: pulumi.String(\"X-Forwarded-For\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWafPolicy, err := dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafPolicyDomainAttachment(ctx, \"example\", \u0026dcdn.WafPolicyDomainAttachmentArgs{\n\t\t\tDomainName: exampleWafDomain.DomainName,\n\t\t\tPolicyId: exampleWafPolicy.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.Domain;\nimport com.pulumi.alicloud.dcdn.DomainArgs;\nimport com.pulumi.alicloud.dcdn.inputs.DomainSourceArgs;\nimport com.pulumi.alicloud.dcdn.WafDomain;\nimport com.pulumi.alicloud.dcdn.WafDomainArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicyDomainAttachment;\nimport com.pulumi.alicloud.dcdn.WafPolicyDomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"tf-example.com\");\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"%s-%s\", domainName,default_.result()))\n .scope(\"overseas\")\n .sources(DomainSourceArgs.builder()\n .content(\"1.1.1.1\")\n .port(80)\n .priority(\"20\")\n .type(\"ipaddr\")\n .weight(\"10\")\n .build())\n .build());\n\n var exampleWafDomain = new WafDomain(\"exampleWafDomain\", WafDomainArgs.builder()\n .domainName(example.domainName())\n .clientIpTag(\"X-Forwarded-For\")\n .build());\n\n var exampleWafPolicy = new WafPolicy(\"exampleWafPolicy\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n var exampleWafPolicyDomainAttachment = new WafPolicyDomainAttachment(\"exampleWafPolicyDomainAttachment\", WafPolicyDomainAttachmentArgs.builder()\n .domainName(exampleWafDomain.domainName())\n .policyId(exampleWafPolicy.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: tf-example.com\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:Domain\n properties:\n domainName: ${domainName}-${default.result}\n scope: overseas\n sources:\n - content: 1.1.1.1\n port: '80'\n priority: '20'\n type: ipaddr\n weight: '10'\n exampleWafDomain:\n type: alicloud:dcdn:WafDomain\n name: example\n properties:\n domainName: ${example.domainName}\n clientIpTag: X-Forwarded-For\n exampleWafPolicy:\n type: alicloud:dcdn:WafPolicy\n name: example\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n exampleWafPolicyDomainAttachment:\n type: alicloud:dcdn:WafPolicyDomainAttachment\n name: example\n properties:\n domainName: ${exampleWafDomain.domainName}\n policyId: ${exampleWafPolicy.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDCDN Waf Policy Domain Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafPolicyDomainAttachment:WafPolicyDomainAttachment example policy_id:domain_name\n```\n\n",
"properties": {
"domainName": {
"type": "string",
@@ -138952,7 +141581,7 @@
}
},
"alicloud:dcdn/wafRule:WafRule": {
- "description": "Provides a Dcdn Waf Rule resource.\n\nFor information about Dcdn Waf Rule and how to use it, see [What is Waf Rule](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-batchcreatedcdnwafrules).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\nconst exampleWafRule = new alicloud.dcdn.WafRule(\"example\", {\n policyId: example.id,\n ruleName: name,\n conditions: [\n {\n key: \"URI\",\n opValue: \"ne\",\n values: \"/login.php\",\n },\n {\n key: \"Header\",\n subKey: \"a\",\n opValue: \"eq\",\n values: \"b\",\n },\n ],\n status: \"on\",\n action: \"monitor\",\n rateLimit: {\n target: \"IP\",\n interval: 5,\n threshold: 5,\n ttl: 1800,\n status: {\n code: \"200\",\n ratio: 60,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\nexample_waf_rule = alicloud.dcdn.WafRule(\"example\",\n policy_id=example.id,\n rule_name=name,\n conditions=[\n {\n \"key\": \"URI\",\n \"op_value\": \"ne\",\n \"values\": \"/login.php\",\n },\n {\n \"key\": \"Header\",\n \"sub_key\": \"a\",\n \"op_value\": \"eq\",\n \"values\": \"b\",\n },\n ],\n status=\"on\",\n action=\"monitor\",\n rate_limit={\n \"target\": \"IP\",\n \"interval\": 5,\n \"threshold\": 5,\n \"ttl\": 1800,\n \"status\": {\n \"code\": \"200\",\n \"ratio\": 60,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n var exampleWafRule = new AliCloud.Dcdn.WafRule(\"example\", new()\n {\n PolicyId = example.Id,\n RuleName = name,\n Conditions = new[]\n {\n new AliCloud.Dcdn.Inputs.WafRuleConditionArgs\n {\n Key = \"URI\",\n OpValue = \"ne\",\n Values = \"/login.php\",\n },\n new AliCloud.Dcdn.Inputs.WafRuleConditionArgs\n {\n Key = \"Header\",\n SubKey = \"a\",\n OpValue = \"eq\",\n Values = \"b\",\n },\n },\n Status = \"on\",\n Action = \"monitor\",\n RateLimit = new AliCloud.Dcdn.Inputs.WafRuleRateLimitArgs\n {\n Target = \"IP\",\n Interval = 5,\n Threshold = 5,\n Ttl = 1800,\n Status = new AliCloud.Dcdn.Inputs.WafRuleRateLimitStatusArgs\n {\n Code = \"200\",\n Ratio = 60,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafRule(ctx, \"example\", \u0026dcdn.WafRuleArgs{\n\t\t\tPolicyId: example.ID(),\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tConditions: dcdn.WafRuleConditionArray{\n\t\t\t\t\u0026dcdn.WafRuleConditionArgs{\n\t\t\t\t\tKey: pulumi.String(\"URI\"),\n\t\t\t\t\tOpValue: pulumi.String(\"ne\"),\n\t\t\t\t\tValues: pulumi.String(\"/login.php\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.WafRuleConditionArgs{\n\t\t\t\t\tKey: pulumi.String(\"Header\"),\n\t\t\t\t\tSubKey: pulumi.String(\"a\"),\n\t\t\t\t\tOpValue: pulumi.String(\"eq\"),\n\t\t\t\t\tValues: pulumi.String(\"b\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t\tAction: pulumi.String(\"monitor\"),\n\t\t\tRateLimit: \u0026dcdn.WafRuleRateLimitArgs{\n\t\t\t\tTarget: pulumi.String(\"IP\"),\n\t\t\t\tInterval: pulumi.Int(5),\n\t\t\t\tThreshold: pulumi.Int(5),\n\t\t\t\tTtl: pulumi.Int(1800),\n\t\t\t\tStatus: \u0026dcdn.WafRuleRateLimitStatusArgs{\n\t\t\t\t\tCode: pulumi.String(\"200\"),\n\t\t\t\t\tRatio: pulumi.Int(60),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport com.pulumi.alicloud.dcdn.WafRule;\nimport com.pulumi.alicloud.dcdn.WafRuleArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleConditionArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleRateLimitArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleRateLimitStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new WafPolicy(\"example\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n var exampleWafRule = new WafRule(\"exampleWafRule\", WafRuleArgs.builder()\n .policyId(example.id())\n .ruleName(name)\n .conditions( \n WafRuleConditionArgs.builder()\n .key(\"URI\")\n .opValue(\"ne\")\n .values(\"/login.php\")\n .build(),\n WafRuleConditionArgs.builder()\n .key(\"Header\")\n .subKey(\"a\")\n .opValue(\"eq\")\n .values(\"b\")\n .build())\n .status(\"on\")\n .action(\"monitor\")\n .rateLimit(WafRuleRateLimitArgs.builder()\n .target(\"IP\")\n .interval(5)\n .threshold(5)\n .ttl(1800)\n .status(WafRuleRateLimitStatusArgs.builder()\n .code(\"200\")\n .ratio(60)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:WafPolicy\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n exampleWafRule:\n type: alicloud:dcdn:WafRule\n name: example\n properties:\n policyId: ${example.id}\n ruleName: ${name}\n conditions:\n - key: URI\n opValue: ne\n values: /login.php\n - key: Header\n subKey: a\n opValue: eq\n values: b\n status: on\n action: monitor\n rateLimit:\n target: IP\n interval: '5'\n threshold: '5'\n ttl: '1800'\n status:\n code: '200'\n ratio: '60'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDcdn Waf Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafRule:WafRule example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Dcdn Waf Rule resource.\n\nFor information about Dcdn Waf Rule and how to use it, see [What is Waf Rule](https://www.alibabacloud.com/help/en/dcdn/developer-reference/api-dcdn-2018-01-15-batchcreatedcdnwafrules).\n\n\u003e **NOTE:** Available since v1.201.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.dcdn.WafPolicy(\"example\", {\n defenseScene: \"waf_group\",\n policyName: `${name}_${_default.result}`,\n policyType: \"custom\",\n status: \"on\",\n});\nconst exampleWafRule = new alicloud.dcdn.WafRule(\"example\", {\n policyId: example.id,\n ruleName: name,\n conditions: [\n {\n key: \"URI\",\n opValue: \"ne\",\n values: \"/login.php\",\n },\n {\n key: \"Header\",\n subKey: \"a\",\n opValue: \"eq\",\n values: \"b\",\n },\n ],\n status: \"on\",\n action: \"monitor\",\n rateLimit: {\n target: \"IP\",\n interval: 5,\n threshold: 5,\n ttl: 1800,\n status: {\n code: \"200\",\n ratio: 60,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.dcdn.WafPolicy(\"example\",\n defense_scene=\"waf_group\",\n policy_name=f\"{name}_{default['result']}\",\n policy_type=\"custom\",\n status=\"on\")\nexample_waf_rule = alicloud.dcdn.WafRule(\"example\",\n policy_id=example.id,\n rule_name=name,\n conditions=[\n {\n \"key\": \"URI\",\n \"op_value\": \"ne\",\n \"values\": \"/login.php\",\n },\n {\n \"key\": \"Header\",\n \"sub_key\": \"a\",\n \"op_value\": \"eq\",\n \"values\": \"b\",\n },\n ],\n status=\"on\",\n action=\"monitor\",\n rate_limit={\n \"target\": \"IP\",\n \"interval\": 5,\n \"threshold\": 5,\n \"ttl\": 1800,\n \"status\": {\n \"code\": \"200\",\n \"ratio\": 60,\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.Dcdn.WafPolicy(\"example\", new()\n {\n DefenseScene = \"waf_group\",\n PolicyName = $\"{name}_{@default.Result}\",\n PolicyType = \"custom\",\n Status = \"on\",\n });\n\n var exampleWafRule = new AliCloud.Dcdn.WafRule(\"example\", new()\n {\n PolicyId = example.Id,\n RuleName = name,\n Conditions = new[]\n {\n new AliCloud.Dcdn.Inputs.WafRuleConditionArgs\n {\n Key = \"URI\",\n OpValue = \"ne\",\n Values = \"/login.php\",\n },\n new AliCloud.Dcdn.Inputs.WafRuleConditionArgs\n {\n Key = \"Header\",\n SubKey = \"a\",\n OpValue = \"eq\",\n Values = \"b\",\n },\n },\n Status = \"on\",\n Action = \"monitor\",\n RateLimit = new AliCloud.Dcdn.Inputs.WafRuleRateLimitArgs\n {\n Target = \"IP\",\n Interval = 5,\n Threshold = 5,\n Ttl = 1800,\n Status = new AliCloud.Dcdn.Inputs.WafRuleRateLimitStatusArgs\n {\n Code = \"200\",\n Ratio = 60,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dcdn\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := dcdn.NewWafPolicy(ctx, \"example\", \u0026dcdn.WafPolicyArgs{\n\t\t\tDefenseScene: pulumi.String(\"waf_group\"),\n\t\t\tPolicyName: pulumi.Sprintf(\"%v_%v\", name, _default.Result),\n\t\t\tPolicyType: pulumi.String(\"custom\"),\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dcdn.NewWafRule(ctx, \"example\", \u0026dcdn.WafRuleArgs{\n\t\t\tPolicyId: example.ID(),\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tConditions: dcdn.WafRuleConditionArray{\n\t\t\t\t\u0026dcdn.WafRuleConditionArgs{\n\t\t\t\t\tKey: pulumi.String(\"URI\"),\n\t\t\t\t\tOpValue: pulumi.String(\"ne\"),\n\t\t\t\t\tValues: pulumi.String(\"/login.php\"),\n\t\t\t\t},\n\t\t\t\t\u0026dcdn.WafRuleConditionArgs{\n\t\t\t\t\tKey: pulumi.String(\"Header\"),\n\t\t\t\t\tSubKey: pulumi.String(\"a\"),\n\t\t\t\t\tOpValue: pulumi.String(\"eq\"),\n\t\t\t\t\tValues: pulumi.String(\"b\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"on\"),\n\t\t\tAction: pulumi.String(\"monitor\"),\n\t\t\tRateLimit: \u0026dcdn.WafRuleRateLimitArgs{\n\t\t\t\tTarget: pulumi.String(\"IP\"),\n\t\t\t\tInterval: pulumi.Int(5),\n\t\t\t\tThreshold: pulumi.Int(5),\n\t\t\t\tTtl: pulumi.Int(1800),\n\t\t\t\tStatus: \u0026dcdn.WafRuleRateLimitStatusArgs{\n\t\t\t\t\tCode: pulumi.String(\"200\"),\n\t\t\t\t\tRatio: pulumi.Int(60),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dcdn.WafPolicy;\nimport com.pulumi.alicloud.dcdn.WafPolicyArgs;\nimport com.pulumi.alicloud.dcdn.WafRule;\nimport com.pulumi.alicloud.dcdn.WafRuleArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleConditionArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleRateLimitArgs;\nimport com.pulumi.alicloud.dcdn.inputs.WafRuleRateLimitStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new WafPolicy(\"example\", WafPolicyArgs.builder()\n .defenseScene(\"waf_group\")\n .policyName(String.format(\"%s_%s\", name,default_.result()))\n .policyType(\"custom\")\n .status(\"on\")\n .build());\n\n var exampleWafRule = new WafRule(\"exampleWafRule\", WafRuleArgs.builder()\n .policyId(example.id())\n .ruleName(name)\n .conditions( \n WafRuleConditionArgs.builder()\n .key(\"URI\")\n .opValue(\"ne\")\n .values(\"/login.php\")\n .build(),\n WafRuleConditionArgs.builder()\n .key(\"Header\")\n .subKey(\"a\")\n .opValue(\"eq\")\n .values(\"b\")\n .build())\n .status(\"on\")\n .action(\"monitor\")\n .rateLimit(WafRuleRateLimitArgs.builder()\n .target(\"IP\")\n .interval(5)\n .threshold(5)\n .ttl(1800)\n .status(WafRuleRateLimitStatusArgs.builder()\n .code(\"200\")\n .ratio(60)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:dcdn:WafPolicy\n properties:\n defenseScene: waf_group\n policyName: ${name}_${default.result}\n policyType: custom\n status: on\n exampleWafRule:\n type: alicloud:dcdn:WafRule\n name: example\n properties:\n policyId: ${example.id}\n ruleName: ${name}\n conditions:\n - key: URI\n opValue: ne\n values: /login.php\n - key: Header\n subKey: a\n opValue: eq\n values: b\n status: on\n action: monitor\n rateLimit:\n target: IP\n interval: '5'\n threshold: '5'\n ttl: '1800'\n status:\n code: '200'\n ratio: '60'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDcdn Waf Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dcdn/wafRule:WafRule example \u003cid\u003e\n```\n\n",
"properties": {
"action": {
"type": "string",
@@ -139220,7 +141849,7 @@
}
},
"alicloud:ddos/basicDefenseThreshold:BasicDefenseThreshold": {
- "description": "Provides a Ddos Basic defense threshold resource.\n\nFor information about Ddos Basic Antiddos and how to use it, see [What is Defense Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/modifydefensethreshold).\n\n\u003e **NOTE:** Available since v1.168.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ecs.EipAddress(\"default\", {\n addressName: name,\n isp: \"BGP\",\n internetChargeType: \"PayByBandwidth\",\n paymentType: \"PayAsYouGo\",\n});\nconst defaultBasicDefenseThreshold = new alicloud.ddos.BasicDefenseThreshold(\"default\", {\n instanceId: _default.id,\n ddosType: \"defense\",\n instanceType: \"eip\",\n bps: 390,\n pps: 90000,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ecs.EipAddress(\"default\",\n address_name=name,\n isp=\"BGP\",\n internet_charge_type=\"PayByBandwidth\",\n payment_type=\"PayAsYouGo\")\ndefault_basic_defense_threshold = alicloud.ddos.BasicDefenseThreshold(\"default\",\n instance_id=default.id,\n ddos_type=\"defense\",\n instance_type=\"eip\",\n bps=390,\n pps=90000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n AddressName = name,\n Isp = \"BGP\",\n InternetChargeType = \"PayByBandwidth\",\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultBasicDefenseThreshold = new AliCloud.Ddos.BasicDefenseThreshold(\"default\", new()\n {\n InstanceId = @default.Id,\n DdosType = \"defense\",\n InstanceType = \"eip\",\n Bps = 390,\n Pps = 90000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewBasicDefenseThreshold(ctx, \"default\", \u0026ddos.BasicDefenseThresholdArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tDdosType: pulumi.String(\"defense\"),\n\t\t\tInstanceType: pulumi.String(\"eip\"),\n\t\t\tBps: pulumi.Int(390),\n\t\t\tPps: pulumi.Int(90000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ddos.BasicDefenseThreshold;\nimport com.pulumi.alicloud.ddos.BasicDefenseThresholdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new EipAddress(\"default\", EipAddressArgs.builder()\n .addressName(name)\n .isp(\"BGP\")\n .internetChargeType(\"PayByBandwidth\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n var defaultBasicDefenseThreshold = new BasicDefenseThreshold(\"defaultBasicDefenseThreshold\", BasicDefenseThresholdArgs.builder()\n .instanceId(default_.id())\n .ddosType(\"defense\")\n .instanceType(\"eip\")\n .bps(390)\n .pps(90000)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ecs:EipAddress\n properties:\n addressName: ${name}\n isp: BGP\n internetChargeType: PayByBandwidth\n paymentType: PayAsYouGo\n defaultBasicDefenseThreshold:\n type: alicloud:ddos:BasicDefenseThreshold\n name: default\n properties:\n instanceId: ${default.id}\n ddosType: defense\n instanceType: eip\n bps: 390\n pps: 90000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdos Basic Antiddos can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/basicDefenseThreshold:BasicDefenseThreshold example \u003cinstance_id\u003e:\u003cinstance_type\u003e:\u003cddos_type\u003e\n```\n\n",
+ "description": "Provides a Ddos Basic defense threshold resource.\n\nFor information about Ddos Basic Antiddos and how to use it, see [What is Defense Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/modifydefensethreshold).\n\n\u003e **NOTE:** Available since v1.168.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ecs.EipAddress(\"default\", {\n addressName: name,\n isp: \"BGP\",\n internetChargeType: \"PayByBandwidth\",\n paymentType: \"PayAsYouGo\",\n});\nconst defaultBasicDefenseThreshold = new alicloud.ddos.BasicDefenseThreshold(\"default\", {\n instanceId: _default.id,\n ddosType: \"defense\",\n instanceType: \"eip\",\n bps: 390,\n pps: 90000,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ecs.EipAddress(\"default\",\n address_name=name,\n isp=\"BGP\",\n internet_charge_type=\"PayByBandwidth\",\n payment_type=\"PayAsYouGo\")\ndefault_basic_defense_threshold = alicloud.ddos.BasicDefenseThreshold(\"default\",\n instance_id=default.id,\n ddos_type=\"defense\",\n instance_type=\"eip\",\n bps=390,\n pps=90000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n AddressName = name,\n Isp = \"BGP\",\n InternetChargeType = \"PayByBandwidth\",\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultBasicDefenseThreshold = new AliCloud.Ddos.BasicDefenseThreshold(\"default\", new()\n {\n InstanceId = @default.Id,\n DdosType = \"defense\",\n InstanceType = \"eip\",\n Bps = 390,\n Pps = 90000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewBasicDefenseThreshold(ctx, \"default\", \u0026ddos.BasicDefenseThresholdArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tDdosType: pulumi.String(\"defense\"),\n\t\t\tInstanceType: pulumi.String(\"eip\"),\n\t\t\tBps: pulumi.Int(390),\n\t\t\tPps: pulumi.Int(90000),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ddos.BasicDefenseThreshold;\nimport com.pulumi.alicloud.ddos.BasicDefenseThresholdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new EipAddress(\"default\", EipAddressArgs.builder()\n .addressName(name)\n .isp(\"BGP\")\n .internetChargeType(\"PayByBandwidth\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n var defaultBasicDefenseThreshold = new BasicDefenseThreshold(\"defaultBasicDefenseThreshold\", BasicDefenseThresholdArgs.builder()\n .instanceId(default_.id())\n .ddosType(\"defense\")\n .instanceType(\"eip\")\n .bps(390)\n .pps(90000)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ecs:EipAddress\n properties:\n addressName: ${name}\n isp: BGP\n internetChargeType: PayByBandwidth\n paymentType: PayAsYouGo\n defaultBasicDefenseThreshold:\n type: alicloud:ddos:BasicDefenseThreshold\n name: default\n properties:\n instanceId: ${default.id}\n ddosType: defense\n instanceType: eip\n bps: 390\n pps: 90000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdos Basic Antiddos can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/basicDefenseThreshold:BasicDefenseThreshold example \u003cinstance_id\u003e:\u003cinstance_type\u003e:\u003cddos_type\u003e\n```\n\n",
"properties": {
"bps": {
"type": "integer",
@@ -139355,7 +141984,7 @@
}
},
"alicloud:ddos/basicThreshold:BasicThreshold": {
- "description": "Provides a Ddos Basic Threshold resource.\n\nFor information about Ddos Basic Threshold and how to use it, see [What is Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/describe-ip-ddosthreshold).\n\n\u003e **NOTE:** Available since v1.183.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst example = new alicloud.ddos.BasicThreshold(\"example\", {\n instanceType: \"ecs\",\n instanceId: defaultInstance.id,\n internetIp: defaultInstance.publicIp,\n bps: 100,\n pps: 60000,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\nexample = alicloud.ddos.BasicThreshold(\"example\",\n instance_type=\"ecs\",\n instance_id=default_instance.id,\n internet_ip=default_instance.public_ip,\n bps=100,\n pps=60000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var example = new AliCloud.Ddos.BasicThreshold(\"example\", new()\n {\n InstanceType = \"ecs\",\n InstanceId = defaultInstance.Id,\n InternetIp = defaultInstance.PublicIp,\n Bps = 100,\n Pps = 60000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Ids[0]),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = ddos.NewBasicThreshold(ctx, \"example\", \u0026ddos.BasicThresholdArgs{\nInstanceType: pulumi.String(\"ecs\"),\nInstanceId: defaultInstance.ID(),\nInternetIp: defaultInstance.PublicIp,\nBps: pulumi.Int(100),\nPps: pulumi.Int(60000),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ddos.BasicThreshold;\nimport com.pulumi.alicloud.ddos.BasicThresholdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(default_.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var example = new BasicThreshold(\"example\", BasicThresholdArgs.builder()\n .instanceType(\"ecs\")\n .instanceId(defaultInstance.id())\n .internetIp(defaultInstance.publicIp())\n .bps(100)\n .pps(60000)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdos Basic Threshold can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/basicThreshold:BasicThreshold example \u003cinstance_type\u003e:\u003cinstance_id\u003e:\u003cinternet_ip\u003e\n```\n\n",
+ "description": "Provides a Ddos Basic Threshold resource.\n\nFor information about Ddos Basic Threshold and how to use it, see [What is Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/describe-ip-ddosthreshold).\n\n\u003e **NOTE:** Available since v1.183.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n});\nconst example = new alicloud.ddos.BasicThreshold(\"example\", {\n instanceType: \"ecs\",\n instanceId: defaultInstance.id,\n internetIp: defaultInstance.publicIp,\n bps: 100,\n pps: 60000,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default.zones[0].id,\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id)\nexample = alicloud.ddos.BasicThreshold(\"example\",\n instance_type=\"ecs\",\n instance_id=default_instance.id,\n internet_ip=default_instance.public_ip,\n bps=100,\n pps=60000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n });\n\n var example = new AliCloud.Ddos.BasicThreshold(\"example\", new()\n {\n InstanceType = \"ecs\",\n InstanceId = defaultInstance.Id,\n InternetIp = defaultInstance.PublicIp,\n Bps = 100,\n Pps = 60000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"tf-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Ids[0]),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = ddos.NewBasicThreshold(ctx, \"example\", \u0026ddos.BasicThresholdArgs{\nInstanceType: pulumi.String(\"ecs\"),\nInstanceId: defaultInstance.ID(),\nInternetIp: defaultInstance.PublicIp,\nBps: pulumi.Int(100),\nPps: pulumi.Int(60000),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ddos.BasicThreshold;\nimport com.pulumi.alicloud.ddos.BasicThresholdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.ids()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(default_.zones()[0].id())\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n var example = new BasicThreshold(\"example\", BasicThresholdArgs.builder()\n .instanceType(\"ecs\")\n .instanceId(defaultInstance.id())\n .internetIp(defaultInstance.publicIp())\n .bps(100)\n .pps(60000)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdos Basic Threshold can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/basicThreshold:BasicThreshold example \u003cinstance_type\u003e:\u003cinstance_id\u003e:\u003cinternet_ip\u003e\n```\n\n",
"properties": {
"bps": {
"type": "integer",
@@ -139466,7 +142095,7 @@
}
},
"alicloud:ddos/bgpIp:BgpIp": {
- "description": "Provides a Anti-DDoS Pro (DdosBgp) Ip resource.\n\n\n\nFor information about Anti-DDoS Pro (DdosBgp) Ip and how to use it, see [What is Ip](https://www.alibabacloud.com/help/en/ddos-protection/latest/addip).\n\n\u003e **NOTE:** Available since v1.180.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultDdosBgpInstance = new alicloud.ddos.DdosBgpInstance(\"default\", {\n name: name,\n baseBandwidth: 20,\n bandwidth: -1,\n ipCount: 100,\n ipType: \"IPv4\",\n normalBandwidth: 100,\n type: \"Enterprise\",\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {addressName: name});\nconst defaultBgpIp = new alicloud.ddos.BgpIp(\"default\", {\n instanceId: defaultDdosBgpInstance.id,\n ip: defaultEipAddress.ipAddress,\n memberUid: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_ddos_bgp_instance = alicloud.ddos.DdosBgpInstance(\"default\",\n name=name,\n base_bandwidth=20,\n bandwidth=-1,\n ip_count=100,\n ip_type=\"IPv4\",\n normal_bandwidth=100,\n type=\"Enterprise\")\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\", address_name=name)\ndefault_bgp_ip = alicloud.ddos.BgpIp(\"default\",\n instance_id=default_ddos_bgp_instance.id,\n ip=default_eip_address.ip_address,\n member_uid=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultDdosBgpInstance = new AliCloud.Ddos.DdosBgpInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = 20,\n Bandwidth = -1,\n IpCount = 100,\n IpType = \"IPv4\",\n NormalBandwidth = 100,\n Type = \"Enterprise\",\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n AddressName = name,\n });\n\n var defaultBgpIp = new AliCloud.Ddos.BgpIp(\"default\", new()\n {\n InstanceId = defaultDdosBgpInstance.Id,\n Ip = defaultEipAddress.IpAddress,\n MemberUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDdosBgpInstance, err := ddos.NewDdosBgpInstance(ctx, \"default\", \u0026ddos.DdosBgpInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.Int(20),\n\t\t\tBandwidth: pulumi.Int(-1),\n\t\t\tIpCount: pulumi.Int(100),\n\t\t\tIpType: pulumi.String(\"IPv4\"),\n\t\t\tNormalBandwidth: pulumi.Int(100),\n\t\t\tType: pulumi.String(\"Enterprise\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewBgpIp(ctx, \"default\", \u0026ddos.BgpIpArgs{\n\t\t\tInstanceId: defaultDdosBgpInstance.ID(),\n\t\t\tIp: defaultEipAddress.IpAddress,\n\t\t\tMemberUid: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ddos.DdosBgpInstance;\nimport com.pulumi.alicloud.ddos.DdosBgpInstanceArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ddos.BgpIp;\nimport com.pulumi.alicloud.ddos.BgpIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultDdosBgpInstance = new DdosBgpInstance(\"defaultDdosBgpInstance\", DdosBgpInstanceArgs.builder()\n .name(name)\n .baseBandwidth(20)\n .bandwidth(-1)\n .ipCount(100)\n .ipType(\"IPv4\")\n .normalBandwidth(100)\n .type(\"Enterprise\")\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var defaultBgpIp = new BgpIp(\"defaultBgpIp\", BgpIpArgs.builder()\n .instanceId(defaultDdosBgpInstance.id())\n .ip(defaultEipAddress.ipAddress())\n .memberUid(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultDdosBgpInstance:\n type: alicloud:ddos:DdosBgpInstance\n name: default\n properties:\n name: ${name}\n baseBandwidth: 20\n bandwidth: -1\n ipCount: 100\n ipType: IPv4\n normalBandwidth: 100\n type: Enterprise\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n addressName: ${name}\n defaultBgpIp:\n type: alicloud:ddos:BgpIp\n name: default\n properties:\n instanceId: ${defaultDdosBgpInstance.id}\n ip: ${defaultEipAddress.ipAddress}\n memberUid: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAnti-DDoS Pro (DdosBgp) Ip can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/bgpIp:BgpIp example \u003cinstance_id\u003e:\u003cip\u003e\n```\n\n",
+ "description": "Provides a Anti-DDoS Pro (DdosBgp) Ip resource.\n\n\n\nFor information about Anti-DDoS Pro (DdosBgp) Ip and how to use it, see [What is Ip](https://www.alibabacloud.com/help/en/ddos-protection/latest/addip).\n\n\u003e **NOTE:** Available since v1.180.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getAccount({});\nconst defaultDdosBgpInstance = new alicloud.ddos.DdosBgpInstance(\"default\", {\n name: name,\n baseBandwidth: 20,\n bandwidth: -1,\n ipCount: 100,\n ipType: \"IPv4\",\n normalBandwidth: 100,\n type: \"Enterprise\",\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {addressName: name});\nconst defaultBgpIp = new alicloud.ddos.BgpIp(\"default\", {\n instanceId: defaultDdosBgpInstance.id,\n ip: defaultEipAddress.ipAddress,\n memberUid: _default.then(_default =\u003e _default.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_account()\ndefault_ddos_bgp_instance = alicloud.ddos.DdosBgpInstance(\"default\",\n name=name,\n base_bandwidth=20,\n bandwidth=-1,\n ip_count=100,\n ip_type=\"IPv4\",\n normal_bandwidth=100,\n type=\"Enterprise\")\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\", address_name=name)\ndefault_bgp_ip = alicloud.ddos.BgpIp(\"default\",\n instance_id=default_ddos_bgp_instance.id,\n ip=default_eip_address.ip_address,\n member_uid=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetAccount.Invoke();\n\n var defaultDdosBgpInstance = new AliCloud.Ddos.DdosBgpInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = 20,\n Bandwidth = -1,\n IpCount = 100,\n IpType = \"IPv4\",\n NormalBandwidth = 100,\n Type = \"Enterprise\",\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n AddressName = name,\n });\n\n var defaultBgpIp = new AliCloud.Ddos.BgpIp(\"default\", new()\n {\n InstanceId = defaultDdosBgpInstance.Id,\n Ip = defaultEipAddress.IpAddress,\n MemberUid = @default.Apply(@default =\u003e @default.Apply(getAccountResult =\u003e getAccountResult.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDdosBgpInstance, err := ddos.NewDdosBgpInstance(ctx, \"default\", \u0026ddos.DdosBgpInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.Int(20),\n\t\t\tBandwidth: pulumi.Int(-1),\n\t\t\tIpCount: pulumi.Int(100),\n\t\t\tIpType: pulumi.String(\"IPv4\"),\n\t\t\tNormalBandwidth: pulumi.Int(100),\n\t\t\tType: pulumi.String(\"Enterprise\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewBgpIp(ctx, \"default\", \u0026ddos.BgpIpArgs{\n\t\t\tInstanceId: defaultDdosBgpInstance.ID(),\n\t\t\tIp: defaultEipAddress.IpAddress,\n\t\t\tMemberUid: pulumi.String(_default.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ddos.DdosBgpInstance;\nimport com.pulumi.alicloud.ddos.DdosBgpInstanceArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ddos.BgpIp;\nimport com.pulumi.alicloud.ddos.BgpIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultDdosBgpInstance = new DdosBgpInstance(\"defaultDdosBgpInstance\", DdosBgpInstanceArgs.builder()\n .name(name)\n .baseBandwidth(20)\n .bandwidth(-1)\n .ipCount(100)\n .ipType(\"IPv4\")\n .normalBandwidth(100)\n .type(\"Enterprise\")\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var defaultBgpIp = new BgpIp(\"defaultBgpIp\", BgpIpArgs.builder()\n .instanceId(defaultDdosBgpInstance.id())\n .ip(defaultEipAddress.ipAddress())\n .memberUid(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultDdosBgpInstance:\n type: alicloud:ddos:DdosBgpInstance\n name: default\n properties:\n name: ${name}\n baseBandwidth: 20\n bandwidth: -1\n ipCount: 100\n ipType: IPv4\n normalBandwidth: 100\n type: Enterprise\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n addressName: ${name}\n defaultBgpIp:\n type: alicloud:ddos:BgpIp\n name: default\n properties:\n instanceId: ${defaultDdosBgpInstance.id}\n ip: ${defaultEipAddress.ipAddress}\n memberUid: ${default.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAnti-DDoS Pro (DdosBgp) Ip can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/bgpIp:BgpIp example \u003cinstance_id\u003e:\u003cip\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -139554,7 +142183,7 @@
}
},
"alicloud:ddos/bgpPolicy:BgpPolicy": {
- "description": "Provides a Ddos Bgp Policy resource.\n\nDdos protection policy.\n\nFor information about Ddos Bgp Policy and how to use it, see [What is Policy](https://www.alibabacloud.com/help/en/anti-ddos/anti-ddos-origin/developer-reference/api-ddosbgp-2018-07-20-createpolicy).\n\n\u003e **NOTE:** Available since v1.226.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_exampleacc_bgp32594\";\nconst policyName = config.get(\"policyName\") || \"example_l4_policy\";\nconst _default = new alicloud.ddos.BgpPolicy(\"default\", {\n content: {\n enableDefense: false,\n layer4RuleLists: [{\n method: \"hex\",\n match: \"1\",\n action: \"1\",\n limited: 0,\n conditionLists: [{\n arg: \"3C\",\n position: 1,\n depth: 2,\n }],\n name: \"11\",\n priority: 10,\n }],\n },\n type: \"l4\",\n policyName: \"tf_exampleacc_bgp32594\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_exampleacc_bgp32594\"\npolicy_name = config.get(\"policyName\")\nif policy_name is None:\n policy_name = \"example_l4_policy\"\ndefault = alicloud.ddos.BgpPolicy(\"default\",\n content={\n \"enable_defense\": False,\n \"layer4_rule_lists\": [{\n \"method\": \"hex\",\n \"match\": \"1\",\n \"action\": \"1\",\n \"limited\": 0,\n \"condition_lists\": [{\n \"arg\": \"3C\",\n \"position\": 1,\n \"depth\": 2,\n }],\n \"name\": \"11\",\n \"priority\": 10,\n }],\n },\n type=\"l4\",\n policy_name=\"tf_exampleacc_bgp32594\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_exampleacc_bgp32594\";\n var policyName = config.Get(\"policyName\") ?? \"example_l4_policy\";\n var @default = new AliCloud.Ddos.BgpPolicy(\"default\", new()\n {\n Content = new AliCloud.Ddos.Inputs.BgpPolicyContentArgs\n {\n EnableDefense = false,\n Layer4RuleLists = new[]\n {\n new AliCloud.Ddos.Inputs.BgpPolicyContentLayer4RuleListArgs\n {\n Method = \"hex\",\n Match = \"1\",\n Action = \"1\",\n Limited = 0,\n ConditionLists = new[]\n {\n new AliCloud.Ddos.Inputs.BgpPolicyContentLayer4RuleListConditionListArgs\n {\n Arg = \"3C\",\n Position = 1,\n Depth = 2,\n },\n },\n Name = \"11\",\n Priority = 10,\n },\n },\n },\n Type = \"l4\",\n PolicyName = \"tf_exampleacc_bgp32594\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_exampleacc_bgp32594\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tpolicyName := \"example_l4_policy\"\n\t\tif param := cfg.Get(\"policyName\"); param != \"\" {\n\t\t\tpolicyName = param\n\t\t}\n\t\t_, err := ddos.NewBgpPolicy(ctx, \"default\", \u0026ddos.BgpPolicyArgs{\n\t\t\tContent: \u0026ddos.BgpPolicyContentArgs{\n\t\t\t\tEnableDefense: pulumi.Bool(false),\n\t\t\t\tLayer4RuleLists: ddos.BgpPolicyContentLayer4RuleListArray{\n\t\t\t\t\t\u0026ddos.BgpPolicyContentLayer4RuleListArgs{\n\t\t\t\t\t\tMethod: pulumi.String(\"hex\"),\n\t\t\t\t\t\tMatch: pulumi.String(\"1\"),\n\t\t\t\t\t\tAction: pulumi.String(\"1\"),\n\t\t\t\t\t\tLimited: pulumi.Int(0),\n\t\t\t\t\t\tConditionLists: ddos.BgpPolicyContentLayer4RuleListConditionListArray{\n\t\t\t\t\t\t\t\u0026ddos.BgpPolicyContentLayer4RuleListConditionListArgs{\n\t\t\t\t\t\t\t\tArg: pulumi.String(\"3C\"),\n\t\t\t\t\t\t\t\tPosition: pulumi.Int(1),\n\t\t\t\t\t\t\t\tDepth: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"11\"),\n\t\t\t\t\t\tPriority: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tType: pulumi.String(\"l4\"),\n\t\t\tPolicyName: pulumi.String(\"tf_exampleacc_bgp32594\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.BgpPolicy;\nimport com.pulumi.alicloud.ddos.BgpPolicyArgs;\nimport com.pulumi.alicloud.ddos.inputs.BgpPolicyContentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_exampleacc_bgp32594\");\n final var policyName = config.get(\"policyName\").orElse(\"example_l4_policy\");\n var default_ = new BgpPolicy(\"default\", BgpPolicyArgs.builder()\n .content(BgpPolicyContentArgs.builder()\n .enableDefense(false)\n .layer4RuleLists(BgpPolicyContentLayer4RuleListArgs.builder()\n .method(\"hex\")\n .match(\"1\")\n .action(\"1\")\n .limited(0)\n .conditionLists(BgpPolicyContentLayer4RuleListConditionListArgs.builder()\n .arg(\"3C\")\n .position(1)\n .depth(2)\n .build())\n .name(\"11\")\n .priority(10)\n .build())\n .build())\n .type(\"l4\")\n .policyName(\"tf_exampleacc_bgp32594\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_exampleacc_bgp32594\n policyName:\n type: string\n default: example_l4_policy\nresources:\n default:\n type: alicloud:ddos:BgpPolicy\n properties:\n content:\n enableDefense: 'false'\n layer4RuleLists:\n - method: hex\n match: '1'\n action: '1'\n limited: '0'\n conditionLists:\n - arg: 3C\n position: '1'\n depth: '2'\n name: '11'\n priority: '10'\n type: l4\n policyName: tf_exampleacc_bgp32594\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdos Bgp Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/bgpPolicy:BgpPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Ddos Bgp Policy resource.\n\nDdos protection policy.\n\nFor information about Ddos Bgp Policy and how to use it, see [What is Policy](https://www.alibabacloud.com/help/en/anti-ddos/anti-ddos-origin/developer-reference/api-ddosbgp-2018-07-20-createpolicy).\n\n\u003e **NOTE:** Available since v1.226.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_exampleacc_bgp32594\";\nconst policyName = config.get(\"policyName\") || \"example_l4_policy\";\nconst _default = new alicloud.ddos.BgpPolicy(\"default\", {\n content: {\n enableDefense: false,\n layer4RuleLists: [{\n method: \"hex\",\n match: \"1\",\n action: \"1\",\n limited: 0,\n conditionLists: [{\n arg: \"3C\",\n position: 1,\n depth: 2,\n }],\n name: \"11\",\n priority: 10,\n }],\n },\n type: \"l4\",\n policyName: \"tf_exampleacc_bgp32594\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_exampleacc_bgp32594\"\npolicy_name = config.get(\"policyName\")\nif policy_name is None:\n policy_name = \"example_l4_policy\"\ndefault = alicloud.ddos.BgpPolicy(\"default\",\n content={\n \"enable_defense\": False,\n \"layer4_rule_lists\": [{\n \"method\": \"hex\",\n \"match\": \"1\",\n \"action\": \"1\",\n \"limited\": 0,\n \"condition_lists\": [{\n \"arg\": \"3C\",\n \"position\": 1,\n \"depth\": 2,\n }],\n \"name\": \"11\",\n \"priority\": 10,\n }],\n },\n type=\"l4\",\n policy_name=\"tf_exampleacc_bgp32594\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_exampleacc_bgp32594\";\n var policyName = config.Get(\"policyName\") ?? \"example_l4_policy\";\n var @default = new AliCloud.Ddos.BgpPolicy(\"default\", new()\n {\n Content = new AliCloud.Ddos.Inputs.BgpPolicyContentArgs\n {\n EnableDefense = false,\n Layer4RuleLists = new[]\n {\n new AliCloud.Ddos.Inputs.BgpPolicyContentLayer4RuleListArgs\n {\n Method = \"hex\",\n Match = \"1\",\n Action = \"1\",\n Limited = 0,\n ConditionLists = new[]\n {\n new AliCloud.Ddos.Inputs.BgpPolicyContentLayer4RuleListConditionListArgs\n {\n Arg = \"3C\",\n Position = 1,\n Depth = 2,\n },\n },\n Name = \"11\",\n Priority = 10,\n },\n },\n },\n Type = \"l4\",\n PolicyName = \"tf_exampleacc_bgp32594\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_exampleacc_bgp32594\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tpolicyName := \"example_l4_policy\"\n\t\tif param := cfg.Get(\"policyName\"); param != \"\" {\n\t\t\tpolicyName = param\n\t\t}\n\t\t_, err := ddos.NewBgpPolicy(ctx, \"default\", \u0026ddos.BgpPolicyArgs{\n\t\t\tContent: \u0026ddos.BgpPolicyContentArgs{\n\t\t\t\tEnableDefense: pulumi.Bool(false),\n\t\t\t\tLayer4RuleLists: ddos.BgpPolicyContentLayer4RuleListArray{\n\t\t\t\t\t\u0026ddos.BgpPolicyContentLayer4RuleListArgs{\n\t\t\t\t\t\tMethod: pulumi.String(\"hex\"),\n\t\t\t\t\t\tMatch: pulumi.String(\"1\"),\n\t\t\t\t\t\tAction: pulumi.String(\"1\"),\n\t\t\t\t\t\tLimited: pulumi.Int(0),\n\t\t\t\t\t\tConditionLists: ddos.BgpPolicyContentLayer4RuleListConditionListArray{\n\t\t\t\t\t\t\t\u0026ddos.BgpPolicyContentLayer4RuleListConditionListArgs{\n\t\t\t\t\t\t\t\tArg: pulumi.String(\"3C\"),\n\t\t\t\t\t\t\t\tPosition: pulumi.Int(1),\n\t\t\t\t\t\t\t\tDepth: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"11\"),\n\t\t\t\t\t\tPriority: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tType: pulumi.String(\"l4\"),\n\t\t\tPolicyName: pulumi.String(\"tf_exampleacc_bgp32594\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.BgpPolicy;\nimport com.pulumi.alicloud.ddos.BgpPolicyArgs;\nimport com.pulumi.alicloud.ddos.inputs.BgpPolicyContentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_exampleacc_bgp32594\");\n final var policyName = config.get(\"policyName\").orElse(\"example_l4_policy\");\n var default_ = new BgpPolicy(\"default\", BgpPolicyArgs.builder()\n .content(BgpPolicyContentArgs.builder()\n .enableDefense(false)\n .layer4RuleLists(BgpPolicyContentLayer4RuleListArgs.builder()\n .method(\"hex\")\n .match(\"1\")\n .action(\"1\")\n .limited(0)\n .conditionLists(BgpPolicyContentLayer4RuleListConditionListArgs.builder()\n .arg(\"3C\")\n .position(1)\n .depth(2)\n .build())\n .name(\"11\")\n .priority(10)\n .build())\n .build())\n .type(\"l4\")\n .policyName(\"tf_exampleacc_bgp32594\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_exampleacc_bgp32594\n policyName:\n type: string\n default: example_l4_policy\nresources:\n default:\n type: alicloud:ddos:BgpPolicy\n properties:\n content:\n enableDefense: 'false'\n layer4RuleLists:\n - method: hex\n match: '1'\n action: '1'\n limited: '0'\n conditionLists:\n - arg: 3C\n position: '1'\n depth: '2'\n name: '11'\n priority: '10'\n type: l4\n policyName: tf_exampleacc_bgp32594\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdos Bgp Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/bgpPolicy:BgpPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"content": {
"$ref": "#/types/alicloud:ddos/BgpPolicyContent:BgpPolicyContent",
@@ -139813,7 +142442,7 @@
]
},
"alicloud:ddos/ddosCooInstance:DdosCooInstance": {
- "description": "Provides a BGP-line Anti-DDoS Pro(DdosCoo) Instance resource.\n\nFor information about BGP-line Anti-DDoS Pro(DdosCoo) Instance and how to use it, see [What is Anti-DDoS Pro Instance](https://www.alibabacloud.com/help/en/ddos-protection/latest/create-an-anti-ddos-pro-or-anti-ddos-premium-instance-by-calling-an-api-operation).\n\n\u003e **NOTE:** Available since v1.37.0.\n\n\u003e **NOTE:** The endpoint of bssopenapi used only support \"business.aliyuncs.com\" at present.\n\n\u003e **NOTE:** From version 1.214.0, if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`ddoscoo`\" pulumi-lang-dotnet=\"`Ddoscoo`\" pulumi-lang-go=\"`ddoscoo`\" pulumi-lang-python=\"`ddoscoo`\" pulumi-lang-yaml=\"`ddoscoo`\" pulumi-lang-java=\"`ddoscoo`\"\u003e`ddoscoo`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ddoscooIntl`\" pulumi-lang-dotnet=\"`DdoscooIntl`\" pulumi-lang-go=\"`ddoscooIntl`\" pulumi-lang-python=\"`ddoscoo_intl`\" pulumi-lang-yaml=\"`ddoscooIntl`\" pulumi-lang-java=\"`ddoscooIntl`\"\u003e`ddoscoo_intl`\u003c/span\u003e, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `cn-hangzhou`, and if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to `ddosDip`, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `ap-southeast-1`.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n baseBandwidth: \"30\",\n bandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n productType: \"ddoscoo\",\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n base_bandwidth=\"30\",\n bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n product_type=\"ddoscoo\",\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = \"30\",\n Bandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n ProductType = \"ddoscoo\",\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .baseBandwidth(\"30\")\n .bandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .productType(\"ddoscoo\")\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n baseBandwidth: '30'\n bandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n productType: ddoscoo\n period: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdosCoo Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/ddosCooInstance:DdosCooInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a BGP-line Anti-DDoS Pro(DdosCoo) Instance resource.\n\nFor information about BGP-line Anti-DDoS Pro(DdosCoo) Instance and how to use it, see [What is Anti-DDoS Pro Instance](https://www.alibabacloud.com/help/en/ddos-protection/latest/create-an-anti-ddos-pro-or-anti-ddos-premium-instance-by-calling-an-api-operation).\n\n\u003e **NOTE:** Available since v1.37.0.\n\n\u003e **NOTE:** The endpoint of bssopenapi used only support \"business.aliyuncs.com\" at present.\n\n\u003e **NOTE:** From version 1.214.0, if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`ddoscoo`\" pulumi-lang-dotnet=\"`Ddoscoo`\" pulumi-lang-go=\"`ddoscoo`\" pulumi-lang-python=\"`ddoscoo`\" pulumi-lang-yaml=\"`ddoscoo`\" pulumi-lang-java=\"`ddoscoo`\"\u003e`ddoscoo`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ddoscooIntl`\" pulumi-lang-dotnet=\"`DdoscooIntl`\" pulumi-lang-go=\"`ddoscooIntl`\" pulumi-lang-python=\"`ddoscoo_intl`\" pulumi-lang-yaml=\"`ddoscooIntl`\" pulumi-lang-java=\"`ddoscooIntl`\"\u003e`ddoscoo_intl`\u003c/span\u003e, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `cn-hangzhou`, and if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to `ddosDip`, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `ap-southeast-1`.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n baseBandwidth: \"30\",\n bandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n productType: \"ddoscoo\",\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n base_bandwidth=\"30\",\n bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n product_type=\"ddoscoo\",\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = \"30\",\n Bandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n ProductType = \"ddoscoo\",\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .baseBandwidth(\"30\")\n .bandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .productType(\"ddoscoo\")\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n baseBandwidth: '30'\n bandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n productType: ddoscoo\n period: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdosCoo Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/ddosCooInstance:DdosCooInstance example \u003cid\u003e\n```\n\n",
"properties": {
"addressType": {
"type": "string",
@@ -140093,7 +142722,7 @@
]
},
"alicloud:ddos/domainResource:DomainResource": {
- "description": "Provides a Ddos Coo Domain Resource resource.\n\n\n\nFor information about Ddos Coo Domain Resource and how to use it, see [What is Domain Resource](https://www.alibabacloud.com/help/en/anti-ddos/anti-ddos-pro-and-premium/developer-reference/api-ddoscoo-2020-01-01-createdomainresource).\n\n\u003e **NOTE:** Available since v1.123.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst domain = config.get(\"domain\") || \"tf-example.alibaba.com\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n bandwidth: \"30\",\n baseBandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n period: 1,\n productType: \"ddoscoo\",\n});\nconst defaultDomainResource = new alicloud.ddos.DomainResource(\"default\", {\n domain: domain,\n rsType: 0,\n instanceIds: [_default.id],\n realServers: [\"177.167.32.11\"],\n httpsExt: ` {\n \\\\\"Http2\\\\\": 1,\n \\\\\"Http2https\\\\\": 0,\n \\\\\"Https2http\\\\\": 0\n }\n`,\n proxyTypes: [{\n proxyPorts: [443],\n proxyType: \"https\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndomain = config.get(\"domain\")\nif domain is None:\n domain = \"tf-example.alibaba.com\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n bandwidth=\"30\",\n base_bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n period=1,\n product_type=\"ddoscoo\")\ndefault_domain_resource = alicloud.ddos.DomainResource(\"default\",\n domain=domain,\n rs_type=0,\n instance_ids=[default.id],\n real_servers=[\"177.167.32.11\"],\n https_ext=\"\"\" {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n\"\"\",\n proxy_types=[{\n \"proxy_ports\": [443],\n \"proxy_type\": \"https\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var domain = config.Get(\"domain\") ?? \"tf-example.alibaba.com\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n Bandwidth = \"30\",\n BaseBandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n Period = 1,\n ProductType = \"ddoscoo\",\n });\n\n var defaultDomainResource = new AliCloud.Ddos.DomainResource(\"default\", new()\n {\n Domain = domain,\n RsType = 0,\n InstanceIds = new[]\n {\n @default.Id,\n },\n RealServers = new[]\n {\n \"177.167.32.11\",\n },\n HttpsExt = @\" {\n \\\"\"Http2\\\"\": 1,\n \\\"\"Http2https\\\"\": 0,\n \\\"\"Https2http\\\"\": 0\n }\n\",\n ProxyTypes = new[]\n {\n new AliCloud.Ddos.Inputs.DomainResourceProxyTypeArgs\n {\n ProxyPorts = new[]\n {\n 443,\n },\n ProxyType = \"https\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomain := \"tf-example.alibaba.com\"\n\t\tif param := cfg.Get(\"domain\"); param != \"\" {\n\t\t\tdomain = param\n\t\t}\n\t\t_default, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewDomainResource(ctx, \"default\", \u0026ddos.DomainResourceArgs{\n\t\t\tDomain: pulumi.String(domain),\n\t\t\tRsType: pulumi.Int(0),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t\tRealServers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"177.167.32.11\"),\n\t\t\t},\n\t\t\tHttpsExt: pulumi.String(` {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n`),\n\t\t\tProxyTypes: ddos.DomainResourceProxyTypeArray{\n\t\t\t\t\u0026ddos.DomainResourceProxyTypeArgs{\n\t\t\t\t\tProxyPorts: pulumi.IntArray{\n\t\t\t\t\t\tpulumi.Int(443),\n\t\t\t\t\t},\n\t\t\t\t\tProxyType: pulumi.String(\"https\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport com.pulumi.alicloud.ddos.DomainResource;\nimport com.pulumi.alicloud.ddos.DomainResourceArgs;\nimport com.pulumi.alicloud.ddos.inputs.DomainResourceProxyTypeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var domain = config.get(\"domain\").orElse(\"tf-example.alibaba.com\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .bandwidth(\"30\")\n .baseBandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .period(1)\n .productType(\"ddoscoo\")\n .build());\n\n var defaultDomainResource = new DomainResource(\"defaultDomainResource\", DomainResourceArgs.builder()\n .domain(domain)\n .rsType(0)\n .instanceIds(default_.id())\n .realServers(\"177.167.32.11\")\n .httpsExt(\"\"\"\n {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n \"\"\")\n .proxyTypes(DomainResourceProxyTypeArgs.builder()\n .proxyPorts(443)\n .proxyType(\"https\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n domain:\n type: string\n default: tf-example.alibaba.com\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n bandwidth: '30'\n baseBandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n period: '1'\n productType: ddoscoo\n defaultDomainResource:\n type: alicloud:ddos:DomainResource\n name: default\n properties:\n domain: ${domain}\n rsType: 0\n instanceIds:\n - ${default.id}\n realServers:\n - 177.167.32.11\n httpsExt: |2\n {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n proxyTypes:\n - proxyPorts:\n - 443\n proxyType: https\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdos Coo Domain Resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/domainResource:DomainResource example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Ddos Coo Domain Resource resource.\n\n\n\nFor information about Ddos Coo Domain Resource and how to use it, see [What is Domain Resource](https://www.alibabacloud.com/help/en/anti-ddos/anti-ddos-pro-and-premium/developer-reference/api-ddoscoo-2020-01-01-createdomainresource).\n\n\u003e **NOTE:** Available since v1.123.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst domain = config.get(\"domain\") || \"tf-example.alibaba.com\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n bandwidth: \"30\",\n baseBandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n period: 1,\n productType: \"ddoscoo\",\n});\nconst defaultDomainResource = new alicloud.ddos.DomainResource(\"default\", {\n domain: domain,\n rsType: 0,\n instanceIds: [_default.id],\n realServers: [\"177.167.32.11\"],\n httpsExt: ` {\n \\\\\"Http2\\\\\": 1,\n \\\\\"Http2https\\\\\": 0,\n \\\\\"Https2http\\\\\": 0\n }\n`,\n proxyTypes: [{\n proxyPorts: [443],\n proxyType: \"https\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndomain = config.get(\"domain\")\nif domain is None:\n domain = \"tf-example.alibaba.com\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n bandwidth=\"30\",\n base_bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n period=1,\n product_type=\"ddoscoo\")\ndefault_domain_resource = alicloud.ddos.DomainResource(\"default\",\n domain=domain,\n rs_type=0,\n instance_ids=[default.id],\n real_servers=[\"177.167.32.11\"],\n https_ext=\"\"\" {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n\"\"\",\n proxy_types=[{\n \"proxy_ports\": [443],\n \"proxy_type\": \"https\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var domain = config.Get(\"domain\") ?? \"tf-example.alibaba.com\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n Bandwidth = \"30\",\n BaseBandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n Period = 1,\n ProductType = \"ddoscoo\",\n });\n\n var defaultDomainResource = new AliCloud.Ddos.DomainResource(\"default\", new()\n {\n Domain = domain,\n RsType = 0,\n InstanceIds = new[]\n {\n @default.Id,\n },\n RealServers = new[]\n {\n \"177.167.32.11\",\n },\n HttpsExt = @\" {\n \\\"\"Http2\\\"\": 1,\n \\\"\"Http2https\\\"\": 0,\n \\\"\"Https2http\\\"\": 0\n }\n\",\n ProxyTypes = new[]\n {\n new AliCloud.Ddos.Inputs.DomainResourceProxyTypeArgs\n {\n ProxyPorts = new[]\n {\n 443,\n },\n ProxyType = \"https\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomain := \"tf-example.alibaba.com\"\n\t\tif param := cfg.Get(\"domain\"); param != \"\" {\n\t\t\tdomain = param\n\t\t}\n\t\t_default, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewDomainResource(ctx, \"default\", \u0026ddos.DomainResourceArgs{\n\t\t\tDomain: pulumi.String(domain),\n\t\t\tRsType: pulumi.Int(0),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\t_default.ID(),\n\t\t\t},\n\t\t\tRealServers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"177.167.32.11\"),\n\t\t\t},\n\t\t\tHttpsExt: pulumi.String(` {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n`),\n\t\t\tProxyTypes: ddos.DomainResourceProxyTypeArray{\n\t\t\t\t\u0026ddos.DomainResourceProxyTypeArgs{\n\t\t\t\t\tProxyPorts: pulumi.IntArray{\n\t\t\t\t\t\tpulumi.Int(443),\n\t\t\t\t\t},\n\t\t\t\t\tProxyType: pulumi.String(\"https\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport com.pulumi.alicloud.ddos.DomainResource;\nimport com.pulumi.alicloud.ddos.DomainResourceArgs;\nimport com.pulumi.alicloud.ddos.inputs.DomainResourceProxyTypeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var domain = config.get(\"domain\").orElse(\"tf-example.alibaba.com\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .bandwidth(\"30\")\n .baseBandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .period(1)\n .productType(\"ddoscoo\")\n .build());\n\n var defaultDomainResource = new DomainResource(\"defaultDomainResource\", DomainResourceArgs.builder()\n .domain(domain)\n .rsType(0)\n .instanceIds(default_.id())\n .realServers(\"177.167.32.11\")\n .httpsExt(\"\"\"\n {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n \"\"\")\n .proxyTypes(DomainResourceProxyTypeArgs.builder()\n .proxyPorts(443)\n .proxyType(\"https\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\n domain:\n type: string\n default: tf-example.alibaba.com\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n bandwidth: '30'\n baseBandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n period: '1'\n productType: ddoscoo\n defaultDomainResource:\n type: alicloud:ddos:DomainResource\n name: default\n properties:\n domain: ${domain}\n rsType: 0\n instanceIds:\n - ${default.id}\n realServers:\n - 177.167.32.11\n httpsExt: |2\n {\n \\\"Http2\\\": 1,\n \\\"Http2https\\\": 0,\n \\\"Https2http\\\": 0\n }\n proxyTypes:\n - proxyPorts:\n - 443\n proxyType: https\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdos Coo Domain Resource can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/domainResource:DomainResource example \u003cid\u003e\n```\n\n",
"properties": {
"cert": {
"type": "string",
@@ -140326,7 +142955,7 @@
}
},
"alicloud:ddos/port:Port": {
- "description": "Provides a Ddos Coo Port resource.\n\n\nFor information about Anti-DDoS Pro Port and how to use it, see [What is Port](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createport).\n\n\u003e **NOTE:** Available since v1.123.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n bandwidth: \"30\",\n baseBandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n period: 1,\n productType: \"ddoscoo\",\n});\nconst defaultPort = new alicloud.ddos.Port(\"default\", {\n instanceId: _default.id,\n frontendPort: \"7001\",\n backendPort: \"7002\",\n frontendProtocol: \"tcp\",\n realServers: [\n \"1.1.1.1\",\n \"2.2.2.2\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n bandwidth=\"30\",\n base_bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n period=1,\n product_type=\"ddoscoo\")\ndefault_port = alicloud.ddos.Port(\"default\",\n instance_id=default.id,\n frontend_port=\"7001\",\n backend_port=\"7002\",\n frontend_protocol=\"tcp\",\n real_servers=[\n \"1.1.1.1\",\n \"2.2.2.2\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n Bandwidth = \"30\",\n BaseBandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n Period = 1,\n ProductType = \"ddoscoo\",\n });\n\n var defaultPort = new AliCloud.Ddos.Port(\"default\", new()\n {\n InstanceId = @default.Id,\n FrontendPort = \"7001\",\n BackendPort = \"7002\",\n FrontendProtocol = \"tcp\",\n RealServers = new[]\n {\n \"1.1.1.1\",\n \"2.2.2.2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewPort(ctx, \"default\", \u0026ddos.PortArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tFrontendPort: pulumi.String(\"7001\"),\n\t\t\tBackendPort: pulumi.String(\"7002\"),\n\t\t\tFrontendProtocol: pulumi.String(\"tcp\"),\n\t\t\tRealServers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1.1.1.1\"),\n\t\t\t\tpulumi.String(\"2.2.2.2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport com.pulumi.alicloud.ddos.Port;\nimport com.pulumi.alicloud.ddos.PortArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .bandwidth(\"30\")\n .baseBandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .period(1)\n .productType(\"ddoscoo\")\n .build());\n\n var defaultPort = new Port(\"defaultPort\", PortArgs.builder()\n .instanceId(default_.id())\n .frontendPort(\"7001\")\n .backendPort(\"7002\")\n .frontendProtocol(\"tcp\")\n .realServers( \n \"1.1.1.1\",\n \"2.2.2.2\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n bandwidth: '30'\n baseBandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n period: '1'\n productType: ddoscoo\n defaultPort:\n type: alicloud:ddos:Port\n name: default\n properties:\n instanceId: ${default.id}\n frontendPort: '7001'\n backendPort: '7002'\n frontendProtocol: tcp\n realServers:\n - 1.1.1.1\n - 2.2.2.2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdos Coo Port can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/port:Port example \u003cinstance_id\u003e:\u003cfrontend_port\u003e:\u003cfrontend_protocol\u003e\n```\n\n",
+ "description": "Provides a Ddos Coo Port resource.\n\n\nFor information about Anti-DDoS Pro Port and how to use it, see [What is Port](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createport).\n\n\u003e **NOTE:** Available since v1.123.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n bandwidth: \"30\",\n baseBandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n period: 1,\n productType: \"ddoscoo\",\n});\nconst defaultPort = new alicloud.ddos.Port(\"default\", {\n instanceId: _default.id,\n frontendPort: \"7001\",\n backendPort: \"7002\",\n frontendProtocol: \"tcp\",\n realServers: [\n \"1.1.1.1\",\n \"2.2.2.2\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n bandwidth=\"30\",\n base_bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n period=1,\n product_type=\"ddoscoo\")\ndefault_port = alicloud.ddos.Port(\"default\",\n instance_id=default.id,\n frontend_port=\"7001\",\n backend_port=\"7002\",\n frontend_protocol=\"tcp\",\n real_servers=[\n \"1.1.1.1\",\n \"2.2.2.2\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n Bandwidth = \"30\",\n BaseBandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n Period = 1,\n ProductType = \"ddoscoo\",\n });\n\n var defaultPort = new AliCloud.Ddos.Port(\"default\", new()\n {\n InstanceId = @default.Id,\n FrontendPort = \"7001\",\n BackendPort = \"7002\",\n FrontendProtocol = \"tcp\",\n RealServers = new[]\n {\n \"1.1.1.1\",\n \"2.2.2.2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ddos.NewPort(ctx, \"default\", \u0026ddos.PortArgs{\n\t\t\tInstanceId: _default.ID(),\n\t\t\tFrontendPort: pulumi.String(\"7001\"),\n\t\t\tBackendPort: pulumi.String(\"7002\"),\n\t\t\tFrontendProtocol: pulumi.String(\"tcp\"),\n\t\t\tRealServers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1.1.1.1\"),\n\t\t\t\tpulumi.String(\"2.2.2.2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport com.pulumi.alicloud.ddos.Port;\nimport com.pulumi.alicloud.ddos.PortArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .bandwidth(\"30\")\n .baseBandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .period(1)\n .productType(\"ddoscoo\")\n .build());\n\n var defaultPort = new Port(\"defaultPort\", PortArgs.builder()\n .instanceId(default_.id())\n .frontendPort(\"7001\")\n .backendPort(\"7002\")\n .frontendProtocol(\"tcp\")\n .realServers( \n \"1.1.1.1\",\n \"2.2.2.2\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n bandwidth: '30'\n baseBandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n period: '1'\n productType: ddoscoo\n defaultPort:\n type: alicloud:ddos:Port\n name: default\n properties:\n instanceId: ${default.id}\n frontendPort: '7001'\n backendPort: '7002'\n frontendProtocol: tcp\n realServers:\n - 1.1.1.1\n - 2.2.2.2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdos Coo Port can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/port:Port example \u003cinstance_id\u003e:\u003cfrontend_port\u003e:\u003cfrontend_protocol\u003e\n```\n\n",
"properties": {
"backendPort": {
"type": "string",
@@ -140441,7 +143070,7 @@
}
},
"alicloud:ddos/schedulerRule:SchedulerRule": {
- "description": "Provides a DdosCoo Scheduler Rule resource. For information about DdosCoo Scheduler Rule and how to use it, see[What is DdosCoo Scheduler Rule](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createschedulerrule).\n\n\u003e **NOTE:** Available since v1.86.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.ddos.SchedulerRule(\"example\", {\n ruleName: name,\n ruleType: 3,\n rules: [\n {\n priority: 100,\n regionId: \"cn-hangzhou\",\n type: \"A\",\n value: \"127.0.0.1\",\n valueType: 3,\n },\n {\n priority: 50,\n regionId: \"cn-hangzhou\",\n type: \"A\",\n value: \"127.0.0.0\",\n valueType: 1,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.ddos.SchedulerRule(\"example\",\n rule_name=name,\n rule_type=3,\n rules=[\n {\n \"priority\": 100,\n \"region_id\": \"cn-hangzhou\",\n \"type\": \"A\",\n \"value\": \"127.0.0.1\",\n \"value_type\": 3,\n },\n {\n \"priority\": 50,\n \"region_id\": \"cn-hangzhou\",\n \"type\": \"A\",\n \"value\": \"127.0.0.0\",\n \"value_type\": 1,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.Ddos.SchedulerRule(\"example\", new()\n {\n RuleName = name,\n RuleType = 3,\n Rules = new[]\n {\n new AliCloud.Ddos.Inputs.SchedulerRuleRuleArgs\n {\n Priority = 100,\n RegionId = \"cn-hangzhou\",\n Type = \"A\",\n Value = \"127.0.0.1\",\n ValueType = 3,\n },\n new AliCloud.Ddos.Inputs.SchedulerRuleRuleArgs\n {\n Priority = 50,\n RegionId = \"cn-hangzhou\",\n Type = \"A\",\n Value = \"127.0.0.0\",\n ValueType = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewSchedulerRule(ctx, \"example\", \u0026ddos.SchedulerRuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tRuleType: pulumi.Int(3),\n\t\t\tRules: ddos.SchedulerRuleRuleArray{\n\t\t\t\t\u0026ddos.SchedulerRuleRuleArgs{\n\t\t\t\t\tPriority: pulumi.Int(100),\n\t\t\t\t\tRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\t\tType: pulumi.String(\"A\"),\n\t\t\t\t\tValue: pulumi.String(\"127.0.0.1\"),\n\t\t\t\t\tValueType: pulumi.Int(3),\n\t\t\t\t},\n\t\t\t\t\u0026ddos.SchedulerRuleRuleArgs{\n\t\t\t\t\tPriority: pulumi.Int(50),\n\t\t\t\t\tRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\t\tType: pulumi.String(\"A\"),\n\t\t\t\t\tValue: pulumi.String(\"127.0.0.0\"),\n\t\t\t\t\tValueType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.SchedulerRule;\nimport com.pulumi.alicloud.ddos.SchedulerRuleArgs;\nimport com.pulumi.alicloud.ddos.inputs.SchedulerRuleRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new SchedulerRule(\"example\", SchedulerRuleArgs.builder()\n .ruleName(name)\n .ruleType(3)\n .rules( \n SchedulerRuleRuleArgs.builder()\n .priority(100)\n .regionId(\"cn-hangzhou\")\n .type(\"A\")\n .value(\"127.0.0.1\")\n .valueType(3)\n .build(),\n SchedulerRuleRuleArgs.builder()\n .priority(50)\n .regionId(\"cn-hangzhou\")\n .type(\"A\")\n .value(\"127.0.0.0\")\n .valueType(1)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:ddos:SchedulerRule\n properties:\n ruleName: ${name}\n ruleType: 3\n rules:\n - priority: 100\n regionId: cn-hangzhou\n type: A\n value: 127.0.0.1\n valueType: 3\n - priority: 50\n regionId: cn-hangzhou\n type: A\n value: 127.0.0.0\n valueType: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdosCoo Scheduler Rule can be imported using the id or the rule name, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/schedulerRule:SchedulerRule example fbb20dc77e8fc******\n```\n\n",
+ "description": "Provides a DdosCoo Scheduler Rule resource. For information about DdosCoo Scheduler Rule and how to use it, see[What is DdosCoo Scheduler Rule](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createschedulerrule).\n\n\u003e **NOTE:** Available since v1.86.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = new alicloud.ddos.SchedulerRule(\"example\", {\n ruleName: name,\n ruleType: 3,\n rules: [\n {\n priority: 100,\n regionId: \"cn-hangzhou\",\n type: \"A\",\n value: \"127.0.0.1\",\n valueType: 3,\n },\n {\n priority: 50,\n regionId: \"cn-hangzhou\",\n type: \"A\",\n value: \"127.0.0.0\",\n valueType: 1,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.ddos.SchedulerRule(\"example\",\n rule_name=name,\n rule_type=3,\n rules=[\n {\n \"priority\": 100,\n \"region_id\": \"cn-hangzhou\",\n \"type\": \"A\",\n \"value\": \"127.0.0.1\",\n \"value_type\": 3,\n },\n {\n \"priority\": 50,\n \"region_id\": \"cn-hangzhou\",\n \"type\": \"A\",\n \"value\": \"127.0.0.0\",\n \"value_type\": 1,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = new AliCloud.Ddos.SchedulerRule(\"example\", new()\n {\n RuleName = name,\n RuleType = 3,\n Rules = new[]\n {\n new AliCloud.Ddos.Inputs.SchedulerRuleRuleArgs\n {\n Priority = 100,\n RegionId = \"cn-hangzhou\",\n Type = \"A\",\n Value = \"127.0.0.1\",\n ValueType = 3,\n },\n new AliCloud.Ddos.Inputs.SchedulerRuleRuleArgs\n {\n Priority = 50,\n RegionId = \"cn-hangzhou\",\n Type = \"A\",\n Value = \"127.0.0.0\",\n ValueType = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewSchedulerRule(ctx, \"example\", \u0026ddos.SchedulerRuleArgs{\n\t\t\tRuleName: pulumi.String(name),\n\t\t\tRuleType: pulumi.Int(3),\n\t\t\tRules: ddos.SchedulerRuleRuleArray{\n\t\t\t\t\u0026ddos.SchedulerRuleRuleArgs{\n\t\t\t\t\tPriority: pulumi.Int(100),\n\t\t\t\t\tRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\t\tType: pulumi.String(\"A\"),\n\t\t\t\t\tValue: pulumi.String(\"127.0.0.1\"),\n\t\t\t\t\tValueType: pulumi.Int(3),\n\t\t\t\t},\n\t\t\t\t\u0026ddos.SchedulerRuleRuleArgs{\n\t\t\t\t\tPriority: pulumi.Int(50),\n\t\t\t\t\tRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\t\t\tType: pulumi.String(\"A\"),\n\t\t\t\t\tValue: pulumi.String(\"127.0.0.0\"),\n\t\t\t\t\tValueType: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.SchedulerRule;\nimport com.pulumi.alicloud.ddos.SchedulerRuleArgs;\nimport com.pulumi.alicloud.ddos.inputs.SchedulerRuleRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var example = new SchedulerRule(\"example\", SchedulerRuleArgs.builder()\n .ruleName(name)\n .ruleType(3)\n .rules( \n SchedulerRuleRuleArgs.builder()\n .priority(100)\n .regionId(\"cn-hangzhou\")\n .type(\"A\")\n .value(\"127.0.0.1\")\n .valueType(3)\n .build(),\n SchedulerRuleRuleArgs.builder()\n .priority(50)\n .regionId(\"cn-hangzhou\")\n .type(\"A\")\n .value(\"127.0.0.0\")\n .valueType(1)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n example:\n type: alicloud:ddos:SchedulerRule\n properties:\n ruleName: ${name}\n ruleType: 3\n rules:\n - priority: 100\n regionId: cn-hangzhou\n type: A\n value: 127.0.0.1\n valueType: 3\n - priority: 50\n regionId: cn-hangzhou\n type: A\n value: 127.0.0.0\n valueType: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdosCoo Scheduler Rule can be imported using the id or the rule name, e.g.\n\n```sh\n$ pulumi import alicloud:ddos/schedulerRule:SchedulerRule example fbb20dc77e8fc******\n```\n\n",
"properties": {
"cname": {
"type": "string",
@@ -140544,7 +143173,7 @@
}
},
"alicloud:dfs/accessGroup:AccessGroup": {
- "description": "Provides a DFS Access Group resource. \n\nFor information about DFS Access Group and how to use it, see [What is Access Group](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAccessGroup = new alicloud.dfs.AccessGroup(\"default\", {\n accessGroupName: `tf-example-${_default.result}`,\n networkType: \"VPC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_access_group = alicloud.dfs.AccessGroup(\"default\",\n access_group_name=f\"tf-example-{default['result']}\",\n network_type=\"VPC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAccessGroup = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n AccessGroupName = $\"tf-example-{@default.Result}\",\n NetworkType = \"VPC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tAccessGroupName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAccessGroup = new AccessGroup(\"defaultAccessGroup\", AccessGroupArgs.builder()\n .accessGroupName(String.format(\"tf-example-%s\", default_.result()))\n .networkType(\"VPC\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultAccessGroup:\n type: alicloud:dfs:AccessGroup\n name: default\n properties:\n accessGroupName: tf-example-${default.result}\n networkType: VPC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDFS Access Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/accessGroup:AccessGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DFS Access Group resource. \n\nFor information about DFS Access Group and how to use it, see [What is Access Group](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.133.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAccessGroup = new alicloud.dfs.AccessGroup(\"default\", {\n accessGroupName: `tf-example-${_default.result}`,\n networkType: \"VPC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_access_group = alicloud.dfs.AccessGroup(\"default\",\n access_group_name=f\"tf-example-{default['result']}\",\n network_type=\"VPC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAccessGroup = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n AccessGroupName = $\"tf-example-{@default.Result}\",\n NetworkType = \"VPC\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tAccessGroupName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAccessGroup = new AccessGroup(\"defaultAccessGroup\", AccessGroupArgs.builder()\n .accessGroupName(String.format(\"tf-example-%s\", default_.result()))\n .networkType(\"VPC\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultAccessGroup:\n type: alicloud:dfs:AccessGroup\n name: default\n properties:\n accessGroupName: tf-example-${default.result}\n networkType: VPC\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDFS Access Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/accessGroup:AccessGroup example \u003cid\u003e\n```\n\n",
"properties": {
"accessGroupName": {
"type": "string",
@@ -140612,7 +143241,7 @@
}
},
"alicloud:dfs/accessRule:AccessRule": {
- "description": "Provides a DFS Access Rule resource. \n\nFor information about DFS Access Rule and how to use it, see [What is Access Rule](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"example_name\";\nconst _default = new alicloud.dfs.AccessGroup(\"default\", {\n networkType: \"VPC\",\n accessGroupName: name,\n description: name,\n});\nconst defaultAccessRule = new alicloud.dfs.AccessRule(\"default\", {\n networkSegment: \"192.0.2.0/24\",\n accessGroupId: _default.id,\n description: name,\n rwAccessType: \"RDWR\",\n priority: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"example_name\"\ndefault = alicloud.dfs.AccessGroup(\"default\",\n network_type=\"VPC\",\n access_group_name=name,\n description=name)\ndefault_access_rule = alicloud.dfs.AccessRule(\"default\",\n network_segment=\"192.0.2.0/24\",\n access_group_id=default.id,\n description=name,\n rw_access_type=\"RDWR\",\n priority=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"example_name\";\n var @default = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n NetworkType = \"VPC\",\n AccessGroupName = name,\n Description = name,\n });\n\n var defaultAccessRule = new AliCloud.Dfs.AccessRule(\"default\", new()\n {\n NetworkSegment = \"192.0.2.0/24\",\n AccessGroupId = @default.Id,\n Description = name,\n RwAccessType = \"RDWR\",\n Priority = 10,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"example_name\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tAccessGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewAccessRule(ctx, \"default\", \u0026dfs.AccessRuleArgs{\n\t\t\tNetworkSegment: pulumi.String(\"192.0.2.0/24\"),\n\t\t\tAccessGroupId: _default.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRwAccessType: pulumi.String(\"RDWR\"),\n\t\t\tPriority: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport com.pulumi.alicloud.dfs.AccessRule;\nimport com.pulumi.alicloud.dfs.AccessRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"example_name\");\n var default_ = new AccessGroup(\"default\", AccessGroupArgs.builder()\n .networkType(\"VPC\")\n .accessGroupName(name)\n .description(name)\n .build());\n\n var defaultAccessRule = new AccessRule(\"defaultAccessRule\", AccessRuleArgs.builder()\n .networkSegment(\"192.0.2.0/24\")\n .accessGroupId(default_.id())\n .description(name)\n .rwAccessType(\"RDWR\")\n .priority(10)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: example_name\nresources:\n default:\n type: alicloud:dfs:AccessGroup\n properties:\n networkType: VPC\n accessGroupName: ${name}\n description: ${name}\n defaultAccessRule:\n type: alicloud:dfs:AccessRule\n name: default\n properties:\n networkSegment: 192.0.2.0/24\n accessGroupId: ${default.id}\n description: ${name}\n rwAccessType: RDWR\n priority: '10'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDFS Access Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/accessRule:AccessRule example \u003caccess_group_id\u003e:\u003caccess_rule_id\u003e\n```\n\n",
+ "description": "Provides a DFS Access Rule resource. \n\nFor information about DFS Access Rule and how to use it, see [What is Access Rule](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"example_name\";\nconst _default = new alicloud.dfs.AccessGroup(\"default\", {\n networkType: \"VPC\",\n accessGroupName: name,\n description: name,\n});\nconst defaultAccessRule = new alicloud.dfs.AccessRule(\"default\", {\n networkSegment: \"192.0.2.0/24\",\n accessGroupId: _default.id,\n description: name,\n rwAccessType: \"RDWR\",\n priority: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"example_name\"\ndefault = alicloud.dfs.AccessGroup(\"default\",\n network_type=\"VPC\",\n access_group_name=name,\n description=name)\ndefault_access_rule = alicloud.dfs.AccessRule(\"default\",\n network_segment=\"192.0.2.0/24\",\n access_group_id=default.id,\n description=name,\n rw_access_type=\"RDWR\",\n priority=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"example_name\";\n var @default = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n NetworkType = \"VPC\",\n AccessGroupName = name,\n Description = name,\n });\n\n var defaultAccessRule = new AliCloud.Dfs.AccessRule(\"default\", new()\n {\n NetworkSegment = \"192.0.2.0/24\",\n AccessGroupId = @default.Id,\n Description = name,\n RwAccessType = \"RDWR\",\n Priority = 10,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"example_name\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tAccessGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewAccessRule(ctx, \"default\", \u0026dfs.AccessRuleArgs{\n\t\t\tNetworkSegment: pulumi.String(\"192.0.2.0/24\"),\n\t\t\tAccessGroupId: _default.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRwAccessType: pulumi.String(\"RDWR\"),\n\t\t\tPriority: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport com.pulumi.alicloud.dfs.AccessRule;\nimport com.pulumi.alicloud.dfs.AccessRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"example_name\");\n var default_ = new AccessGroup(\"default\", AccessGroupArgs.builder()\n .networkType(\"VPC\")\n .accessGroupName(name)\n .description(name)\n .build());\n\n var defaultAccessRule = new AccessRule(\"defaultAccessRule\", AccessRuleArgs.builder()\n .networkSegment(\"192.0.2.0/24\")\n .accessGroupId(default_.id())\n .description(name)\n .rwAccessType(\"RDWR\")\n .priority(10)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: example_name\nresources:\n default:\n type: alicloud:dfs:AccessGroup\n properties:\n networkType: VPC\n accessGroupName: ${name}\n description: ${name}\n defaultAccessRule:\n type: alicloud:dfs:AccessRule\n name: default\n properties:\n networkSegment: 192.0.2.0/24\n accessGroupId: ${default.id}\n description: ${name}\n rwAccessType: RDWR\n priority: '10'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDFS Access Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/accessRule:AccessRule example \u003caccess_group_id\u003e:\u003caccess_rule_id\u003e\n```\n\n",
"properties": {
"accessGroupId": {
"type": "string",
@@ -140719,7 +143348,7 @@
}
},
"alicloud:dfs/fileSystem:FileSystem": {
- "description": "Provides a Apsara File Storage for HDFS (DFS) File System resource.\n\n\n\nFor information about Apsara File Storage for HDFS (DFS) File System and how to use it, see [What is File System](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.dfs.FileSystem(\"default\", {\n storageType: \"PERFORMANCE\",\n zoneId: \"cn-hangzhou-b\",\n protocolType: \"PANGU\",\n description: name,\n fileSystemName: name,\n throughputMode: \"Provisioned\",\n spaceCapacity: 1024,\n provisionedThroughputInMiBps: 512,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.dfs.FileSystem(\"default\",\n storage_type=\"PERFORMANCE\",\n zone_id=\"cn-hangzhou-b\",\n protocol_type=\"PANGU\",\n description=name,\n file_system_name=name,\n throughput_mode=\"Provisioned\",\n space_capacity=1024,\n provisioned_throughput_in_mi_bps=512)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n StorageType = \"PERFORMANCE\",\n ZoneId = \"cn-hangzhou-b\",\n ProtocolType = \"PANGU\",\n Description = name,\n FileSystemName = name,\n ThroughputMode = \"Provisioned\",\n SpaceCapacity = 1024,\n ProvisionedThroughputInMiBps = 512,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tStorageType: pulumi.String(\"PERFORMANCE\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t\tThroughputMode: pulumi.String(\"Provisioned\"),\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tProvisionedThroughputInMiBps: pulumi.Int(512),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new FileSystem(\"default\", FileSystemArgs.builder()\n .storageType(\"PERFORMANCE\")\n .zoneId(\"cn-hangzhou-b\")\n .protocolType(\"PANGU\")\n .description(name)\n .fileSystemName(name)\n .throughputMode(\"Provisioned\")\n .spaceCapacity(1024)\n .provisionedThroughputInMiBps(512)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:dfs:FileSystem\n properties:\n storageType: PERFORMANCE\n zoneId: cn-hangzhou-b\n protocolType: PANGU\n description: ${name}\n fileSystemName: ${name}\n throughputMode: Provisioned\n spaceCapacity: '1024'\n provisionedThroughputInMiBps: '512'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApsara File Storage for HDFS (DFS) File System can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/fileSystem:FileSystem example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Apsara File Storage for HDFS (DFS) File System resource.\n\n\n\nFor information about Apsara File Storage for HDFS (DFS) File System and how to use it, see [What is File System](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.dfs.FileSystem(\"default\", {\n storageType: \"PERFORMANCE\",\n zoneId: \"cn-hangzhou-b\",\n protocolType: \"PANGU\",\n description: name,\n fileSystemName: name,\n throughputMode: \"Provisioned\",\n spaceCapacity: 1024,\n provisionedThroughputInMiBps: 512,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.dfs.FileSystem(\"default\",\n storage_type=\"PERFORMANCE\",\n zone_id=\"cn-hangzhou-b\",\n protocol_type=\"PANGU\",\n description=name,\n file_system_name=name,\n throughput_mode=\"Provisioned\",\n space_capacity=1024,\n provisioned_throughput_in_mi_bps=512)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n StorageType = \"PERFORMANCE\",\n ZoneId = \"cn-hangzhou-b\",\n ProtocolType = \"PANGU\",\n Description = name,\n FileSystemName = name,\n ThroughputMode = \"Provisioned\",\n SpaceCapacity = 1024,\n ProvisionedThroughputInMiBps = 512,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tStorageType: pulumi.String(\"PERFORMANCE\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t\tThroughputMode: pulumi.String(\"Provisioned\"),\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tProvisionedThroughputInMiBps: pulumi.Int(512),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new FileSystem(\"default\", FileSystemArgs.builder()\n .storageType(\"PERFORMANCE\")\n .zoneId(\"cn-hangzhou-b\")\n .protocolType(\"PANGU\")\n .description(name)\n .fileSystemName(name)\n .throughputMode(\"Provisioned\")\n .spaceCapacity(1024)\n .provisionedThroughputInMiBps(512)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:dfs:FileSystem\n properties:\n storageType: PERFORMANCE\n zoneId: cn-hangzhou-b\n protocolType: PANGU\n description: ${name}\n fileSystemName: ${name}\n throughputMode: Provisioned\n spaceCapacity: '1024'\n provisionedThroughputInMiBps: '512'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApsara File Storage for HDFS (DFS) File System can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/fileSystem:FileSystem example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -140913,7 +143542,7 @@
}
},
"alicloud:dfs/mountPoint:MountPoint": {
- "description": "Provides a Apsara File Storage for HDFS (DFS) Mount Point resource. \n\nFor information about Apsara File Storage for HDFS (DFS) Mount Point and how to use it, see [What is Mount Point](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: _default.id,\n zoneId: \"cn-hangzhou-e\",\n});\nconst defaultFileSystem = new alicloud.dfs.FileSystem(\"default\", {\n storageType: \"STANDARD\",\n zoneId: \"cn-hangzhou-e\",\n protocolType: \"PANGU\",\n description: name,\n fileSystemName: name,\n throughputMode: \"Provisioned\",\n spaceCapacity: 1024,\n provisionedThroughputInMiBps: 512,\n});\nconst defaultAccessGroup = new alicloud.dfs.AccessGroup(\"default\", {\n accessGroupName: name,\n description: name,\n networkType: \"VPC\",\n});\nconst defaultMountPoint = new alicloud.dfs.MountPoint(\"default\", {\n description: name,\n vpcId: _default.id,\n fileSystemId: defaultFileSystem.id,\n accessGroupId: defaultAccessGroup.id,\n networkType: \"VPC\",\n vswitchId: defaultSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default.id,\n zone_id=\"cn-hangzhou-e\")\ndefault_file_system = alicloud.dfs.FileSystem(\"default\",\n storage_type=\"STANDARD\",\n zone_id=\"cn-hangzhou-e\",\n protocol_type=\"PANGU\",\n description=name,\n file_system_name=name,\n throughput_mode=\"Provisioned\",\n space_capacity=1024,\n provisioned_throughput_in_mi_bps=512)\ndefault_access_group = alicloud.dfs.AccessGroup(\"default\",\n access_group_name=name,\n description=name,\n network_type=\"VPC\")\ndefault_mount_point = alicloud.dfs.MountPoint(\"default\",\n description=name,\n vpc_id=default.id,\n file_system_id=default_file_system.id,\n access_group_id=default_access_group.id,\n network_type=\"VPC\",\n vswitch_id=default_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = @default.Id,\n ZoneId = \"cn-hangzhou-e\",\n });\n\n var defaultFileSystem = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n StorageType = \"STANDARD\",\n ZoneId = \"cn-hangzhou-e\",\n ProtocolType = \"PANGU\",\n Description = name,\n FileSystemName = name,\n ThroughputMode = \"Provisioned\",\n SpaceCapacity = 1024,\n ProvisionedThroughputInMiBps = 512,\n });\n\n var defaultAccessGroup = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n AccessGroupName = name,\n Description = name,\n NetworkType = \"VPC\",\n });\n\n var defaultMountPoint = new AliCloud.Dfs.MountPoint(\"default\", new()\n {\n Description = name,\n VpcId = @default.Id,\n FileSystemId = defaultFileSystem.Id,\n AccessGroupId = defaultAccessGroup.Id,\n NetworkType = \"VPC\",\n VswitchId = defaultSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFileSystem, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tStorageType: pulumi.String(\"STANDARD\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-e\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t\tThroughputMode: pulumi.String(\"Provisioned\"),\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tProvisionedThroughputInMiBps: pulumi.Int(512),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccessGroup, err := dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tAccessGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewMountPoint(ctx, \"default\", \u0026dfs.MountPointArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: _default.ID(),\n\t\t\tFileSystemId: defaultFileSystem.ID(),\n\t\t\tAccessGroupId: defaultAccessGroup.ID(),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport com.pulumi.alicloud.dfs.MountPoint;\nimport com.pulumi.alicloud.dfs.MountPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(default_.id())\n .zoneId(\"cn-hangzhou-e\")\n .build());\n\n var defaultFileSystem = new FileSystem(\"defaultFileSystem\", FileSystemArgs.builder()\n .storageType(\"STANDARD\")\n .zoneId(\"cn-hangzhou-e\")\n .protocolType(\"PANGU\")\n .description(name)\n .fileSystemName(name)\n .throughputMode(\"Provisioned\")\n .spaceCapacity(1024)\n .provisionedThroughputInMiBps(512)\n .build());\n\n var defaultAccessGroup = new AccessGroup(\"defaultAccessGroup\", AccessGroupArgs.builder()\n .accessGroupName(name)\n .description(name)\n .networkType(\"VPC\")\n .build());\n\n var defaultMountPoint = new MountPoint(\"defaultMountPoint\", MountPointArgs.builder()\n .description(name)\n .vpcId(default_.id())\n .fileSystemId(defaultFileSystem.id())\n .accessGroupId(defaultAccessGroup.id())\n .networkType(\"VPC\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${default.id}\n zoneId: cn-hangzhou-e\n defaultFileSystem:\n type: alicloud:dfs:FileSystem\n name: default\n properties:\n storageType: STANDARD\n zoneId: cn-hangzhou-e\n protocolType: PANGU\n description: ${name}\n fileSystemName: ${name}\n throughputMode: Provisioned\n spaceCapacity: '1024'\n provisionedThroughputInMiBps: '512'\n defaultAccessGroup:\n type: alicloud:dfs:AccessGroup\n name: default\n properties:\n accessGroupName: ${name}\n description: ${name}\n networkType: VPC\n defaultMountPoint:\n type: alicloud:dfs:MountPoint\n name: default\n properties:\n description: ${name}\n vpcId: ${default.id}\n fileSystemId: ${defaultFileSystem.id}\n accessGroupId: ${defaultAccessGroup.id}\n networkType: VPC\n vswitchId: ${defaultSwitch.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApsara File Storage for HDFS (DFS) Mount Point can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/mountPoint:MountPoint example \u003cfile_system_id\u003e:\u003cmount_point_id\u003e\n```\n\n",
+ "description": "Provides a Apsara File Storage for HDFS (DFS) Mount Point resource. \n\nFor information about Apsara File Storage for HDFS (DFS) Mount Point and how to use it, see [What is Mount Point](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: _default.id,\n zoneId: \"cn-hangzhou-e\",\n});\nconst defaultFileSystem = new alicloud.dfs.FileSystem(\"default\", {\n storageType: \"STANDARD\",\n zoneId: \"cn-hangzhou-e\",\n protocolType: \"PANGU\",\n description: name,\n fileSystemName: name,\n throughputMode: \"Provisioned\",\n spaceCapacity: 1024,\n provisionedThroughputInMiBps: 512,\n});\nconst defaultAccessGroup = new alicloud.dfs.AccessGroup(\"default\", {\n accessGroupName: name,\n description: name,\n networkType: \"VPC\",\n});\nconst defaultMountPoint = new alicloud.dfs.MountPoint(\"default\", {\n description: name,\n vpcId: _default.id,\n fileSystemId: defaultFileSystem.id,\n accessGroupId: defaultAccessGroup.id,\n networkType: \"VPC\",\n vswitchId: defaultSwitch.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default.id,\n zone_id=\"cn-hangzhou-e\")\ndefault_file_system = alicloud.dfs.FileSystem(\"default\",\n storage_type=\"STANDARD\",\n zone_id=\"cn-hangzhou-e\",\n protocol_type=\"PANGU\",\n description=name,\n file_system_name=name,\n throughput_mode=\"Provisioned\",\n space_capacity=1024,\n provisioned_throughput_in_mi_bps=512)\ndefault_access_group = alicloud.dfs.AccessGroup(\"default\",\n access_group_name=name,\n description=name,\n network_type=\"VPC\")\ndefault_mount_point = alicloud.dfs.MountPoint(\"default\",\n description=name,\n vpc_id=default.id,\n file_system_id=default_file_system.id,\n access_group_id=default_access_group.id,\n network_type=\"VPC\",\n vswitch_id=default_switch.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = @default.Id,\n ZoneId = \"cn-hangzhou-e\",\n });\n\n var defaultFileSystem = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n StorageType = \"STANDARD\",\n ZoneId = \"cn-hangzhou-e\",\n ProtocolType = \"PANGU\",\n Description = name,\n FileSystemName = name,\n ThroughputMode = \"Provisioned\",\n SpaceCapacity = 1024,\n ProvisionedThroughputInMiBps = 512,\n });\n\n var defaultAccessGroup = new AliCloud.Dfs.AccessGroup(\"default\", new()\n {\n AccessGroupName = name,\n Description = name,\n NetworkType = \"VPC\",\n });\n\n var defaultMountPoint = new AliCloud.Dfs.MountPoint(\"default\", new()\n {\n Description = name,\n VpcId = @default.Id,\n FileSystemId = defaultFileSystem.Id,\n AccessGroupId = defaultAccessGroup.Id,\n NetworkType = \"VPC\",\n VswitchId = defaultSwitch.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: _default.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFileSystem, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tStorageType: pulumi.String(\"STANDARD\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-e\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t\tThroughputMode: pulumi.String(\"Provisioned\"),\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tProvisionedThroughputInMiBps: pulumi.Int(512),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccessGroup, err := dfs.NewAccessGroup(ctx, \"default\", \u0026dfs.AccessGroupArgs{\n\t\t\tAccessGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewMountPoint(ctx, \"default\", \u0026dfs.MountPointArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tVpcId: _default.ID(),\n\t\t\tFileSystemId: defaultFileSystem.ID(),\n\t\t\tAccessGroupId: defaultAccessGroup.ID(),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport com.pulumi.alicloud.dfs.AccessGroup;\nimport com.pulumi.alicloud.dfs.AccessGroupArgs;\nimport com.pulumi.alicloud.dfs.MountPoint;\nimport com.pulumi.alicloud.dfs.MountPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(default_.id())\n .zoneId(\"cn-hangzhou-e\")\n .build());\n\n var defaultFileSystem = new FileSystem(\"defaultFileSystem\", FileSystemArgs.builder()\n .storageType(\"STANDARD\")\n .zoneId(\"cn-hangzhou-e\")\n .protocolType(\"PANGU\")\n .description(name)\n .fileSystemName(name)\n .throughputMode(\"Provisioned\")\n .spaceCapacity(1024)\n .provisionedThroughputInMiBps(512)\n .build());\n\n var defaultAccessGroup = new AccessGroup(\"defaultAccessGroup\", AccessGroupArgs.builder()\n .accessGroupName(name)\n .description(name)\n .networkType(\"VPC\")\n .build());\n\n var defaultMountPoint = new MountPoint(\"defaultMountPoint\", MountPointArgs.builder()\n .description(name)\n .vpcId(default_.id())\n .fileSystemId(defaultFileSystem.id())\n .accessGroupId(defaultAccessGroup.id())\n .networkType(\"VPC\")\n .vswitchId(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${default.id}\n zoneId: cn-hangzhou-e\n defaultFileSystem:\n type: alicloud:dfs:FileSystem\n name: default\n properties:\n storageType: STANDARD\n zoneId: cn-hangzhou-e\n protocolType: PANGU\n description: ${name}\n fileSystemName: ${name}\n throughputMode: Provisioned\n spaceCapacity: '1024'\n provisionedThroughputInMiBps: '512'\n defaultAccessGroup:\n type: alicloud:dfs:AccessGroup\n name: default\n properties:\n accessGroupName: ${name}\n description: ${name}\n networkType: VPC\n defaultMountPoint:\n type: alicloud:dfs:MountPoint\n name: default\n properties:\n description: ${name}\n vpcId: ${default.id}\n fileSystemId: ${defaultFileSystem.id}\n accessGroupId: ${defaultAccessGroup.id}\n networkType: VPC\n vswitchId: ${defaultSwitch.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApsara File Storage for HDFS (DFS) Mount Point can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/mountPoint:MountPoint example \u003cfile_system_id\u003e:\u003cmount_point_id\u003e\n```\n\n",
"properties": {
"accessGroupId": {
"type": "string",
@@ -141072,7 +143701,7 @@
}
},
"alicloud:dfs/vscMountPoint:VscMountPoint": {
- "description": "Provides a Apsara File Storage for HDFS (DFS) Vsc Mount Point resource.\n\nFor information about Apsara File Storage for HDFS (DFS) Vsc Mount Point and how to use it, see [What is Vsc Mount Point](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.218.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultFileSystem = new alicloud.dfs.FileSystem(\"default\", {\n spaceCapacity: 1024,\n description: \"for vsc mountpoint RMC test\",\n storageType: \"PERFORMANCE\",\n zoneId: \"cn-hangzhou-b\",\n protocolType: \"PANGU\",\n dataRedundancyType: \"LRS\",\n fileSystemName: name,\n});\nconst defaultFsForRMCVscMp = new alicloud.dfs.VscMountPoint(\"DefaultFsForRMCVscMp\", {\n fileSystemId: defaultFileSystem.id,\n aliasPrefix: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_file_system = alicloud.dfs.FileSystem(\"default\",\n space_capacity=1024,\n description=\"for vsc mountpoint RMC test\",\n storage_type=\"PERFORMANCE\",\n zone_id=\"cn-hangzhou-b\",\n protocol_type=\"PANGU\",\n data_redundancy_type=\"LRS\",\n file_system_name=name)\ndefault_fs_for_rmcvsc_mp = alicloud.dfs.VscMountPoint(\"DefaultFsForRMCVscMp\",\n file_system_id=default_file_system.id,\n alias_prefix=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultFileSystem = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n SpaceCapacity = 1024,\n Description = \"for vsc mountpoint RMC test\",\n StorageType = \"PERFORMANCE\",\n ZoneId = \"cn-hangzhou-b\",\n ProtocolType = \"PANGU\",\n DataRedundancyType = \"LRS\",\n FileSystemName = name,\n });\n\n var defaultFsForRMCVscMp = new AliCloud.Dfs.VscMountPoint(\"DefaultFsForRMCVscMp\", new()\n {\n FileSystemId = defaultFileSystem.Id,\n AliasPrefix = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFileSystem, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tDescription: pulumi.String(\"for vsc mountpoint RMC test\"),\n\t\t\tStorageType: pulumi.String(\"PERFORMANCE\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDataRedundancyType: pulumi.String(\"LRS\"),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewVscMountPoint(ctx, \"DefaultFsForRMCVscMp\", \u0026dfs.VscMountPointArgs{\n\t\t\tFileSystemId: defaultFileSystem.ID(),\n\t\t\tAliasPrefix: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport com.pulumi.alicloud.dfs.VscMountPoint;\nimport com.pulumi.alicloud.dfs.VscMountPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultFileSystem = new FileSystem(\"defaultFileSystem\", FileSystemArgs.builder()\n .spaceCapacity(1024)\n .description(\"for vsc mountpoint RMC test\")\n .storageType(\"PERFORMANCE\")\n .zoneId(\"cn-hangzhou-b\")\n .protocolType(\"PANGU\")\n .dataRedundancyType(\"LRS\")\n .fileSystemName(name)\n .build());\n\n var defaultFsForRMCVscMp = new VscMountPoint(\"defaultFsForRMCVscMp\", VscMountPointArgs.builder()\n .fileSystemId(defaultFileSystem.id())\n .aliasPrefix(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultFileSystem:\n type: alicloud:dfs:FileSystem\n name: default\n properties:\n spaceCapacity: '1024'\n description: for vsc mountpoint RMC test\n storageType: PERFORMANCE\n zoneId: cn-hangzhou-b\n protocolType: PANGU\n dataRedundancyType: LRS\n fileSystemName: ${name}\n defaultFsForRMCVscMp:\n type: alicloud:dfs:VscMountPoint\n name: DefaultFsForRMCVscMp\n properties:\n fileSystemId: ${defaultFileSystem.id}\n aliasPrefix: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nApsara File Storage for HDFS (DFS) Vsc Mount Point can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/vscMountPoint:VscMountPoint example \u003cfile_system_id\u003e:\u003cmount_point_id\u003e\n```\n\n",
+ "description": "Provides a Apsara File Storage for HDFS (DFS) Vsc Mount Point resource.\n\nFor information about Apsara File Storage for HDFS (DFS) Vsc Mount Point and how to use it, see [What is Vsc Mount Point](https://www.alibabacloud.com/help/en/aibaba-cloud-storage-services/latest/apsara-file-storage-for-hdfs).\n\n\u003e **NOTE:** Available since v1.218.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultFileSystem = new alicloud.dfs.FileSystem(\"default\", {\n spaceCapacity: 1024,\n description: \"for vsc mountpoint RMC test\",\n storageType: \"PERFORMANCE\",\n zoneId: \"cn-hangzhou-b\",\n protocolType: \"PANGU\",\n dataRedundancyType: \"LRS\",\n fileSystemName: name,\n});\nconst defaultFsForRMCVscMp = new alicloud.dfs.VscMountPoint(\"DefaultFsForRMCVscMp\", {\n fileSystemId: defaultFileSystem.id,\n aliasPrefix: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_file_system = alicloud.dfs.FileSystem(\"default\",\n space_capacity=1024,\n description=\"for vsc mountpoint RMC test\",\n storage_type=\"PERFORMANCE\",\n zone_id=\"cn-hangzhou-b\",\n protocol_type=\"PANGU\",\n data_redundancy_type=\"LRS\",\n file_system_name=name)\ndefault_fs_for_rmcvsc_mp = alicloud.dfs.VscMountPoint(\"DefaultFsForRMCVscMp\",\n file_system_id=default_file_system.id,\n alias_prefix=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultFileSystem = new AliCloud.Dfs.FileSystem(\"default\", new()\n {\n SpaceCapacity = 1024,\n Description = \"for vsc mountpoint RMC test\",\n StorageType = \"PERFORMANCE\",\n ZoneId = \"cn-hangzhou-b\",\n ProtocolType = \"PANGU\",\n DataRedundancyType = \"LRS\",\n FileSystemName = name,\n });\n\n var defaultFsForRMCVscMp = new AliCloud.Dfs.VscMountPoint(\"DefaultFsForRMCVscMp\", new()\n {\n FileSystemId = defaultFileSystem.Id,\n AliasPrefix = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dfs\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultFileSystem, err := dfs.NewFileSystem(ctx, \"default\", \u0026dfs.FileSystemArgs{\n\t\t\tSpaceCapacity: pulumi.Int(1024),\n\t\t\tDescription: pulumi.String(\"for vsc mountpoint RMC test\"),\n\t\t\tStorageType: pulumi.String(\"PERFORMANCE\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tProtocolType: pulumi.String(\"PANGU\"),\n\t\t\tDataRedundancyType: pulumi.String(\"LRS\"),\n\t\t\tFileSystemName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dfs.NewVscMountPoint(ctx, \"DefaultFsForRMCVscMp\", \u0026dfs.VscMountPointArgs{\n\t\t\tFileSystemId: defaultFileSystem.ID(),\n\t\t\tAliasPrefix: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.dfs.FileSystem;\nimport com.pulumi.alicloud.dfs.FileSystemArgs;\nimport com.pulumi.alicloud.dfs.VscMountPoint;\nimport com.pulumi.alicloud.dfs.VscMountPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultFileSystem = new FileSystem(\"defaultFileSystem\", FileSystemArgs.builder()\n .spaceCapacity(1024)\n .description(\"for vsc mountpoint RMC test\")\n .storageType(\"PERFORMANCE\")\n .zoneId(\"cn-hangzhou-b\")\n .protocolType(\"PANGU\")\n .dataRedundancyType(\"LRS\")\n .fileSystemName(name)\n .build());\n\n var defaultFsForRMCVscMp = new VscMountPoint(\"defaultFsForRMCVscMp\", VscMountPointArgs.builder()\n .fileSystemId(defaultFileSystem.id())\n .aliasPrefix(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultFileSystem:\n type: alicloud:dfs:FileSystem\n name: default\n properties:\n spaceCapacity: '1024'\n description: for vsc mountpoint RMC test\n storageType: PERFORMANCE\n zoneId: cn-hangzhou-b\n protocolType: PANGU\n dataRedundancyType: LRS\n fileSystemName: ${name}\n defaultFsForRMCVscMp:\n type: alicloud:dfs:VscMountPoint\n name: DefaultFsForRMCVscMp\n properties:\n fileSystemId: ${defaultFileSystem.id}\n aliasPrefix: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nApsara File Storage for HDFS (DFS) Vsc Mount Point can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dfs/vscMountPoint:VscMountPoint example \u003cfile_system_id\u003e:\u003cmount_point_id\u003e\n```\n\n",
"properties": {
"aliasPrefix": {
"type": "string",
@@ -141153,7 +143782,7 @@
}
},
"alicloud:directmail/domain:Domain": {
- "description": "Provides a Direct Mail Domain resource.\n\nFor information about Direct Mail Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/doc-detail/29414.htm).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.directmail.Domain(\"example\", {domainName: `alicloud-provider-${_default.result}.online`});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.directmail.Domain(\"example\", domain_name=f\"alicloud-provider-{default['result']}.online\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.DirectMail.Domain(\"example\", new()\n {\n DomainName = $\"alicloud-provider-{@default.Result}.online\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewDomain(ctx, \"example\", \u0026directmail.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"alicloud-provider-%v.online\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.directmail.Domain;\nimport com.pulumi.alicloud.directmail.DomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"alicloud-provider-%s.online\", default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:directmail:Domain\n properties:\n domainName: alicloud-provider-${default.result}.online\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDirect Mail Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/domain:Domain example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Direct Mail Domain resource.\n\nFor information about Direct Mail Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/doc-detail/29414.htm).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst example = new alicloud.directmail.Domain(\"example\", {domainName: `alicloud-provider-${_default.result}.online`});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample = alicloud.directmail.Domain(\"example\", domain_name=f\"alicloud-provider-{default['result']}.online\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var example = new AliCloud.DirectMail.Domain(\"example\", new()\n {\n DomainName = $\"alicloud-provider-{@default.Result}.online\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewDomain(ctx, \"example\", \u0026directmail.DomainArgs{\n\t\t\tDomainName: pulumi.Sprintf(\"alicloud-provider-%v.online\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.directmail.Domain;\nimport com.pulumi.alicloud.directmail.DomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(String.format(\"alicloud-provider-%s.online\", default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n example:\n type: alicloud:directmail:Domain\n properties:\n domainName: alicloud-provider-${default.result}.online\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDirect Mail Domain can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/domain:Domain example \u003cid\u003e\n```\n\n",
"properties": {
"domainName": {
"type": "string",
@@ -141195,7 +143824,7 @@
}
},
"alicloud:directmail/mailAddress:MailAddress": {
- "description": "Provides a Direct Mail Mail Address resource.\n\nFor information about Direct Mail Mail Address and how to use it, see [What is Mail Address](https://www.alibabacloud.com/help/en/directmail/latest/set-up-sender-addresses).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst accountName = config.get(\"accountName\") || \"tfexample\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.online\";\nconst example = new alicloud.directmail.Domain(\"example\", {domainName: domainName});\nconst exampleMailAddress = new alicloud.directmail.MailAddress(\"example\", {\n accountName: std.format({\n input: \"%s@%s\",\n args: [\n accountName,\n example.domainName,\n ],\n }).then(invoke =\u003e invoke.result),\n sendtype: \"batch\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\naccount_name = config.get(\"accountName\")\nif account_name is None:\n account_name = \"tfexample\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.online\"\nexample = alicloud.directmail.Domain(\"example\", domain_name=domain_name)\nexample_mail_address = alicloud.directmail.MailAddress(\"example\",\n account_name=std.format(input=\"%s@%s\",\n args=[\n account_name,\n example.domain_name,\n ]).result,\n sendtype=\"batch\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var accountName = config.Get(\"accountName\") ?? \"tfexample\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.online\";\n var example = new AliCloud.DirectMail.Domain(\"example\", new()\n {\n DomainName = domainName,\n });\n\n var exampleMailAddress = new AliCloud.DirectMail.MailAddress(\"example\", new()\n {\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"%s@%s\",\n Args = new[]\n {\n accountName,\n example.DomainName,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Sendtype = \"batch\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\taccountName := \"tfexample\"\n\t\tif param := cfg.Get(\"accountName\"); param != \"\" {\n\t\t\taccountName = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.online\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\texample, err := directmail.NewDomain(ctx, \"example\", \u0026directmail.DomainArgs{\n\t\t\tDomainName: pulumi.String(domainName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s@%s\",\n\t\t\tArgs: []interface{}{\n\t\t\t\taccountName,\n\t\t\t\texample.DomainName,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewMailAddress(ctx, \"example\", \u0026directmail.MailAddressArgs{\n\t\t\tAccountName: pulumi.String(invokeFormat.Result),\n\t\t\tSendtype: pulumi.String(\"batch\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Domain;\nimport com.pulumi.alicloud.directmail.DomainArgs;\nimport com.pulumi.alicloud.directmail.MailAddress;\nimport com.pulumi.alicloud.directmail.MailAddressArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var accountName = config.get(\"accountName\").orElse(\"tfexample\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.online\");\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(domainName)\n .build());\n\n var exampleMailAddress = new MailAddress(\"exampleMailAddress\", MailAddressArgs.builder()\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s@%s\")\n .args( \n accountName,\n example.domainName())\n .build()).result())\n .sendtype(\"batch\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n accountName:\n type: string\n default: tfexample\n domainName:\n type: string\n default: alicloud-provider.online\nresources:\n example:\n type: alicloud:directmail:Domain\n properties:\n domainName: ${domainName}\n exampleMailAddress:\n type: alicloud:directmail:MailAddress\n name: example\n properties:\n accountName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s@%s'\n args:\n - ${accountName}\n - ${example.domainName}\n return: result\n sendtype: batch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Note:**\nA maximum of 10 mailing addresses can be added.\nIndividual users: Up to 10 mailing addresses can be deleted within a month.\nEnterprise users: Up to 10 mailing addresses can be deleted within a month.\n\n## Import\n\nDirect Mail Mail Address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/mailAddress:MailAddress example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Direct Mail Mail Address resource.\n\nFor information about Direct Mail Mail Address and how to use it, see [What is Mail Address](https://www.alibabacloud.com/help/en/directmail/latest/set-up-sender-addresses).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst accountName = config.get(\"accountName\") || \"tfexample\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.online\";\nconst example = new alicloud.directmail.Domain(\"example\", {domainName: domainName});\nconst exampleMailAddress = new alicloud.directmail.MailAddress(\"example\", {\n accountName: std.format({\n input: \"%s@%s\",\n args: [\n accountName,\n example.domainName,\n ],\n }).then(invoke =\u003e invoke.result),\n sendtype: \"batch\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\naccount_name = config.get(\"accountName\")\nif account_name is None:\n account_name = \"tfexample\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.online\"\nexample = alicloud.directmail.Domain(\"example\", domain_name=domain_name)\nexample_mail_address = alicloud.directmail.MailAddress(\"example\",\n account_name=std.format(input=\"%s@%s\",\n args=[\n account_name,\n example.domain_name,\n ]).result,\n sendtype=\"batch\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var accountName = config.Get(\"accountName\") ?? \"tfexample\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.online\";\n var example = new AliCloud.DirectMail.Domain(\"example\", new()\n {\n DomainName = domainName,\n });\n\n var exampleMailAddress = new AliCloud.DirectMail.MailAddress(\"example\", new()\n {\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"%s@%s\",\n Args = new[]\n {\n accountName,\n example.DomainName,\n },\n }).Apply(invoke =\u003e invoke.Result),\n Sendtype = \"batch\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\taccountName := \"tfexample\"\n\t\tif param := cfg.Get(\"accountName\"); param != \"\" {\n\t\t\taccountName = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.online\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\texample, err := directmail.NewDomain(ctx, \"example\", \u0026directmail.DomainArgs{\n\t\t\tDomainName: pulumi.String(domainName),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s@%s\",\n\t\t\tArgs: []interface{}{\n\t\t\t\taccountName,\n\t\t\t\texample.DomainName,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewMailAddress(ctx, \"example\", \u0026directmail.MailAddressArgs{\n\t\t\tAccountName: pulumi.String(invokeFormat.Result),\n\t\t\tSendtype: pulumi.String(\"batch\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Domain;\nimport com.pulumi.alicloud.directmail.DomainArgs;\nimport com.pulumi.alicloud.directmail.MailAddress;\nimport com.pulumi.alicloud.directmail.MailAddressArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var accountName = config.get(\"accountName\").orElse(\"tfexample\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.online\");\n var example = new Domain(\"example\", DomainArgs.builder()\n .domainName(domainName)\n .build());\n\n var exampleMailAddress = new MailAddress(\"exampleMailAddress\", MailAddressArgs.builder()\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s@%s\")\n .args( \n accountName,\n example.domainName())\n .build()).result())\n .sendtype(\"batch\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n accountName:\n type: string\n default: tfexample\n domainName:\n type: string\n default: alicloud-provider.online\nresources:\n example:\n type: alicloud:directmail:Domain\n properties:\n domainName: ${domainName}\n exampleMailAddress:\n type: alicloud:directmail:MailAddress\n name: example\n properties:\n accountName:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s@%s'\n args:\n - ${accountName}\n - ${example.domainName}\n return: result\n sendtype: batch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003e **Note:**\nA maximum of 10 mailing addresses can be added.\nIndividual users: Up to 10 mailing addresses can be deleted within a month.\nEnterprise users: Up to 10 mailing addresses can be deleted within a month.\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDirect Mail Mail Address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/mailAddress:MailAddress example \u003cid\u003e\n```\n\n",
"properties": {
"accountName": {
"type": "string",
@@ -141277,7 +143906,7 @@
}
},
"alicloud:directmail/receivers:Receivers": {
- "description": "Provides a Direct Mail Receivers resource.\n\nFor information about Direct Mail Receivers and how to use it, see [What is Direct Mail Receivers](https://www.alibabacloud.com/help/en/doc-detail/29414.htm).\n\n\u003e **NOTE:** Available since v1.125.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst example = new alicloud.directmail.Receivers(\"example\", {\n receiversAlias: std.format({\n input: \"%s@onaliyun.com\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n receiversName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\nexample = alicloud.directmail.Receivers(\"example\",\n receivers_alias=std.format(input=\"%s@onaliyun.com\",\n args=[name]).result,\n receivers_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var example = new AliCloud.DirectMail.Receivers(\"example\", new()\n {\n ReceiversAlias = Std.Format.Invoke(new()\n {\n Input = \"%s@onaliyun.com\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ReceiversName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s@onaliyun.com\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewReceivers(ctx, \"example\", \u0026directmail.ReceiversArgs{\n\t\t\tReceiversAlias: pulumi.String(invokeFormat.Result),\n\t\t\tReceiversName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Receivers;\nimport com.pulumi.alicloud.directmail.ReceiversArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n var example = new Receivers(\"example\", ReceiversArgs.builder()\n .receiversAlias(StdFunctions.format(FormatArgs.builder()\n .input(\"%s@onaliyun.com\")\n .args(name)\n .build()).result())\n .receiversName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexample\nresources:\n example:\n type: alicloud:directmail:Receivers\n properties:\n receiversAlias:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s@onaliyun.com'\n args:\n - ${name}\n return: result\n receiversName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDirect Mail Receivers can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/receivers:Receivers example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Direct Mail Receivers resource.\n\nFor information about Direct Mail Receivers and how to use it, see [What is Direct Mail Receivers](https://www.alibabacloud.com/help/en/doc-detail/29414.htm).\n\n\u003e **NOTE:** Available since v1.125.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexample\";\nconst example = new alicloud.directmail.Receivers(\"example\", {\n receiversAlias: std.format({\n input: \"%s@onaliyun.com\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n receiversName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\nexample = alicloud.directmail.Receivers(\"example\",\n receivers_alias=std.format(input=\"%s@onaliyun.com\",\n args=[name]).result,\n receivers_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexample\";\n var example = new AliCloud.DirectMail.Receivers(\"example\", new()\n {\n ReceiversAlias = Std.Format.Invoke(new()\n {\n Input = \"%s@onaliyun.com\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n ReceiversName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s@onaliyun.com\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = directmail.NewReceivers(ctx, \"example\", \u0026directmail.ReceiversArgs{\n\t\t\tReceiversAlias: pulumi.String(invokeFormat.Result),\n\t\t\tReceiversName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Receivers;\nimport com.pulumi.alicloud.directmail.ReceiversArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexample\");\n var example = new Receivers(\"example\", ReceiversArgs.builder()\n .receiversAlias(StdFunctions.format(FormatArgs.builder()\n .input(\"%s@onaliyun.com\")\n .args(name)\n .build()).result())\n .receiversName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexample\nresources:\n example:\n type: alicloud:directmail:Receivers\n properties:\n receiversAlias:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s@onaliyun.com'\n args:\n - ${name}\n return: result\n receiversName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDirect Mail Receivers can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/receivers:Receivers example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -141349,7 +143978,7 @@
}
},
"alicloud:directmail/tag:Tag": {
- "description": "Provides a Direct Mail Tag resource.\n\nFor information about Direct Mail Tag and how to use it, see [What is Tag](https://www.alibabacloud.com/help/en/directmail/latest/createtag).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"example\";\nconst example = new alicloud.directmail.Tag(\"example\", {tagName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"example\"\nexample = alicloud.directmail.Tag(\"example\", tag_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"example\";\n var example = new AliCloud.DirectMail.Tag(\"example\", new()\n {\n TagName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := directmail.NewTag(ctx, \"example\", \u0026directmail.TagArgs{\n\t\t\tTagName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Tag;\nimport com.pulumi.alicloud.directmail.TagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"example\");\n var example = new Tag(\"example\", TagArgs.builder()\n .tagName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: example\nresources:\n example:\n type: alicloud:directmail:Tag\n properties:\n tagName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDirect Mail Tag can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/tag:Tag example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Direct Mail Tag resource.\n\nFor information about Direct Mail Tag and how to use it, see [What is Tag](https://www.alibabacloud.com/help/en/directmail/latest/createtag).\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"example\";\nconst example = new alicloud.directmail.Tag(\"example\", {tagName: name});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"example\"\nexample = alicloud.directmail.Tag(\"example\", tag_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"example\";\n var example = new AliCloud.DirectMail.Tag(\"example\", new()\n {\n TagName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/directmail\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := directmail.NewTag(ctx, \"example\", \u0026directmail.TagArgs{\n\t\t\tTagName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.directmail.Tag;\nimport com.pulumi.alicloud.directmail.TagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"example\");\n var example = new Tag(\"example\", TagArgs.builder()\n .tagName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: example\nresources:\n example:\n type: alicloud:directmail:Tag\n properties:\n tagName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDirect Mail Tag can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:directmail/tag:Tag example \u003cid\u003e\n```\n\n",
"properties": {
"tagName": {
"type": "string",
@@ -141380,7 +144009,7 @@
}
},
"alicloud:dms/airflow:Airflow": {
- "description": "Provides a Dms Airflow resource.\n\nAirflow instance, used to schedule jobs.\n\nFor information about Dms Airflow and how to use it, see [What is Airflow](https://next.api.alibabacloud.com/document/Dms/2025-04-14/CreateAirflow).\n\n\u003e **NOTE:** Available since v1.260.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = _default.then(_default =\u003e alicloud.vpc.getSwitches({\n vpcId: _default.ids?.[0],\n zoneId: \"cn-hangzhou-h\",\n}));\nconst securityGroup = new alicloud.ecs.SecurityGroup(\"security_group\", {\n description: \"terraform_example_group\",\n securityGroupName: \"terraform_example_group\",\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n securityGroupType: \"normal\",\n innerAccessPolicy: \"Accept\",\n});\nconst workspace = new alicloud.dms.EnterpriseWorkspace(\"workspace\", {\n description: \"terraform-example\",\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n workspaceName: \"terraform-example\",\n});\nconst defaultAirflow = new alicloud.dms.Airflow(\"default\", {\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n ossPath: \"/\",\n dagsDir: \"default/dags\",\n zoneId: \"cn-hangzhou-h\",\n workerServerlessReplicas: 0,\n description: \"terraform-example\",\n securityGroupId: securityGroup.id,\n requirementFile: \"default/requirements.txt\",\n airflowName: \"tfaccdms6513\",\n pluginsDir: \"default/plugins\",\n startupFile: \"default/startup.sh\",\n appSpec: \"SMALL\",\n ossBucketName: \"hansheng\",\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n workspaceId: workspace.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default.ids[0],\n zone_id=\"cn-hangzhou-h\")\nsecurity_group = alicloud.ecs.SecurityGroup(\"security_group\",\n description=\"terraform_example_group\",\n security_group_name=\"terraform_example_group\",\n vpc_id=default.ids[0],\n security_group_type=\"normal\",\n inner_access_policy=\"Accept\")\nworkspace = alicloud.dms.EnterpriseWorkspace(\"workspace\",\n description=\"terraform-example\",\n vpc_id=default.ids[0],\n workspace_name=\"terraform-example\")\ndefault_airflow = alicloud.dms.Airflow(\"default\",\n vpc_id=default.ids[0],\n oss_path=\"/\",\n dags_dir=\"default/dags\",\n zone_id=\"cn-hangzhou-h\",\n worker_serverless_replicas=0,\n description=\"terraform-example\",\n security_group_id=security_group.id,\n requirement_file=\"default/requirements.txt\",\n airflow_name=\"tfaccdms6513\",\n plugins_dir=\"default/plugins\",\n startup_file=\"default/startup.sh\",\n app_spec=\"SMALL\",\n oss_bucket_name=\"hansheng\",\n vswitch_id=default_get_switches.ids[0],\n workspace_id=workspace.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = \"cn-hangzhou-h\",\n });\n\n var securityGroup = new AliCloud.Ecs.SecurityGroup(\"security_group\", new()\n {\n Description = \"terraform_example_group\",\n SecurityGroupName = \"terraform_example_group\",\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n SecurityGroupType = \"normal\",\n InnerAccessPolicy = \"Accept\",\n });\n\n var workspace = new AliCloud.Dms.EnterpriseWorkspace(\"workspace\", new()\n {\n Description = \"terraform-example\",\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n WorkspaceName = \"terraform-example\",\n });\n\n var defaultAirflow = new AliCloud.Dms.Airflow(\"default\", new()\n {\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n OssPath = \"/\",\n DagsDir = \"default/dags\",\n ZoneId = \"cn-hangzhou-h\",\n WorkerServerlessReplicas = 0,\n Description = \"terraform-example\",\n SecurityGroupId = securityGroup.Id,\n RequirementFile = \"default/requirements.txt\",\n AirflowName = \"tfaccdms6513\",\n PluginsDir = \"default/plugins\",\n StartupFile = \"default/startup.sh\",\n AppSpec = \"SMALL\",\n OssBucketName = \"hansheng\",\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n WorkspaceId = workspace.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(_default.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(\"cn-hangzhou-h\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecurityGroup, err := ecs.NewSecurityGroup(ctx, \"security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tDescription: pulumi.String(\"terraform_example_group\"),\n\t\t\tSecurityGroupName: pulumi.String(\"terraform_example_group\"),\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tSecurityGroupType: pulumi.String(\"normal\"),\n\t\t\tInnerAccessPolicy: pulumi.String(\"Accept\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tworkspace, err := dms.NewEnterpriseWorkspace(ctx, \"workspace\", \u0026dms.EnterpriseWorkspaceArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tWorkspaceName: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewAirflow(ctx, \"default\", \u0026dms.AirflowArgs{\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tOssPath: pulumi.String(\"/\"),\n\t\t\tDagsDir: pulumi.String(\"default/dags\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-h\"),\n\t\t\tWorkerServerlessReplicas: pulumi.Int(0),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroupId: securityGroup.ID(),\n\t\t\tRequirementFile: pulumi.String(\"default/requirements.txt\"),\n\t\t\tAirflowName: pulumi.String(\"tfaccdms6513\"),\n\t\t\tPluginsDir: pulumi.String(\"default/plugins\"),\n\t\t\tStartupFile: pulumi.String(\"default/startup.sh\"),\n\t\t\tAppSpec: pulumi.String(\"SMALL\"),\n\t\t\tOssBucketName: pulumi.String(\"hansheng\"),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tWorkspaceId: workspace.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspace;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspaceArgs;\nimport com.pulumi.alicloud.dms.Airflow;\nimport com.pulumi.alicloud.dms.AirflowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(default_.ids()[0])\n .zoneId(\"cn-hangzhou-h\")\n .build());\n\n var securityGroup = new SecurityGroup(\"securityGroup\", SecurityGroupArgs.builder()\n .description(\"terraform_example_group\")\n .securityGroupName(\"terraform_example_group\")\n .vpcId(default_.ids()[0])\n .securityGroupType(\"normal\")\n .innerAccessPolicy(\"Accept\")\n .build());\n\n var workspace = new EnterpriseWorkspace(\"workspace\", EnterpriseWorkspaceArgs.builder()\n .description(\"terraform-example\")\n .vpcId(default_.ids()[0])\n .workspaceName(\"terraform-example\")\n .build());\n\n var defaultAirflow = new Airflow(\"defaultAirflow\", AirflowArgs.builder()\n .vpcId(default_.ids()[0])\n .ossPath(\"/\")\n .dagsDir(\"default/dags\")\n .zoneId(\"cn-hangzhou-h\")\n .workerServerlessReplicas(0)\n .description(\"terraform-example\")\n .securityGroupId(securityGroup.id())\n .requirementFile(\"default/requirements.txt\")\n .airflowName(\"tfaccdms6513\")\n .pluginsDir(\"default/plugins\")\n .startupFile(\"default/startup.sh\")\n .appSpec(\"SMALL\")\n .ossBucketName(\"hansheng\")\n .vswitchId(defaultGetSwitches.ids()[0])\n .workspaceId(workspace.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n securityGroup:\n type: alicloud:ecs:SecurityGroup\n name: security_group\n properties:\n description: terraform_example_group\n securityGroupName: terraform_example_group\n vpcId: ${default.ids[0]}\n securityGroupType: normal\n innerAccessPolicy: Accept\n workspace:\n type: alicloud:dms:EnterpriseWorkspace\n properties:\n description: terraform-example\n vpcId: ${default.ids[0]}\n workspaceName: terraform-example\n defaultAirflow:\n type: alicloud:dms:Airflow\n name: default\n properties:\n vpcId: ${default.ids[0]}\n ossPath: /\n dagsDir: default/dags\n zoneId: cn-hangzhou-h\n workerServerlessReplicas: '0'\n description: terraform-example\n securityGroupId: ${securityGroup.id}\n requirementFile: default/requirements.txt\n airflowName: tfaccdms6513\n pluginsDir: default/plugins\n startupFile: default/startup.sh\n appSpec: SMALL\n ossBucketName: hansheng\n vswitchId: ${defaultGetSwitches.ids[0]}\n workspaceId: ${workspace.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${default.ids[0]}\n zoneId: cn-hangzhou-h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDms Airflow can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/airflow:Airflow example \u003cworkspace_id\u003e:\u003cairflow_id\u003e\n```\n\n",
+ "description": "Provides a Dms Airflow resource.\n\nAirflow instance, used to schedule jobs.\n\nFor information about Dms Airflow and how to use it, see [What is Airflow](https://next.api.alibabacloud.com/document/Dms/2025-04-14/CreateAirflow).\n\n\u003e **NOTE:** Available since v1.260.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.vpc.getNetworks({\n nameRegex: \"^default-NODELETING$\",\n});\nconst defaultGetSwitches = _default.then(_default =\u003e alicloud.vpc.getSwitches({\n vpcId: _default.ids?.[0],\n zoneId: \"cn-hangzhou-h\",\n}));\nconst securityGroup = new alicloud.ecs.SecurityGroup(\"security_group\", {\n description: \"terraform_example_group\",\n securityGroupName: \"terraform_example_group\",\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n securityGroupType: \"normal\",\n innerAccessPolicy: \"Accept\",\n});\nconst workspace = new alicloud.dms.EnterpriseWorkspace(\"workspace\", {\n description: \"terraform-example\",\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n workspaceName: \"terraform-example\",\n});\nconst defaultAirflow = new alicloud.dms.Airflow(\"default\", {\n vpcId: _default.then(_default =\u003e _default.ids?.[0]),\n ossPath: \"/\",\n dagsDir: \"default/dags\",\n zoneId: \"cn-hangzhou-h\",\n workerServerlessReplicas: 0,\n description: \"terraform-example\",\n securityGroupId: securityGroup.id,\n requirementFile: \"default/requirements.txt\",\n airflowName: \"tfaccdms6513\",\n pluginsDir: \"default/plugins\",\n startupFile: \"default/startup.sh\",\n appSpec: \"SMALL\",\n ossBucketName: \"hansheng\",\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.ids?.[0]),\n workspaceId: workspace.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.vpc.get_networks(name_regex=\"^default-NODELETING$\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default.ids[0],\n zone_id=\"cn-hangzhou-h\")\nsecurity_group = alicloud.ecs.SecurityGroup(\"security_group\",\n description=\"terraform_example_group\",\n security_group_name=\"terraform_example_group\",\n vpc_id=default.ids[0],\n security_group_type=\"normal\",\n inner_access_policy=\"Accept\")\nworkspace = alicloud.dms.EnterpriseWorkspace(\"workspace\",\n description=\"terraform-example\",\n vpc_id=default.ids[0],\n workspace_name=\"terraform-example\")\ndefault_airflow = alicloud.dms.Airflow(\"default\",\n vpc_id=default.ids[0],\n oss_path=\"/\",\n dags_dir=\"default/dags\",\n zone_id=\"cn-hangzhou-h\",\n worker_serverless_replicas=0,\n description=\"terraform-example\",\n security_group_id=security_group.id,\n requirement_file=\"default/requirements.txt\",\n airflow_name=\"tfaccdms6513\",\n plugins_dir=\"default/plugins\",\n startup_file=\"default/startup.sh\",\n app_spec=\"SMALL\",\n oss_bucket_name=\"hansheng\",\n vswitch_id=default_get_switches.ids[0],\n workspace_id=workspace.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"^default-NODELETING$\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n ZoneId = \"cn-hangzhou-h\",\n });\n\n var securityGroup = new AliCloud.Ecs.SecurityGroup(\"security_group\", new()\n {\n Description = \"terraform_example_group\",\n SecurityGroupName = \"terraform_example_group\",\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n SecurityGroupType = \"normal\",\n InnerAccessPolicy = \"Accept\",\n });\n\n var workspace = new AliCloud.Dms.EnterpriseWorkspace(\"workspace\", new()\n {\n Description = \"terraform-example\",\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n WorkspaceName = \"terraform-example\",\n });\n\n var defaultAirflow = new AliCloud.Dms.Airflow(\"default\", new()\n {\n VpcId = @default.Apply(@default =\u003e @default.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0])),\n OssPath = \"/\",\n DagsDir = \"default/dags\",\n ZoneId = \"cn-hangzhou-h\",\n WorkerServerlessReplicas = 0,\n Description = \"terraform-example\",\n SecurityGroupId = securityGroup.Id,\n RequirementFile = \"default/requirements.txt\",\n AirflowName = \"tfaccdms6513\",\n PluginsDir = \"default/plugins\",\n StartupFile = \"default/startup.sh\",\n AppSpec = \"SMALL\",\n OssBucketName = \"hansheng\",\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Ids[0]),\n WorkspaceId = workspace.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^default-NODELETING$\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(_default.Ids[0]),\n\t\t\tZoneId: pulumi.StringRef(\"cn-hangzhou-h\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tsecurityGroup, err := ecs.NewSecurityGroup(ctx, \"security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tDescription: pulumi.String(\"terraform_example_group\"),\n\t\t\tSecurityGroupName: pulumi.String(\"terraform_example_group\"),\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tSecurityGroupType: pulumi.String(\"normal\"),\n\t\t\tInnerAccessPolicy: pulumi.String(\"Accept\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tworkspace, err := dms.NewEnterpriseWorkspace(ctx, \"workspace\", \u0026dms.EnterpriseWorkspaceArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tWorkspaceName: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewAirflow(ctx, \"default\", \u0026dms.AirflowArgs{\n\t\t\tVpcId: pulumi.String(_default.Ids[0]),\n\t\t\tOssPath: pulumi.String(\"/\"),\n\t\t\tDagsDir: pulumi.String(\"default/dags\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-h\"),\n\t\t\tWorkerServerlessReplicas: pulumi.Int(0),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroupId: securityGroup.ID(),\n\t\t\tRequirementFile: pulumi.String(\"default/requirements.txt\"),\n\t\t\tAirflowName: pulumi.String(\"tfaccdms6513\"),\n\t\t\tPluginsDir: pulumi.String(\"default/plugins\"),\n\t\t\tStartupFile: pulumi.String(\"default/startup.sh\"),\n\t\t\tAppSpec: pulumi.String(\"SMALL\"),\n\t\t\tOssBucketName: pulumi.String(\"hansheng\"),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Ids[0]),\n\t\t\tWorkspaceId: workspace.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspace;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspaceArgs;\nimport com.pulumi.alicloud.dms.Airflow;\nimport com.pulumi.alicloud.dms.AirflowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"^default-NODELETING$\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(default_.ids()[0])\n .zoneId(\"cn-hangzhou-h\")\n .build());\n\n var securityGroup = new SecurityGroup(\"securityGroup\", SecurityGroupArgs.builder()\n .description(\"terraform_example_group\")\n .securityGroupName(\"terraform_example_group\")\n .vpcId(default_.ids()[0])\n .securityGroupType(\"normal\")\n .innerAccessPolicy(\"Accept\")\n .build());\n\n var workspace = new EnterpriseWorkspace(\"workspace\", EnterpriseWorkspaceArgs.builder()\n .description(\"terraform-example\")\n .vpcId(default_.ids()[0])\n .workspaceName(\"terraform-example\")\n .build());\n\n var defaultAirflow = new Airflow(\"defaultAirflow\", AirflowArgs.builder()\n .vpcId(default_.ids()[0])\n .ossPath(\"/\")\n .dagsDir(\"default/dags\")\n .zoneId(\"cn-hangzhou-h\")\n .workerServerlessReplicas(0)\n .description(\"terraform-example\")\n .securityGroupId(securityGroup.id())\n .requirementFile(\"default/requirements.txt\")\n .airflowName(\"tfaccdms6513\")\n .pluginsDir(\"default/plugins\")\n .startupFile(\"default/startup.sh\")\n .appSpec(\"SMALL\")\n .ossBucketName(\"hansheng\")\n .vswitchId(defaultGetSwitches.ids()[0])\n .workspaceId(workspace.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n securityGroup:\n type: alicloud:ecs:SecurityGroup\n name: security_group\n properties:\n description: terraform_example_group\n securityGroupName: terraform_example_group\n vpcId: ${default.ids[0]}\n securityGroupType: normal\n innerAccessPolicy: Accept\n workspace:\n type: alicloud:dms:EnterpriseWorkspace\n properties:\n description: terraform-example\n vpcId: ${default.ids[0]}\n workspaceName: terraform-example\n defaultAirflow:\n type: alicloud:dms:Airflow\n name: default\n properties:\n vpcId: ${default.ids[0]}\n ossPath: /\n dagsDir: default/dags\n zoneId: cn-hangzhou-h\n workerServerlessReplicas: '0'\n description: terraform-example\n securityGroupId: ${securityGroup.id}\n requirementFile: default/requirements.txt\n airflowName: tfaccdms6513\n pluginsDir: default/plugins\n startupFile: default/startup.sh\n appSpec: SMALL\n ossBucketName: hansheng\n vswitchId: ${defaultGetSwitches.ids[0]}\n workspaceId: ${workspace.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: ^default-NODELETING$\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${default.ids[0]}\n zoneId: cn-hangzhou-h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDms Airflow can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/airflow:Airflow example \u003cworkspace_id\u003e:\u003cairflow_id\u003e\n```\n\n",
"properties": {
"airflowId": {
"type": "string",
@@ -141631,7 +144260,7 @@
}
},
"alicloud:dms/enterpriseAuthorityTemplate:EnterpriseAuthorityTemplate": {
- "description": "Provides a DMS Enterprise Authority Template resource. \n\nFor information about DMS Enterprise Authority Template and how to use it, see [What is Authority Template](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-createauthoritytemplate).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultEnterpriseAuthorityTemplate = new alicloud.dms.EnterpriseAuthorityTemplate(\"default\", {\n tid: _default.then(_default =\u003e _default.ids?.[0]),\n authorityTemplateName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_enterprise_authority_template = alicloud.dms.EnterpriseAuthorityTemplate(\"default\",\n tid=default.ids[0],\n authority_template_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultEnterpriseAuthorityTemplate = new AliCloud.Dms.EnterpriseAuthorityTemplate(\"default\", new()\n {\n Tid = @default.Apply(@default =\u003e @default.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0])),\n AuthorityTemplateName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseAuthorityTemplate(ctx, \"default\", \u0026dms.EnterpriseAuthorityTemplateArgs{\n\t\t\tTid: pulumi.String(_default.Ids[0]),\n\t\t\tAuthorityTemplateName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.dms.EnterpriseAuthorityTemplate;\nimport com.pulumi.alicloud.dms.EnterpriseAuthorityTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n var defaultEnterpriseAuthorityTemplate = new EnterpriseAuthorityTemplate(\"defaultEnterpriseAuthorityTemplate\", EnterpriseAuthorityTemplateArgs.builder()\n .tid(default_.ids()[0])\n .authorityTemplateName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultEnterpriseAuthorityTemplate:\n type: alicloud:dms:EnterpriseAuthorityTemplate\n name: default\n properties:\n tid: ${default.ids[0]}\n authorityTemplateName: ${name}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise Authority Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseAuthorityTemplate:EnterpriseAuthorityTemplate example \u003ctid\u003e:\u003cauthority_template_id\u003e\n```\n\n",
+ "description": "Provides a DMS Enterprise Authority Template resource. \n\nFor information about DMS Enterprise Authority Template and how to use it, see [What is Authority Template](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-createauthoritytemplate).\n\n\u003e **NOTE:** Available since v1.212.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultEnterpriseAuthorityTemplate = new alicloud.dms.EnterpriseAuthorityTemplate(\"default\", {\n tid: _default.then(_default =\u003e _default.ids?.[0]),\n authorityTemplateName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_enterprise_authority_template = alicloud.dms.EnterpriseAuthorityTemplate(\"default\",\n tid=default.ids[0],\n authority_template_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultEnterpriseAuthorityTemplate = new AliCloud.Dms.EnterpriseAuthorityTemplate(\"default\", new()\n {\n Tid = @default.Apply(@default =\u003e @default.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0])),\n AuthorityTemplateName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseAuthorityTemplate(ctx, \"default\", \u0026dms.EnterpriseAuthorityTemplateArgs{\n\t\t\tTid: pulumi.String(_default.Ids[0]),\n\t\t\tAuthorityTemplateName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.dms.EnterpriseAuthorityTemplate;\nimport com.pulumi.alicloud.dms.EnterpriseAuthorityTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n var defaultEnterpriseAuthorityTemplate = new EnterpriseAuthorityTemplate(\"defaultEnterpriseAuthorityTemplate\", EnterpriseAuthorityTemplateArgs.builder()\n .tid(default_.ids()[0])\n .authorityTemplateName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultEnterpriseAuthorityTemplate:\n type: alicloud:dms:EnterpriseAuthorityTemplate\n name: default\n properties:\n tid: ${default.ids[0]}\n authorityTemplateName: ${name}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise Authority Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseAuthorityTemplate:EnterpriseAuthorityTemplate example \u003ctid\u003e:\u003cauthority_template_id\u003e\n```\n\n",
"properties": {
"authorityTemplateId": {
"type": "integer",
@@ -141708,7 +144337,7 @@
}
},
"alicloud:dms/enterpriseInstance:EnterpriseInstance": {
- "description": "Provides a DMS Enterprise Instance resource.\n\n\u003e **NOTE:** API users must first register in DMS.\n\n\u003e **NOTE:** Available since v1.81.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst current = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetUserTenants = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: defaultSwitch.id,\n instanceName: name,\n securityIps: [\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAccount = new alicloud.rds.Account(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfexamplename\",\n accountPassword: \"Example12345\",\n accountType: \"Normal\",\n});\nconst defaultEnterpriseInstance = new alicloud.dms.EnterpriseInstance(\"default\", {\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n instanceType: \"mysql\",\n instanceSource: \"RDS\",\n networkType: \"VPC\",\n envType: \"dev\",\n host: defaultInstance.connectionString,\n port: 3306,\n databaseUser: defaultAccount.accountName,\n databasePassword: defaultAccount.accountPassword,\n instanceName: name,\n dbaUid: current.then(current =\u003e current.id),\n safeRule: \"904496\",\n useDsql: 1,\n queryTimeout: 60,\n exportTimeout: 600,\n ecsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ncurrent = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\ndefault_get_user_tenants = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=default_switch.id,\n instance_name=name,\n security_ips=[\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_account = alicloud.rds.Account(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfexamplename\",\n account_password=\"Example12345\",\n account_type=\"Normal\")\ndefault_enterprise_instance = alicloud.dms.EnterpriseInstance(\"default\",\n tid=default_get_user_tenants.ids[0],\n instance_type=\"mysql\",\n instance_source=\"RDS\",\n network_type=\"VPC\",\n env_type=\"dev\",\n host=default_instance.connection_string,\n port=3306,\n database_user=default_account.account_name,\n database_password=default_account.account_password,\n instance_name=name,\n dba_uid=current.id,\n safe_rule=\"904496\",\n use_dsql=1,\n query_timeout=60,\n export_timeout=600,\n ecs_region=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetUserTenants = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n SecurityIps = new[]\n {\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAccount = new AliCloud.Rds.Account(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfexamplename\",\n AccountPassword = \"Example12345\",\n AccountType = \"Normal\",\n });\n\n var defaultEnterpriseInstance = new AliCloud.Dms.EnterpriseInstance(\"default\", new()\n {\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n InstanceType = \"mysql\",\n InstanceSource = \"RDS\",\n NetworkType = \"VPC\",\n EnvType = \"dev\",\n Host = defaultInstance.ConnectionString,\n Port = 3306,\n DatabaseUser = defaultAccount.AccountName,\n DatabasePassword = defaultAccount.AccountPassword,\n InstanceName = name,\n DbaUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n SafeRule = \"904496\",\n UseDsql = 1,\n QueryTimeout = 60,\n ExportTimeout = 600,\n EcsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetUserTenants, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"100.104.5.0/24\"),\n\t\t\t\tpulumi.String(\"192.168.0.6\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := rds.NewAccount(ctx, \"default\", \u0026rds.AccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfexamplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example12345\"),\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseInstance(ctx, \"default\", \u0026dms.EnterpriseInstanceArgs{\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t\tInstanceType: pulumi.String(\"mysql\"),\n\t\t\tInstanceSource: pulumi.String(\"RDS\"),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tEnvType: pulumi.String(\"dev\"),\n\t\t\tHost: defaultInstance.ConnectionString,\n\t\t\tPort: pulumi.Int(3306),\n\t\t\tDatabaseUser: defaultAccount.AccountName,\n\t\t\tDatabasePassword: defaultAccount.AccountPassword,\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDbaUid: pulumi.String(current.Id),\n\t\t\tSafeRule: pulumi.String(\"904496\"),\n\t\t\tUseDsql: pulumi.Int(1),\n\t\t\tQueryTimeout: pulumi.Int(60),\n\t\t\tExportTimeout: pulumi.Int(600),\n\t\t\tEcsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Account;\nimport com.pulumi.alicloud.rds.AccountArgs;\nimport com.pulumi.alicloud.dms.EnterpriseInstance;\nimport com.pulumi.alicloud.dms.EnterpriseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetUserTenants = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .securityIps( \n \"100.104.5.0/24\",\n \"192.168.0.6\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfexamplename\")\n .accountPassword(\"Example12345\")\n .accountType(\"Normal\")\n .build());\n\n var defaultEnterpriseInstance = new EnterpriseInstance(\"defaultEnterpriseInstance\", EnterpriseInstanceArgs.builder()\n .tid(defaultGetUserTenants.ids()[0])\n .instanceType(\"mysql\")\n .instanceSource(\"RDS\")\n .networkType(\"VPC\")\n .envType(\"dev\")\n .host(defaultInstance.connectionString())\n .port(3306)\n .databaseUser(defaultAccount.accountName())\n .databasePassword(defaultAccount.accountPassword())\n .instanceName(name)\n .dbaUid(current.id())\n .safeRule(\"904496\")\n .useDsql(1)\n .queryTimeout(60)\n .exportTimeout(600)\n .ecsRegion(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${defaultSwitch.id}\n instanceName: ${name}\n securityIps:\n - 100.104.5.0/24\n - 192.168.0.6\n tags:\n Created: TF\n For: example\n defaultAccount:\n type: alicloud:rds:Account\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfexamplename\n accountPassword: Example12345\n accountType: Normal\n defaultEnterpriseInstance:\n type: alicloud:dms:EnterpriseInstance\n name: default\n properties:\n tid: ${defaultGetUserTenants.ids[0]}\n instanceType: mysql\n instanceSource: RDS\n networkType: VPC\n envType: dev\n host: ${defaultInstance.connectionString}\n port: 3306\n databaseUser: ${defaultAccount.accountName}\n databasePassword: ${defaultAccount.accountPassword}\n instanceName: ${name}\n dbaUid: ${current.id}\n safeRule: '904496'\n useDsql: 1\n queryTimeout: 60\n exportTimeout: 600\n ecsRegion: ${default.regions[0].id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetUserTenants:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise can be imported using host and port, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseInstance:EnterpriseInstance example rm-uf648hgs7874xxxx.mysql.rds.aliyuncs.com:3306\n```\n\n",
+ "description": "Provides a DMS Enterprise Instance resource.\n\n\u003e **NOTE:** API users must first register in DMS.\n\n\u003e **NOTE:** Available since v1.81.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst current = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetUserTenants = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: defaultSwitch.id,\n instanceName: name,\n securityIps: [\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAccount = new alicloud.rds.Account(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfexamplename\",\n accountPassword: \"Example12345\",\n accountType: \"Normal\",\n});\nconst defaultEnterpriseInstance = new alicloud.dms.EnterpriseInstance(\"default\", {\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n instanceType: \"mysql\",\n instanceSource: \"RDS\",\n networkType: \"VPC\",\n envType: \"dev\",\n host: defaultInstance.connectionString,\n port: 3306,\n databaseUser: defaultAccount.accountName,\n databasePassword: defaultAccount.accountPassword,\n instanceName: name,\n dbaUid: current.then(current =\u003e current.id),\n safeRule: \"904496\",\n useDsql: 1,\n queryTimeout: 60,\n exportTimeout: 600,\n ecsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ncurrent = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\ndefault_get_user_tenants = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=default_switch.id,\n instance_name=name,\n security_ips=[\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_account = alicloud.rds.Account(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfexamplename\",\n account_password=\"Example12345\",\n account_type=\"Normal\")\ndefault_enterprise_instance = alicloud.dms.EnterpriseInstance(\"default\",\n tid=default_get_user_tenants.ids[0],\n instance_type=\"mysql\",\n instance_source=\"RDS\",\n network_type=\"VPC\",\n env_type=\"dev\",\n host=default_instance.connection_string,\n port=3306,\n database_user=default_account.account_name,\n database_password=default_account.account_password,\n instance_name=name,\n dba_uid=current.id,\n safe_rule=\"904496\",\n use_dsql=1,\n query_timeout=60,\n export_timeout=600,\n ecs_region=default.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetUserTenants = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n SecurityIps = new[]\n {\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAccount = new AliCloud.Rds.Account(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfexamplename\",\n AccountPassword = \"Example12345\",\n AccountType = \"Normal\",\n });\n\n var defaultEnterpriseInstance = new AliCloud.Dms.EnterpriseInstance(\"default\", new()\n {\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n InstanceType = \"mysql\",\n InstanceSource = \"RDS\",\n NetworkType = \"VPC\",\n EnvType = \"dev\",\n Host = defaultInstance.ConnectionString,\n Port = 3306,\n DatabaseUser = defaultAccount.AccountName,\n DatabasePassword = defaultAccount.AccountPassword,\n InstanceName = name,\n DbaUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n SafeRule = \"904496\",\n UseDsql = 1,\n QueryTimeout = 60,\n ExportTimeout = 600,\n EcsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetUserTenants, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"100.104.5.0/24\"),\n\t\t\t\tpulumi.String(\"192.168.0.6\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := rds.NewAccount(ctx, \"default\", \u0026rds.AccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfexamplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example12345\"),\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseInstance(ctx, \"default\", \u0026dms.EnterpriseInstanceArgs{\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t\tInstanceType: pulumi.String(\"mysql\"),\n\t\t\tInstanceSource: pulumi.String(\"RDS\"),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tEnvType: pulumi.String(\"dev\"),\n\t\t\tHost: defaultInstance.ConnectionString,\n\t\t\tPort: pulumi.Int(3306),\n\t\t\tDatabaseUser: defaultAccount.AccountName,\n\t\t\tDatabasePassword: defaultAccount.AccountPassword,\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDbaUid: pulumi.String(current.Id),\n\t\t\tSafeRule: pulumi.String(\"904496\"),\n\t\t\tUseDsql: pulumi.Int(1),\n\t\t\tQueryTimeout: pulumi.Int(60),\n\t\t\tExportTimeout: pulumi.Int(600),\n\t\t\tEcsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Account;\nimport com.pulumi.alicloud.rds.AccountArgs;\nimport com.pulumi.alicloud.dms.EnterpriseInstance;\nimport com.pulumi.alicloud.dms.EnterpriseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetUserTenants = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .securityIps( \n \"100.104.5.0/24\",\n \"192.168.0.6\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfexamplename\")\n .accountPassword(\"Example12345\")\n .accountType(\"Normal\")\n .build());\n\n var defaultEnterpriseInstance = new EnterpriseInstance(\"defaultEnterpriseInstance\", EnterpriseInstanceArgs.builder()\n .tid(defaultGetUserTenants.ids()[0])\n .instanceType(\"mysql\")\n .instanceSource(\"RDS\")\n .networkType(\"VPC\")\n .envType(\"dev\")\n .host(defaultInstance.connectionString())\n .port(3306)\n .databaseUser(defaultAccount.accountName())\n .databasePassword(defaultAccount.accountPassword())\n .instanceName(name)\n .dbaUid(current.id())\n .safeRule(\"904496\")\n .useDsql(1)\n .queryTimeout(60)\n .exportTimeout(600)\n .ecsRegion(default_.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${defaultSwitch.id}\n instanceName: ${name}\n securityIps:\n - 100.104.5.0/24\n - 192.168.0.6\n tags:\n Created: TF\n For: example\n defaultAccount:\n type: alicloud:rds:Account\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfexamplename\n accountPassword: Example12345\n accountType: Normal\n defaultEnterpriseInstance:\n type: alicloud:dms:EnterpriseInstance\n name: default\n properties:\n tid: ${defaultGetUserTenants.ids[0]}\n instanceType: mysql\n instanceSource: RDS\n networkType: VPC\n envType: dev\n host: ${defaultInstance.connectionString}\n port: 3306\n databaseUser: ${defaultAccount.accountName}\n databasePassword: ${defaultAccount.accountPassword}\n instanceName: ${name}\n dbaUid: ${current.id}\n safeRule: '904496'\n useDsql: 1\n queryTimeout: 60\n exportTimeout: 600\n ecsRegion: ${default.regions[0].id}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetUserTenants:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise can be imported using host and port, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseInstance:EnterpriseInstance example rm-uf648hgs7874xxxx.mysql.rds.aliyuncs.com:3306\n```\n\n",
"properties": {
"dataLinkName": {
"type": "string",
@@ -142114,7 +144743,7 @@
}
},
"alicloud:dms/enterpriseLogicDatabase:EnterpriseLogicDatabase": {
- "description": "Provides a DMS Enterprise Logic Database resource.\n\nFor information about DMS Enterprise Logic Database and how to use it, see [What is Logic Database](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-createlogicdatabase).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dms.EnterpriseLogicDatabase(\"default\", {\n alias: \"TF_logic_db_test\",\n databaseIds: [\n \"35617919\",\n \"35617920\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dms.EnterpriseLogicDatabase(\"default\",\n alias=\"TF_logic_db_test\",\n database_ids=[\n \"35617919\",\n \"35617920\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dms.EnterpriseLogicDatabase(\"default\", new()\n {\n Alias = \"TF_logic_db_test\",\n DatabaseIds = new[]\n {\n \"35617919\",\n \"35617920\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dms.NewEnterpriseLogicDatabase(ctx, \"default\", \u0026dms.EnterpriseLogicDatabaseArgs{\n\t\t\tAlias: pulumi.String(\"TF_logic_db_test\"),\n\t\t\tDatabaseIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"35617919\"),\n\t\t\t\tpulumi.String(\"35617920\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.EnterpriseLogicDatabase;\nimport com.pulumi.alicloud.dms.EnterpriseLogicDatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EnterpriseLogicDatabase(\"default\", EnterpriseLogicDatabaseArgs.builder()\n .alias(\"TF_logic_db_test\")\n .databaseIds( \n \"35617919\",\n \"35617920\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dms:EnterpriseLogicDatabase\n properties:\n alias: TF_logic_db_test\n databaseIds:\n - '35617919'\n - '35617920'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise Logic Database can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseLogicDatabase:EnterpriseLogicDatabase example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DMS Enterprise Logic Database resource.\n\nFor information about DMS Enterprise Logic Database and how to use it, see [What is Logic Database](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-createlogicdatabase).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dms.EnterpriseLogicDatabase(\"default\", {\n alias: \"TF_logic_db_test\",\n databaseIds: [\n \"35617919\",\n \"35617920\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dms.EnterpriseLogicDatabase(\"default\",\n alias=\"TF_logic_db_test\",\n database_ids=[\n \"35617919\",\n \"35617920\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dms.EnterpriseLogicDatabase(\"default\", new()\n {\n Alias = \"TF_logic_db_test\",\n DatabaseIds = new[]\n {\n \"35617919\",\n \"35617920\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dms.NewEnterpriseLogicDatabase(ctx, \"default\", \u0026dms.EnterpriseLogicDatabaseArgs{\n\t\t\tAlias: pulumi.String(\"TF_logic_db_test\"),\n\t\t\tDatabaseIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"35617919\"),\n\t\t\t\tpulumi.String(\"35617920\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.EnterpriseLogicDatabase;\nimport com.pulumi.alicloud.dms.EnterpriseLogicDatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EnterpriseLogicDatabase(\"default\", EnterpriseLogicDatabaseArgs.builder()\n .alias(\"TF_logic_db_test\")\n .databaseIds( \n \"35617919\",\n \"35617920\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dms:EnterpriseLogicDatabase\n properties:\n alias: TF_logic_db_test\n databaseIds:\n - '35617919'\n - '35617920'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise Logic Database can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseLogicDatabase:EnterpriseLogicDatabase example \u003cid\u003e\n```\n\n",
"properties": {
"alias": {
"type": "string",
@@ -142256,7 +144885,7 @@
}
},
"alicloud:dms/enterpriseProxy:EnterpriseProxy": {
- "description": "Provides a DMS Enterprise Proxy resource.\n\nFor information about DMS Enterprise Proxy and how to use it, see [What is Proxy](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateProxy).\n\n\u003e **NOTE:** Available since v1.188.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst current = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetUserTenants = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[1]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: defaultSwitch.id,\n instanceName: name,\n securityIps: [\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAccount = new alicloud.rds.Account(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfexamplename\",\n accountPassword: \"Example12345\",\n accountType: \"Normal\",\n});\nconst defaultEnterpriseInstance = new alicloud.dms.EnterpriseInstance(\"default\", {\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n instanceType: \"mysql\",\n instanceSource: \"RDS\",\n networkType: \"VPC\",\n envType: \"dev\",\n host: defaultInstance.connectionString,\n port: 3306,\n databaseUser: defaultAccount.accountName,\n databasePassword: defaultAccount.accountPassword,\n instanceName: name,\n dbaUid: current.then(current =\u003e current.id),\n safeRule: \"自由操作\",\n queryTimeout: 60,\n exportTimeout: 600,\n ecsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst defaultEnterpriseProxy = new alicloud.dms.EnterpriseProxy(\"default\", {\n instanceId: defaultEnterpriseInstance.instanceId,\n password: \"Example12345\",\n username: \"tfexamplename\",\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ncurrent = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\ndefault_get_user_tenants = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[1].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[1].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=default_switch.id,\n instance_name=name,\n security_ips=[\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_account = alicloud.rds.Account(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfexamplename\",\n account_password=\"Example12345\",\n account_type=\"Normal\")\ndefault_enterprise_instance = alicloud.dms.EnterpriseInstance(\"default\",\n tid=default_get_user_tenants.ids[0],\n instance_type=\"mysql\",\n instance_source=\"RDS\",\n network_type=\"VPC\",\n env_type=\"dev\",\n host=default_instance.connection_string,\n port=3306,\n database_user=default_account.account_name,\n database_password=default_account.account_password,\n instance_name=name,\n dba_uid=current.id,\n safe_rule=\"自由操作\",\n query_timeout=60,\n export_timeout=600,\n ecs_region=default.regions[0].id)\ndefault_enterprise_proxy = alicloud.dms.EnterpriseProxy(\"default\",\n instance_id=default_enterprise_instance.instance_id,\n password=\"Example12345\",\n username=\"tfexamplename\",\n tid=default_get_user_tenants.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetUserTenants = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n SecurityIps = new[]\n {\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAccount = new AliCloud.Rds.Account(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfexamplename\",\n AccountPassword = \"Example12345\",\n AccountType = \"Normal\",\n });\n\n var defaultEnterpriseInstance = new AliCloud.Dms.EnterpriseInstance(\"default\", new()\n {\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n InstanceType = \"mysql\",\n InstanceSource = \"RDS\",\n NetworkType = \"VPC\",\n EnvType = \"dev\",\n Host = defaultInstance.ConnectionString,\n Port = 3306,\n DatabaseUser = defaultAccount.AccountName,\n DatabasePassword = defaultAccount.AccountPassword,\n InstanceName = name,\n DbaUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n SafeRule = \"自由操作\",\n QueryTimeout = 60,\n ExportTimeout = 600,\n EcsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var defaultEnterpriseProxy = new AliCloud.Dms.EnterpriseProxy(\"default\", new()\n {\n InstanceId = defaultEnterpriseInstance.InstanceId,\n Password = \"Example12345\",\n Username = \"tfexamplename\",\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetUserTenants, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"100.104.5.0/24\"),\n\t\t\t\tpulumi.String(\"192.168.0.6\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := rds.NewAccount(ctx, \"default\", \u0026rds.AccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfexamplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example12345\"),\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEnterpriseInstance, err := dms.NewEnterpriseInstance(ctx, \"default\", \u0026dms.EnterpriseInstanceArgs{\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t\tInstanceType: pulumi.String(\"mysql\"),\n\t\t\tInstanceSource: pulumi.String(\"RDS\"),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tEnvType: pulumi.String(\"dev\"),\n\t\t\tHost: defaultInstance.ConnectionString,\n\t\t\tPort: pulumi.Int(3306),\n\t\t\tDatabaseUser: defaultAccount.AccountName,\n\t\t\tDatabasePassword: defaultAccount.AccountPassword,\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDbaUid: pulumi.String(current.Id),\n\t\t\tSafeRule: pulumi.String(\"自由操作\"),\n\t\t\tQueryTimeout: pulumi.Int(60),\n\t\t\tExportTimeout: pulumi.Int(600),\n\t\t\tEcsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseProxy(ctx, \"default\", \u0026dms.EnterpriseProxyArgs{\n\t\t\tInstanceId: defaultEnterpriseInstance.InstanceId,\n\t\t\tPassword: pulumi.String(\"Example12345\"),\n\t\t\tUsername: pulumi.String(\"tfexamplename\"),\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Account;\nimport com.pulumi.alicloud.rds.AccountArgs;\nimport com.pulumi.alicloud.dms.EnterpriseInstance;\nimport com.pulumi.alicloud.dms.EnterpriseInstanceArgs;\nimport com.pulumi.alicloud.dms.EnterpriseProxy;\nimport com.pulumi.alicloud.dms.EnterpriseProxyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetUserTenants = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[1].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[1].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .securityIps( \n \"100.104.5.0/24\",\n \"192.168.0.6\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfexamplename\")\n .accountPassword(\"Example12345\")\n .accountType(\"Normal\")\n .build());\n\n var defaultEnterpriseInstance = new EnterpriseInstance(\"defaultEnterpriseInstance\", EnterpriseInstanceArgs.builder()\n .tid(defaultGetUserTenants.ids()[0])\n .instanceType(\"mysql\")\n .instanceSource(\"RDS\")\n .networkType(\"VPC\")\n .envType(\"dev\")\n .host(defaultInstance.connectionString())\n .port(3306)\n .databaseUser(defaultAccount.accountName())\n .databasePassword(defaultAccount.accountPassword())\n .instanceName(name)\n .dbaUid(current.id())\n .safeRule(\"自由操作\")\n .queryTimeout(60)\n .exportTimeout(600)\n .ecsRegion(default_.regions()[0].id())\n .build());\n\n var defaultEnterpriseProxy = new EnterpriseProxy(\"defaultEnterpriseProxy\", EnterpriseProxyArgs.builder()\n .instanceId(defaultEnterpriseInstance.instanceId())\n .password(\"Example12345\")\n .username(\"tfexamplename\")\n .tid(defaultGetUserTenants.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[1].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${defaultSwitch.id}\n instanceName: ${name}\n securityIps:\n - 100.104.5.0/24\n - 192.168.0.6\n tags:\n Created: TF\n For: example\n defaultAccount:\n type: alicloud:rds:Account\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfexamplename\n accountPassword: Example12345\n accountType: Normal\n defaultEnterpriseInstance:\n type: alicloud:dms:EnterpriseInstance\n name: default\n properties:\n tid: ${defaultGetUserTenants.ids[0]}\n instanceType: mysql\n instanceSource: RDS\n networkType: VPC\n envType: dev\n host: ${defaultInstance.connectionString}\n port: 3306\n databaseUser: ${defaultAccount.accountName}\n databasePassword: ${defaultAccount.accountPassword}\n instanceName: ${name}\n dbaUid: ${current.id}\n safeRule: 自由操作\n queryTimeout: 60\n exportTimeout: 600\n ecsRegion: ${default.regions[0].id}\n defaultEnterpriseProxy:\n type: alicloud:dms:EnterpriseProxy\n name: default\n properties:\n instanceId: ${defaultEnterpriseInstance.instanceId}\n password: Example12345\n username: tfexamplename\n tid: ${defaultGetUserTenants.ids[0]}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetUserTenants:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[1].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise Proxy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseProxy:EnterpriseProxy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DMS Enterprise Proxy resource.\n\nFor information about DMS Enterprise Proxy and how to use it, see [What is Proxy](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateProxy).\n\n\u003e **NOTE:** Available since v1.188.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst current = alicloud.getAccount({});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetUserTenants = alicloud.dms.getUserTenants({\n status: \"ACTIVE\",\n});\nconst defaultGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst defaultGetInstanceClasses = defaultGetZones.then(defaultGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: defaultGetZones.zones?.[1]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n category: \"HighAvailability\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceChargeType: \"PostPaid\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[1]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.rds.Instance(\"default\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n dbInstanceStorageType: \"cloud_essd\",\n instanceType: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: defaultGetInstanceClasses.then(defaultGetInstanceClasses =\u003e defaultGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n vswitchId: defaultSwitch.id,\n instanceName: name,\n securityIps: [\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAccount = new alicloud.rds.Account(\"default\", {\n dbInstanceId: defaultInstance.id,\n accountName: \"tfexamplename\",\n accountPassword: \"Example12345\",\n accountType: \"Normal\",\n});\nconst defaultEnterpriseInstance = new alicloud.dms.EnterpriseInstance(\"default\", {\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n instanceType: \"mysql\",\n instanceSource: \"RDS\",\n networkType: \"VPC\",\n envType: \"dev\",\n host: defaultInstance.connectionString,\n port: 3306,\n databaseUser: defaultAccount.accountName,\n databasePassword: defaultAccount.accountPassword,\n instanceName: name,\n dbaUid: current.then(current =\u003e current.id),\n safeRule: \"自由操作\",\n queryTimeout: 60,\n exportTimeout: 600,\n ecsRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n});\nconst defaultEnterpriseProxy = new alicloud.dms.EnterpriseProxy(\"default\", {\n instanceId: defaultEnterpriseInstance.instanceId,\n password: \"Example12345\",\n username: \"tfexamplename\",\n tid: defaultGetUserTenants.then(defaultGetUserTenants =\u003e defaultGetUserTenants.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ncurrent = alicloud.get_account()\ndefault = alicloud.get_regions(current=True)\ndefault_get_user_tenants = alicloud.dms.get_user_tenants(status=\"ACTIVE\")\ndefault_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\")\ndefault_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=default_get_zones.zones[1].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n category=\"HighAvailability\",\n db_instance_storage_type=\"cloud_essd\",\n instance_charge_type=\"PostPaid\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[1].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.rds.Instance(\"default\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n db_instance_storage_type=\"cloud_essd\",\n instance_type=default_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=default_get_instance_classes.instance_classes[0].storage_range.min,\n vswitch_id=default_switch.id,\n instance_name=name,\n security_ips=[\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n ],\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_account = alicloud.rds.Account(\"default\",\n db_instance_id=default_instance.id,\n account_name=\"tfexamplename\",\n account_password=\"Example12345\",\n account_type=\"Normal\")\ndefault_enterprise_instance = alicloud.dms.EnterpriseInstance(\"default\",\n tid=default_get_user_tenants.ids[0],\n instance_type=\"mysql\",\n instance_source=\"RDS\",\n network_type=\"VPC\",\n env_type=\"dev\",\n host=default_instance.connection_string,\n port=3306,\n database_user=default_account.account_name,\n database_password=default_account.account_password,\n instance_name=name,\n dba_uid=current.id,\n safe_rule=\"自由操作\",\n query_timeout=60,\n export_timeout=600,\n ecs_region=default.regions[0].id)\ndefault_enterprise_proxy = alicloud.dms.EnterpriseProxy(\"default\",\n instance_id=default_enterprise_instance.instance_id,\n password=\"Example12345\",\n username=\"tfexamplename\",\n tid=default_get_user_tenants.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var current = AliCloud.GetAccount.Invoke();\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetUserTenants = AliCloud.Dms.GetUserTenants.Invoke(new()\n {\n Status = \"ACTIVE\",\n });\n\n var defaultGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var defaultGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n Category = \"HighAvailability\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceChargeType = \"PostPaid\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[1]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Rds.Instance(\"default\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n DbInstanceStorageType = \"cloud_essd\",\n InstanceType = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = defaultGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n SecurityIps = new[]\n {\n \"100.104.5.0/24\",\n \"192.168.0.6\",\n },\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAccount = new AliCloud.Rds.Account(\"default\", new()\n {\n DbInstanceId = defaultInstance.Id,\n AccountName = \"tfexamplename\",\n AccountPassword = \"Example12345\",\n AccountType = \"Normal\",\n });\n\n var defaultEnterpriseInstance = new AliCloud.Dms.EnterpriseInstance(\"default\", new()\n {\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n InstanceType = \"mysql\",\n InstanceSource = \"RDS\",\n NetworkType = \"VPC\",\n EnvType = \"dev\",\n Host = defaultInstance.ConnectionString,\n Port = 3306,\n DatabaseUser = defaultAccount.AccountName,\n DatabasePassword = defaultAccount.AccountPassword,\n InstanceName = name,\n DbaUid = current.Apply(getAccountResult =\u003e getAccountResult.Id),\n SafeRule = \"自由操作\",\n QueryTimeout = 60,\n ExportTimeout = 600,\n EcsRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n });\n\n var defaultEnterpriseProxy = new AliCloud.Dms.EnterpriseProxy(\"default\", new()\n {\n InstanceId = defaultEnterpriseInstance.InstanceId,\n Password = \"Example12345\",\n Username = \"tfexamplename\",\n Tid = defaultGetUserTenants.Apply(getUserTenantsResult =\u003e getUserTenantsResult.Ids[0]),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tcurrent, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetUserTenants, err := dms.GetUserTenants(ctx, \u0026dms.GetUserTenantsArgs{\n\t\t\tStatus: pulumi.StringRef(\"ACTIVE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(defaultGetZones.Zones[1].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tCategory: pulumi.StringRef(\"HighAvailability\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[1].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := rds.NewInstance(ctx, \"default\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tSecurityIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"100.104.5.0/24\"),\n\t\t\t\tpulumi.String(\"192.168.0.6\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAccount, err := rds.NewAccount(ctx, \"default\", \u0026rds.AccountArgs{\n\t\t\tDbInstanceId: defaultInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"tfexamplename\"),\n\t\t\tAccountPassword: pulumi.String(\"Example12345\"),\n\t\t\tAccountType: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEnterpriseInstance, err := dms.NewEnterpriseInstance(ctx, \"default\", \u0026dms.EnterpriseInstanceArgs{\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t\tInstanceType: pulumi.String(\"mysql\"),\n\t\t\tInstanceSource: pulumi.String(\"RDS\"),\n\t\t\tNetworkType: pulumi.String(\"VPC\"),\n\t\t\tEnvType: pulumi.String(\"dev\"),\n\t\t\tHost: defaultInstance.ConnectionString,\n\t\t\tPort: pulumi.Int(3306),\n\t\t\tDatabaseUser: defaultAccount.AccountName,\n\t\t\tDatabasePassword: defaultAccount.AccountPassword,\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDbaUid: pulumi.String(current.Id),\n\t\t\tSafeRule: pulumi.String(\"自由操作\"),\n\t\t\tQueryTimeout: pulumi.Int(60),\n\t\t\tExportTimeout: pulumi.Int(600),\n\t\t\tEcsRegion: pulumi.String(_default.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseProxy(ctx, \"default\", \u0026dms.EnterpriseProxyArgs{\n\t\t\tInstanceId: defaultEnterpriseInstance.InstanceId,\n\t\t\tPassword: pulumi.String(\"Example12345\"),\n\t\t\tUsername: pulumi.String(\"tfexamplename\"),\n\t\t\tTid: pulumi.String(defaultGetUserTenants.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetUserTenantsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.Account;\nimport com.pulumi.alicloud.rds.AccountArgs;\nimport com.pulumi.alicloud.dms.EnterpriseInstance;\nimport com.pulumi.alicloud.dms.EnterpriseInstanceArgs;\nimport com.pulumi.alicloud.dms.EnterpriseProxy;\nimport com.pulumi.alicloud.dms.EnterpriseProxyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var current = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetUserTenants = DmsFunctions.getUserTenants(GetUserTenantsArgs.builder()\n .status(\"ACTIVE\")\n .build());\n\n final var defaultGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(defaultGetZones.zones()[1].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .category(\"HighAvailability\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceChargeType(\"PostPaid\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[1].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .dbInstanceStorageType(\"cloud_essd\")\n .instanceType(defaultGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(defaultGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .securityIps( \n \"100.104.5.0/24\",\n \"192.168.0.6\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAccount = new Account(\"defaultAccount\", AccountArgs.builder()\n .dbInstanceId(defaultInstance.id())\n .accountName(\"tfexamplename\")\n .accountPassword(\"Example12345\")\n .accountType(\"Normal\")\n .build());\n\n var defaultEnterpriseInstance = new EnterpriseInstance(\"defaultEnterpriseInstance\", EnterpriseInstanceArgs.builder()\n .tid(defaultGetUserTenants.ids()[0])\n .instanceType(\"mysql\")\n .instanceSource(\"RDS\")\n .networkType(\"VPC\")\n .envType(\"dev\")\n .host(defaultInstance.connectionString())\n .port(3306)\n .databaseUser(defaultAccount.accountName())\n .databasePassword(defaultAccount.accountPassword())\n .instanceName(name)\n .dbaUid(current.id())\n .safeRule(\"自由操作\")\n .queryTimeout(60)\n .exportTimeout(600)\n .ecsRegion(default_.regions()[0].id())\n .build());\n\n var defaultEnterpriseProxy = new EnterpriseProxy(\"defaultEnterpriseProxy\", EnterpriseProxyArgs.builder()\n .instanceId(defaultEnterpriseInstance.instanceId())\n .password(\"Example12345\")\n .username(\"tfexamplename\")\n .tid(defaultGetUserTenants.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[1].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:rds:Instance\n name: default\n properties:\n engine: MySQL\n engineVersion: '8.0'\n dbInstanceStorageType: cloud_essd\n instanceType: ${defaultGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${defaultGetInstanceClasses.instanceClasses[0].storageRange.min}\n vswitchId: ${defaultSwitch.id}\n instanceName: ${name}\n securityIps:\n - 100.104.5.0/24\n - 192.168.0.6\n tags:\n Created: TF\n For: example\n defaultAccount:\n type: alicloud:rds:Account\n name: default\n properties:\n dbInstanceId: ${defaultInstance.id}\n accountName: tfexamplename\n accountPassword: Example12345\n accountType: Normal\n defaultEnterpriseInstance:\n type: alicloud:dms:EnterpriseInstance\n name: default\n properties:\n tid: ${defaultGetUserTenants.ids[0]}\n instanceType: mysql\n instanceSource: RDS\n networkType: VPC\n envType: dev\n host: ${defaultInstance.connectionString}\n port: 3306\n databaseUser: ${defaultAccount.accountName}\n databasePassword: ${defaultAccount.accountPassword}\n instanceName: ${name}\n dbaUid: ${current.id}\n safeRule: 自由操作\n queryTimeout: 60\n exportTimeout: 600\n ecsRegion: ${default.regions[0].id}\n defaultEnterpriseProxy:\n type: alicloud:dms:EnterpriseProxy\n name: default\n properties:\n instanceId: ${defaultEnterpriseInstance.instanceId}\n password: Example12345\n username: tfexamplename\n tid: ${defaultGetUserTenants.ids[0]}\nvariables:\n current:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetUserTenants:\n fn::invoke:\n function: alicloud:dms:getUserTenants\n arguments:\n status: ACTIVE\n defaultGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n defaultGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${defaultGetZones.zones[1].id}\n engine: MySQL\n engineVersion: '8.0'\n category: HighAvailability\n dbInstanceStorageType: cloud_essd\n instanceChargeType: PostPaid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise Proxy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseProxy:EnterpriseProxy example \u003cid\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -142335,7 +144964,7 @@
}
},
"alicloud:dms/enterpriseProxyAccess:EnterpriseProxyAccess": {
- "description": "Provides a DMS Enterprise Proxy Access resource.\n\nFor information about DMS Enterprise Proxy Access and how to use it, see [What is Proxy Access](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateProxyAccess).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst dmsEnterpriseUsersDs = alicloud.dms.getEnterpriseUsers({\n role: \"USER\",\n status: \"NORMAL\",\n});\nconst ids = alicloud.dms.getEnterpriseProxies({});\nconst _default = new alicloud.dms.EnterpriseProxyAccess(\"default\", {\n proxyId: ids.then(ids =\u003e ids.proxies?.[0]?.id),\n userId: dmsEnterpriseUsersDs.then(dmsEnterpriseUsersDs =\u003e dmsEnterpriseUsersDs.users?.[0]?.userId),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndms_enterprise_users_ds = alicloud.dms.get_enterprise_users(role=\"USER\",\n status=\"NORMAL\")\nids = alicloud.dms.get_enterprise_proxies()\ndefault = alicloud.dms.EnterpriseProxyAccess(\"default\",\n proxy_id=ids.proxies[0].id,\n user_id=dms_enterprise_users_ds.users[0].user_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dmsEnterpriseUsersDs = AliCloud.Dms.GetEnterpriseUsers.Invoke(new()\n {\n Role = \"USER\",\n Status = \"NORMAL\",\n });\n\n var ids = AliCloud.Dms.GetEnterpriseProxies.Invoke();\n\n var @default = new AliCloud.Dms.EnterpriseProxyAccess(\"default\", new()\n {\n ProxyId = ids.Apply(getEnterpriseProxiesResult =\u003e getEnterpriseProxiesResult.Proxies[0]?.Id),\n UserId = dmsEnterpriseUsersDs.Apply(getEnterpriseUsersResult =\u003e getEnterpriseUsersResult.Users[0]?.UserId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdmsEnterpriseUsersDs, err := dms.GetEnterpriseUsers(ctx, \u0026dms.GetEnterpriseUsersArgs{\n\t\t\tRole: pulumi.StringRef(\"USER\"),\n\t\t\tStatus: pulumi.StringRef(\"NORMAL\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tids, err := dms.GetEnterpriseProxies(ctx, \u0026dms.GetEnterpriseProxiesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseProxyAccess(ctx, \"default\", \u0026dms.EnterpriseProxyAccessArgs{\n\t\t\tProxyId: pulumi.String(ids.Proxies[0].Id),\n\t\t\tUserId: pulumi.String(dmsEnterpriseUsersDs.Users[0].UserId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetEnterpriseUsersArgs;\nimport com.pulumi.alicloud.dms.inputs.GetEnterpriseProxiesArgs;\nimport com.pulumi.alicloud.dms.EnterpriseProxyAccess;\nimport com.pulumi.alicloud.dms.EnterpriseProxyAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var dmsEnterpriseUsersDs = DmsFunctions.getEnterpriseUsers(GetEnterpriseUsersArgs.builder()\n .role(\"USER\")\n .status(\"NORMAL\")\n .build());\n\n final var ids = DmsFunctions.getEnterpriseProxies(GetEnterpriseProxiesArgs.builder()\n .build());\n\n var default_ = new EnterpriseProxyAccess(\"default\", EnterpriseProxyAccessArgs.builder()\n .proxyId(ids.proxies()[0].id())\n .userId(dmsEnterpriseUsersDs.users()[0].userId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dms:EnterpriseProxyAccess\n properties:\n proxyId: ${ids.proxies[0].id}\n userId: ${dmsEnterpriseUsersDs.users[0].userId}\nvariables:\n dmsEnterpriseUsersDs:\n fn::invoke:\n function: alicloud:dms:getEnterpriseUsers\n arguments:\n role: USER\n status: NORMAL\n ids:\n fn::invoke:\n function: alicloud:dms:getEnterpriseProxies\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise Proxy Access can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseProxyAccess:EnterpriseProxyAccess example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DMS Enterprise Proxy Access resource.\n\nFor information about DMS Enterprise Proxy Access and how to use it, see [What is Proxy Access](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateProxyAccess).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst dmsEnterpriseUsersDs = alicloud.dms.getEnterpriseUsers({\n role: \"USER\",\n status: \"NORMAL\",\n});\nconst ids = alicloud.dms.getEnterpriseProxies({});\nconst _default = new alicloud.dms.EnterpriseProxyAccess(\"default\", {\n proxyId: ids.then(ids =\u003e ids.proxies?.[0]?.id),\n userId: dmsEnterpriseUsersDs.then(dmsEnterpriseUsersDs =\u003e dmsEnterpriseUsersDs.users?.[0]?.userId),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndms_enterprise_users_ds = alicloud.dms.get_enterprise_users(role=\"USER\",\n status=\"NORMAL\")\nids = alicloud.dms.get_enterprise_proxies()\ndefault = alicloud.dms.EnterpriseProxyAccess(\"default\",\n proxy_id=ids.proxies[0].id,\n user_id=dms_enterprise_users_ds.users[0].user_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dmsEnterpriseUsersDs = AliCloud.Dms.GetEnterpriseUsers.Invoke(new()\n {\n Role = \"USER\",\n Status = \"NORMAL\",\n });\n\n var ids = AliCloud.Dms.GetEnterpriseProxies.Invoke();\n\n var @default = new AliCloud.Dms.EnterpriseProxyAccess(\"default\", new()\n {\n ProxyId = ids.Apply(getEnterpriseProxiesResult =\u003e getEnterpriseProxiesResult.Proxies[0]?.Id),\n UserId = dmsEnterpriseUsersDs.Apply(getEnterpriseUsersResult =\u003e getEnterpriseUsersResult.Users[0]?.UserId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdmsEnterpriseUsersDs, err := dms.GetEnterpriseUsers(ctx, \u0026dms.GetEnterpriseUsersArgs{\n\t\t\tRole: pulumi.StringRef(\"USER\"),\n\t\t\tStatus: pulumi.StringRef(\"NORMAL\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tids, err := dms.GetEnterpriseProxies(ctx, \u0026dms.GetEnterpriseProxiesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseProxyAccess(ctx, \"default\", \u0026dms.EnterpriseProxyAccessArgs{\n\t\t\tProxyId: pulumi.String(ids.Proxies[0].Id),\n\t\t\tUserId: pulumi.String(dmsEnterpriseUsersDs.Users[0].UserId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dms.DmsFunctions;\nimport com.pulumi.alicloud.dms.inputs.GetEnterpriseUsersArgs;\nimport com.pulumi.alicloud.dms.inputs.GetEnterpriseProxiesArgs;\nimport com.pulumi.alicloud.dms.EnterpriseProxyAccess;\nimport com.pulumi.alicloud.dms.EnterpriseProxyAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var dmsEnterpriseUsersDs = DmsFunctions.getEnterpriseUsers(GetEnterpriseUsersArgs.builder()\n .role(\"USER\")\n .status(\"NORMAL\")\n .build());\n\n final var ids = DmsFunctions.getEnterpriseProxies(GetEnterpriseProxiesArgs.builder()\n .build());\n\n var default_ = new EnterpriseProxyAccess(\"default\", EnterpriseProxyAccessArgs.builder()\n .proxyId(ids.proxies()[0].id())\n .userId(dmsEnterpriseUsersDs.users()[0].userId())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dms:EnterpriseProxyAccess\n properties:\n proxyId: ${ids.proxies[0].id}\n userId: ${dmsEnterpriseUsersDs.users[0].userId}\nvariables:\n dmsEnterpriseUsersDs:\n fn::invoke:\n function: alicloud:dms:getEnterpriseUsers\n arguments:\n role: USER\n status: NORMAL\n ids:\n fn::invoke:\n function: alicloud:dms:getEnterpriseProxies\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise Proxy Access can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseProxyAccess:EnterpriseProxyAccess example \u003cid\u003e\n```\n\n",
"properties": {
"accessId": {
"type": "string",
@@ -142491,7 +145120,7 @@
}
},
"alicloud:dms/enterpriseUser:EnterpriseUser": {
- "description": "Provides a DMS Enterprise User resource. For information about Alidms Enterprise User and how to use it, see [What is Resource Alidms Enterprise User](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-registeruser).\n\n\u003e **NOTE:** Available since v1.90.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexamplename\";\nconst _default = new alicloud.ram.User(\"default\", {\n name: name,\n displayName: name,\n mobile: \"86-18688888888\",\n email: \"hello.uuu@aaa.com\",\n comments: \"example\",\n});\nconst defaultEnterpriseUser = new alicloud.dms.EnterpriseUser(\"default\", {\n uid: _default.id,\n userName: name,\n roleNames: [\"DBA\"],\n mobile: \"86-18688888888\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexamplename\"\ndefault = alicloud.ram.User(\"default\",\n name=name,\n display_name=name,\n mobile=\"86-18688888888\",\n email=\"hello.uuu@aaa.com\",\n comments=\"example\")\ndefault_enterprise_user = alicloud.dms.EnterpriseUser(\"default\",\n uid=default.id,\n user_name=name,\n role_names=[\"DBA\"],\n mobile=\"86-18688888888\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexamplename\";\n var @default = new AliCloud.Ram.User(\"default\", new()\n {\n Name = name,\n DisplayName = name,\n Mobile = \"86-18688888888\",\n Email = \"hello.uuu@aaa.com\",\n Comments = \"example\",\n });\n\n var defaultEnterpriseUser = new AliCloud.Dms.EnterpriseUser(\"default\", new()\n {\n Uid = @default.Id,\n UserName = name,\n RoleNames = new[]\n {\n \"DBA\",\n },\n Mobile = \"86-18688888888\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexamplename\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ram.NewUser(ctx, \"default\", \u0026ram.UserArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t\tEmail: pulumi.String(\"hello.uuu@aaa.com\"),\n\t\t\tComments: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseUser(ctx, \"default\", \u0026dms.EnterpriseUserArgs{\n\t\t\tUid: _default.ID(),\n\t\t\tUserName: pulumi.String(name),\n\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DBA\"),\n\t\t\t},\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.dms.EnterpriseUser;\nimport com.pulumi.alicloud.dms.EnterpriseUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexamplename\");\n var default_ = new User(\"default\", UserArgs.builder()\n .name(name)\n .displayName(name)\n .mobile(\"86-18688888888\")\n .email(\"hello.uuu@aaa.com\")\n .comments(\"example\")\n .build());\n\n var defaultEnterpriseUser = new EnterpriseUser(\"defaultEnterpriseUser\", EnterpriseUserArgs.builder()\n .uid(default_.id())\n .userName(name)\n .roleNames(\"DBA\")\n .mobile(\"86-18688888888\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexamplename\nresources:\n default:\n type: alicloud:ram:User\n properties:\n name: ${name}\n displayName: ${name}\n mobile: 86-18688888888\n email: hello.uuu@aaa.com\n comments: example\n defaultEnterpriseUser:\n type: alicloud:dms:EnterpriseUser\n name: default\n properties:\n uid: ${default.id}\n userName: ${name}\n roleNames:\n - DBA\n mobile: 86-18688888888\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseUser:EnterpriseUser example 24356xxx\n```\n\n",
+ "description": "Provides a DMS Enterprise User resource. For information about Alidms Enterprise User and how to use it, see [What is Resource Alidms Enterprise User](https://www.alibabacloud.com/help/en/dms/developer-reference/api-dms-enterprise-2018-11-01-registeruser).\n\n\u003e **NOTE:** Available since v1.90.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tfexamplename\";\nconst _default = new alicloud.ram.User(\"default\", {\n name: name,\n displayName: name,\n mobile: \"86-18688888888\",\n email: \"hello.uuu@aaa.com\",\n comments: \"example\",\n});\nconst defaultEnterpriseUser = new alicloud.dms.EnterpriseUser(\"default\", {\n uid: _default.id,\n userName: name,\n roleNames: [\"DBA\"],\n mobile: \"86-18688888888\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tfexamplename\"\ndefault = alicloud.ram.User(\"default\",\n name=name,\n display_name=name,\n mobile=\"86-18688888888\",\n email=\"hello.uuu@aaa.com\",\n comments=\"example\")\ndefault_enterprise_user = alicloud.dms.EnterpriseUser(\"default\",\n uid=default.id,\n user_name=name,\n role_names=[\"DBA\"],\n mobile=\"86-18688888888\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tfexamplename\";\n var @default = new AliCloud.Ram.User(\"default\", new()\n {\n Name = name,\n DisplayName = name,\n Mobile = \"86-18688888888\",\n Email = \"hello.uuu@aaa.com\",\n Comments = \"example\",\n });\n\n var defaultEnterpriseUser = new AliCloud.Dms.EnterpriseUser(\"default\", new()\n {\n Uid = @default.Id,\n UserName = name,\n RoleNames = new[]\n {\n \"DBA\",\n },\n Mobile = \"86-18688888888\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tfexamplename\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ram.NewUser(ctx, \"default\", \u0026ram.UserArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDisplayName: pulumi.String(name),\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t\tEmail: pulumi.String(\"hello.uuu@aaa.com\"),\n\t\t\tComments: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseUser(ctx, \"default\", \u0026dms.EnterpriseUserArgs{\n\t\t\tUid: _default.ID(),\n\t\t\tUserName: pulumi.String(name),\n\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"DBA\"),\n\t\t\t},\n\t\t\tMobile: pulumi.String(\"86-18688888888\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ram.User;\nimport com.pulumi.alicloud.ram.UserArgs;\nimport com.pulumi.alicloud.dms.EnterpriseUser;\nimport com.pulumi.alicloud.dms.EnterpriseUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tfexamplename\");\n var default_ = new User(\"default\", UserArgs.builder()\n .name(name)\n .displayName(name)\n .mobile(\"86-18688888888\")\n .email(\"hello.uuu@aaa.com\")\n .comments(\"example\")\n .build());\n\n var defaultEnterpriseUser = new EnterpriseUser(\"defaultEnterpriseUser\", EnterpriseUserArgs.builder()\n .uid(default_.id())\n .userName(name)\n .roleNames(\"DBA\")\n .mobile(\"86-18688888888\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tfexamplename\nresources:\n default:\n type: alicloud:ram:User\n properties:\n name: ${name}\n displayName: ${name}\n mobile: 86-18688888888\n email: hello.uuu@aaa.com\n comments: example\n defaultEnterpriseUser:\n type: alicloud:dms:EnterpriseUser\n name: default\n properties:\n uid: ${default.id}\n userName: ${name}\n roleNames:\n - DBA\n mobile: 86-18688888888\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseUser:EnterpriseUser example 24356xxx\n```\n\n",
"properties": {
"maxExecuteCount": {
"type": "integer",
@@ -142634,7 +145263,7 @@
}
},
"alicloud:dms/enterpriseWorkspace:EnterpriseWorkspace": {
- "description": "Provides a DMS Enterprise Workspace resource.\n\n\n\nFor information about DMS Enterprise Workspace and how to use it, see [What is Workspace](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateWorkspace).\n\n\u003e **NOTE:** Available since v1.259.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst vpcCreate = new alicloud.vpc.Network(\"vpc_create\", {\n isDefault: false,\n description: \"example vpc\",\n cidrBlock: \"192.168.0.0/16\",\n vpcName: `${name}-${_default.result}`,\n});\nconst defaultEnterpriseWorkspace = new alicloud.dms.EnterpriseWorkspace(\"default\", {\n description: name,\n workspaceName: `${name}-${_default.result}`,\n vpcId: vpcCreate.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nvpc_create = alicloud.vpc.Network(\"vpc_create\",\n is_default=False,\n description=\"example vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=f\"{name}-{default['result']}\")\ndefault_enterprise_workspace = alicloud.dms.EnterpriseWorkspace(\"default\",\n description=name,\n workspace_name=f\"{name}-{default['result']}\",\n vpc_id=vpc_create.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var vpcCreate = new AliCloud.Vpc.Network(\"vpc_create\", new()\n {\n IsDefault = false,\n Description = \"example vpc\",\n CidrBlock = \"192.168.0.0/16\",\n VpcName = $\"{name}-{@default.Result}\",\n });\n\n var defaultEnterpriseWorkspace = new AliCloud.Dms.EnterpriseWorkspace(\"default\", new()\n {\n Description = name,\n WorkspaceName = $\"{name}-{@default.Result}\",\n VpcId = vpcCreate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcCreate, err := vpc.NewNetwork(ctx, \"vpc_create\", \u0026vpc.NetworkArgs{\n\t\t\tIsDefault: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(\"example vpc\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseWorkspace(ctx, \"default\", \u0026dms.EnterpriseWorkspaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tWorkspaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tVpcId: vpcCreate.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspace;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var vpcCreate = new Network(\"vpcCreate\", NetworkArgs.builder()\n .isDefault(false)\n .description(\"example vpc\")\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultEnterpriseWorkspace = new EnterpriseWorkspace(\"defaultEnterpriseWorkspace\", EnterpriseWorkspaceArgs.builder()\n .description(name)\n .workspaceName(String.format(\"%s-%s\", name,default_.result()))\n .vpcId(vpcCreate.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n vpcCreate:\n type: alicloud:vpc:Network\n name: vpc_create\n properties:\n isDefault: false\n description: example vpc\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}-${default.result}\n defaultEnterpriseWorkspace:\n type: alicloud:dms:EnterpriseWorkspace\n name: default\n properties:\n description: ${name}\n workspaceName: ${name}-${default.result}\n vpcId: ${vpcCreate.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDMS Enterprise Workspace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseWorkspace:EnterpriseWorkspace example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DMS Enterprise Workspace resource.\n\n\n\nFor information about DMS Enterprise Workspace and how to use it, see [What is Workspace](https://next.api.alibabacloud.com/document/dms-enterprise/2018-11-01/CreateWorkspace).\n\n\u003e **NOTE:** Available since v1.259.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform_example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst vpcCreate = new alicloud.vpc.Network(\"vpc_create\", {\n isDefault: false,\n description: \"example vpc\",\n cidrBlock: \"192.168.0.0/16\",\n vpcName: `${name}-${_default.result}`,\n});\nconst defaultEnterpriseWorkspace = new alicloud.dms.EnterpriseWorkspace(\"default\", {\n description: name,\n workspaceName: `${name}-${_default.result}`,\n vpcId: vpcCreate.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform_example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nvpc_create = alicloud.vpc.Network(\"vpc_create\",\n is_default=False,\n description=\"example vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=f\"{name}-{default['result']}\")\ndefault_enterprise_workspace = alicloud.dms.EnterpriseWorkspace(\"default\",\n description=name,\n workspace_name=f\"{name}-{default['result']}\",\n vpc_id=vpc_create.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform_example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var vpcCreate = new AliCloud.Vpc.Network(\"vpc_create\", new()\n {\n IsDefault = false,\n Description = \"example vpc\",\n CidrBlock = \"192.168.0.0/16\",\n VpcName = $\"{name}-{@default.Result}\",\n });\n\n var defaultEnterpriseWorkspace = new AliCloud.Dms.EnterpriseWorkspace(\"default\", new()\n {\n Description = name,\n WorkspaceName = $\"{name}-{@default.Result}\",\n VpcId = vpcCreate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvpcCreate, err := vpc.NewNetwork(ctx, \"vpc_create\", \u0026vpc.NetworkArgs{\n\t\t\tIsDefault: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(\"example vpc\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dms.NewEnterpriseWorkspace(ctx, \"default\", \u0026dms.EnterpriseWorkspaceArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tWorkspaceName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t\tVpcId: vpcCreate.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspace;\nimport com.pulumi.alicloud.dms.EnterpriseWorkspaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform_example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var vpcCreate = new Network(\"vpcCreate\", NetworkArgs.builder()\n .isDefault(false)\n .description(\"example vpc\")\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultEnterpriseWorkspace = new EnterpriseWorkspace(\"defaultEnterpriseWorkspace\", EnterpriseWorkspaceArgs.builder()\n .description(name)\n .workspaceName(String.format(\"%s-%s\", name,default_.result()))\n .vpcId(vpcCreate.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform_example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n vpcCreate:\n type: alicloud:vpc:Network\n name: vpc_create\n properties:\n isDefault: false\n description: example vpc\n cidrBlock: 192.168.0.0/16\n vpcName: ${name}-${default.result}\n defaultEnterpriseWorkspace:\n type: alicloud:dms:EnterpriseWorkspace\n name: default\n properties:\n description: ${name}\n workspaceName: ${name}-${default.result}\n vpcId: ${vpcCreate.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDMS Enterprise Workspace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dms/enterpriseWorkspace:EnterpriseWorkspace example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -142704,7 +145333,7 @@
}
},
"alicloud:dns/accessStrategy:AccessStrategy": {
- "description": "Provides a DNS Access Strategy resource.\n\nFor information about DNS Access Strategy and how to use it, see [What is Access Strategy](https://www.alibabacloud.com/help/doc-detail/189620.html).\n\n\u003e **NOTE:** Available since v1.152.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool: alicloud.dns.AddressPool[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultAddressPool.push(new alicloud.dns.AddressPool(`default-${range.value}`, {\n addressPoolName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n }));\n}\nconst defaultAccessStrategy = new alicloud.dns.AccessStrategy(\"default\", {\n strategyName: name,\n strategyMode: \"GEO\",\n instanceId: defaultGtmInstance.id,\n defaultAddrPoolType: \"IPV4\",\n defaultLbaStrategy: \"RATIO\",\n defaultMinAvailableAddrNum: 1,\n defaultAddrPools: [{\n lbaWeight: 1,\n addrPoolId: defaultAddressPool[0].id,\n }],\n failoverAddrPoolType: \"IPV4\",\n failoverLbaStrategy: \"RATIO\",\n failoverMinAvailableAddrNum: 1,\n failoverAddrPools: [{\n lbaWeight: 1,\n addrPoolId: defaultAddressPool[1].id,\n }],\n lines: [{\n lineCode: \"default\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_address_pool.append(alicloud.dns.AddressPool(f\"default-{range['value']}\",\n address_pool_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }]))\ndefault_access_strategy = alicloud.dns.AccessStrategy(\"default\",\n strategy_name=name,\n strategy_mode=\"GEO\",\n instance_id=default_gtm_instance.id,\n default_addr_pool_type=\"IPV4\",\n default_lba_strategy=\"RATIO\",\n default_min_available_addr_num=1,\n default_addr_pools=[{\n \"lba_weight\": 1,\n \"addr_pool_id\": default_address_pool[0].id,\n }],\n failover_addr_pool_type=\"IPV4\",\n failover_lba_strategy=\"RATIO\",\n failover_min_available_addr_num=1,\n failover_addr_pools=[{\n \"lba_weight\": 1,\n \"addr_pool_id\": default_address_pool[1].id,\n }],\n lines=[{\n \"line_code\": \"default\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new List\u003cAliCloud.Dns.AddressPool\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultAddressPool.Add(new AliCloud.Dns.AddressPool($\"default-{range.Value}\", new()\n {\n AddressPoolName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n }));\n }\n var defaultAccessStrategy = new AliCloud.Dns.AccessStrategy(\"default\", new()\n {\n StrategyName = name,\n StrategyMode = \"GEO\",\n InstanceId = defaultGtmInstance.Id,\n DefaultAddrPoolType = \"IPV4\",\n DefaultLbaStrategy = \"RATIO\",\n DefaultMinAvailableAddrNum = 1,\n DefaultAddrPools = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyDefaultAddrPoolArgs\n {\n LbaWeight = 1,\n AddrPoolId = defaultAddressPool[0].Id,\n },\n },\n FailoverAddrPoolType = \"IPV4\",\n FailoverLbaStrategy = \"RATIO\",\n FailoverMinAvailableAddrNum = 1,\n FailoverAddrPools = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyFailoverAddrPoolArgs\n {\n LbaWeight = 1,\n AddrPoolId = defaultAddressPool[1].Id,\n },\n },\n Lines = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyLineArgs\n {\n LineCode = \"default\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultAddressPool []*dns.AddressPool\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := dns.NewAddressPool(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026dns.AddressPoolArgs{\n\t\t\t\tAddressPoolName: pulumi.String(invokeFormat.Result),\n\t\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\t\tAttributeInfo: pulumi.String(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\"),\n\t\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultAddressPool = append(defaultAddressPool, __res)\n\t\t}\n\t\t_, err = dns.NewAccessStrategy(ctx, \"default\", \u0026dns.AccessStrategyArgs{\n\t\t\tStrategyName: pulumi.String(name),\n\t\t\tStrategyMode: pulumi.String(\"GEO\"),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tDefaultAddrPoolType: pulumi.String(\"IPV4\"),\n\t\t\tDefaultLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tDefaultMinAvailableAddrNum: pulumi.Int(1),\n\t\t\tDefaultAddrPools: dns.AccessStrategyDefaultAddrPoolArray{\n\t\t\t\t\u0026dns.AccessStrategyDefaultAddrPoolArgs{\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\tAddrPoolId: defaultAddressPool[0].ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFailoverAddrPoolType: pulumi.String(\"IPV4\"),\n\t\t\tFailoverLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tFailoverMinAvailableAddrNum: pulumi.Int(1),\n\t\t\tFailoverAddrPools: dns.AccessStrategyFailoverAddrPoolArray{\n\t\t\t\t\u0026dns.AccessStrategyFailoverAddrPoolArgs{\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\tAddrPoolId: defaultAddressPool[1].ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLines: dns.AccessStrategyLineArray{\n\t\t\t\t\u0026dns.AccessStrategyLineArgs{\n\t\t\t\t\tLineCode: pulumi.String(\"default\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dns.AccessStrategy;\nimport com.pulumi.alicloud.dns.AccessStrategyArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyDefaultAddrPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyFailoverAddrPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyLineArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new AddressPool(\"defaultAddressPool-\" + i, AddressPoolArgs.builder()\n .addressPoolName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n \n}\n var defaultAccessStrategy = new AccessStrategy(\"defaultAccessStrategy\", AccessStrategyArgs.builder()\n .strategyName(name)\n .strategyMode(\"GEO\")\n .instanceId(defaultGtmInstance.id())\n .defaultAddrPoolType(\"IPV4\")\n .defaultLbaStrategy(\"RATIO\")\n .defaultMinAvailableAddrNum(1)\n .defaultAddrPools(AccessStrategyDefaultAddrPoolArgs.builder()\n .lbaWeight(1)\n .addrPoolId(defaultAddressPool[0].id())\n .build())\n .failoverAddrPoolType(\"IPV4\")\n .failoverLbaStrategy(\"RATIO\")\n .failoverMinAvailableAddrNum(1)\n .failoverAddrPools(AccessStrategyFailoverAddrPoolArgs.builder()\n .lbaWeight(1)\n .addrPoolId(defaultAddressPool[1].id())\n .build())\n .lines(AccessStrategyLineArgs.builder()\n .lineCode(\"default\")\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS Access Strategy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/accessStrategy:AccessStrategy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DNS Access Strategy resource.\n\nFor information about DNS Access Strategy and how to use it, see [What is Access Strategy](https://www.alibabacloud.com/help/doc-detail/189620.html).\n\n\u003e **NOTE:** Available since v1.152.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool: alicloud.dns.AddressPool[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n defaultAddressPool.push(new alicloud.dns.AddressPool(`default-${range.value}`, {\n addressPoolName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n }));\n}\nconst defaultAccessStrategy = new alicloud.dns.AccessStrategy(\"default\", {\n strategyName: name,\n strategyMode: \"GEO\",\n instanceId: defaultGtmInstance.id,\n defaultAddrPoolType: \"IPV4\",\n defaultLbaStrategy: \"RATIO\",\n defaultMinAvailableAddrNum: 1,\n defaultAddrPools: [{\n lbaWeight: 1,\n addrPoolId: defaultAddressPool[0].id,\n }],\n failoverAddrPoolType: \"IPV4\",\n failoverLbaStrategy: \"RATIO\",\n failoverMinAvailableAddrNum: 1,\n failoverAddrPools: [{\n lbaWeight: 1,\n addrPoolId: defaultAddressPool[1].id,\n }],\n lines: [{\n lineCode: \"default\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n default_address_pool.append(alicloud.dns.AddressPool(f\"default-{range['value']}\",\n address_pool_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }]))\ndefault_access_strategy = alicloud.dns.AccessStrategy(\"default\",\n strategy_name=name,\n strategy_mode=\"GEO\",\n instance_id=default_gtm_instance.id,\n default_addr_pool_type=\"IPV4\",\n default_lba_strategy=\"RATIO\",\n default_min_available_addr_num=1,\n default_addr_pools=[{\n \"lba_weight\": 1,\n \"addr_pool_id\": default_address_pool[0].id,\n }],\n failover_addr_pool_type=\"IPV4\",\n failover_lba_strategy=\"RATIO\",\n failover_min_available_addr_num=1,\n failover_addr_pools=[{\n \"lba_weight\": 1,\n \"addr_pool_id\": default_address_pool[1].id,\n }],\n lines=[{\n \"line_code\": \"default\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new List\u003cAliCloud.Dns.AddressPool\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n defaultAddressPool.Add(new AliCloud.Dns.AddressPool($\"default-{range.Value}\", new()\n {\n AddressPoolName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n }));\n }\n var defaultAccessStrategy = new AliCloud.Dns.AccessStrategy(\"default\", new()\n {\n StrategyName = name,\n StrategyMode = \"GEO\",\n InstanceId = defaultGtmInstance.Id,\n DefaultAddrPoolType = \"IPV4\",\n DefaultLbaStrategy = \"RATIO\",\n DefaultMinAvailableAddrNum = 1,\n DefaultAddrPools = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyDefaultAddrPoolArgs\n {\n LbaWeight = 1,\n AddrPoolId = defaultAddressPool[0].Id,\n },\n },\n FailoverAddrPoolType = \"IPV4\",\n FailoverLbaStrategy = \"RATIO\",\n FailoverMinAvailableAddrNum = 1,\n FailoverAddrPools = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyFailoverAddrPoolArgs\n {\n LbaWeight = 1,\n AddrPoolId = defaultAddressPool[1].Id,\n },\n },\n Lines = new[]\n {\n new AliCloud.Dns.Inputs.AccessStrategyLineArgs\n {\n LineCode = \"default\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar defaultAddressPool []*dns.AddressPool\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := dns.NewAddressPool(ctx, fmt.Sprintf(\"default-%v\", key0), \u0026dns.AddressPoolArgs{\n\t\t\t\tAddressPoolName: pulumi.String(invokeFormat.Result),\n\t\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\t\tAttributeInfo: pulumi.String(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\"),\n\t\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tdefaultAddressPool = append(defaultAddressPool, __res)\n\t\t}\n\t\t_, err = dns.NewAccessStrategy(ctx, \"default\", \u0026dns.AccessStrategyArgs{\n\t\t\tStrategyName: pulumi.String(name),\n\t\t\tStrategyMode: pulumi.String(\"GEO\"),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tDefaultAddrPoolType: pulumi.String(\"IPV4\"),\n\t\t\tDefaultLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tDefaultMinAvailableAddrNum: pulumi.Int(1),\n\t\t\tDefaultAddrPools: dns.AccessStrategyDefaultAddrPoolArray{\n\t\t\t\t\u0026dns.AccessStrategyDefaultAddrPoolArgs{\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\tAddrPoolId: defaultAddressPool[0].ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFailoverAddrPoolType: pulumi.String(\"IPV4\"),\n\t\t\tFailoverLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tFailoverMinAvailableAddrNum: pulumi.Int(1),\n\t\t\tFailoverAddrPools: dns.AccessStrategyFailoverAddrPoolArray{\n\t\t\t\t\u0026dns.AccessStrategyFailoverAddrPoolArgs{\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t\tAddrPoolId: defaultAddressPool[1].ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLines: dns.AccessStrategyLineArray{\n\t\t\t\t\u0026dns.AccessStrategyLineArgs{\n\t\t\t\t\tLineCode: pulumi.String(\"default\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.dns.AccessStrategy;\nimport com.pulumi.alicloud.dns.AccessStrategyArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyDefaultAddrPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyFailoverAddrPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AccessStrategyLineArgs;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new AddressPool(\"defaultAddressPool-\" + i, AddressPoolArgs.builder()\n .addressPoolName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n \n}\n var defaultAccessStrategy = new AccessStrategy(\"defaultAccessStrategy\", AccessStrategyArgs.builder()\n .strategyName(name)\n .strategyMode(\"GEO\")\n .instanceId(defaultGtmInstance.id())\n .defaultAddrPoolType(\"IPV4\")\n .defaultLbaStrategy(\"RATIO\")\n .defaultMinAvailableAddrNum(1)\n .defaultAddrPools(AccessStrategyDefaultAddrPoolArgs.builder()\n .lbaWeight(1)\n .addrPoolId(defaultAddressPool[0].id())\n .build())\n .failoverAddrPoolType(\"IPV4\")\n .failoverLbaStrategy(\"RATIO\")\n .failoverMinAvailableAddrNum(1)\n .failoverAddrPools(AccessStrategyFailoverAddrPoolArgs.builder()\n .lbaWeight(1)\n .addrPoolId(defaultAddressPool[1].id())\n .build())\n .lines(AccessStrategyLineArgs.builder()\n .lineCode(\"default\")\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS Access Strategy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/accessStrategy:AccessStrategy example \u003cid\u003e\n```\n\n",
"properties": {
"accessMode": {
"type": "string",
@@ -142979,7 +145608,7 @@
}
},
"alicloud:dns/addressPool:AddressPool": {
- "description": "Provides a Alidns Address Pool resource.\n\nFor information about Alidns Address Pool and how to use it, see [What is Address Pool](https://www.alibabacloud.com/help/doc-detail/189621.html).\n\n\u003e **NOTE:** Available since v1.152.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool = new alicloud.dns.AddressPool(\"default\", {\n addressPoolName: name,\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: ` {\n \\\\\"lineCodeRectifyType\\\\\": \\\\\"RECTIFIED\\\\\",\n \\\\\"lineCodes\\\\\": [\\\\\"os_namerica_us\\\\\"]\n }\n`,\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = alicloud.dns.AddressPool(\"default\",\n address_pool_name=name,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"\"\" {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n\"\"\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new AliCloud.Dns.AddressPool(\"default\", new()\n {\n AddressPoolName = name,\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = @\" {\n \\\"\"lineCodeRectifyType\\\"\": \\\"\"RECTIFIED\\\"\",\n \\\"\"lineCodes\\\"\": [\\\"\"os_namerica_us\\\"\"]\n }\n\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAddressPool(ctx, \"default\", \u0026dns.AddressPoolArgs{\n\t\t\tAddressPoolName: pulumi.String(name),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\tAttributeInfo: pulumi.String(\" {\\n \\\\\\\"lineCodeRectifyType\\\\\\\": \\\\\\\"RECTIFIED\\\\\\\",\\n \\\\\\\"lineCodes\\\\\\\": [\\\\\\\"os_namerica_us\\\\\\\"]\\n }\\n\"),\n\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n var defaultAddressPool = new AddressPool(\"defaultAddressPool\", AddressPoolArgs.builder()\n .addressPoolName(name)\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"\"\"\n {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n \"\"\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: ${name}\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\n defaultAddressPool:\n type: alicloud:dns:AddressPool\n name: default\n properties:\n addressPoolName: ${name}\n instanceId: ${defaultGtmInstance.id}\n lbaStrategy: RATIO\n type: IPV4\n addresses:\n - attributeInfo: |2\n {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n remark: address_remark\n address: 1.1.1.1\n mode: SMART\n lbaWeight: 1\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns Address Pool can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/addressPool:AddressPool example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Alidns Address Pool resource.\n\nFor information about Alidns Address Pool and how to use it, see [What is Address Pool](https://www.alibabacloud.com/help/doc-detail/189621.html).\n\n\u003e **NOTE:** Available since v1.152.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool = new alicloud.dns.AddressPool(\"default\", {\n addressPoolName: name,\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: ` {\n \\\\\"lineCodeRectifyType\\\\\": \\\\\"RECTIFIED\\\\\",\n \\\\\"lineCodes\\\\\": [\\\\\"os_namerica_us\\\\\"]\n }\n`,\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = alicloud.dns.AddressPool(\"default\",\n address_pool_name=name,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"\"\" {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n\"\"\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new AliCloud.Dns.AddressPool(\"default\", new()\n {\n AddressPoolName = name,\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = @\" {\n \\\"\"lineCodeRectifyType\\\"\": \\\"\"RECTIFIED\\\"\",\n \\\"\"lineCodes\\\"\": [\\\"\"os_namerica_us\\\"\"]\n }\n\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAddressPool(ctx, \"default\", \u0026dns.AddressPoolArgs{\n\t\t\tAddressPoolName: pulumi.String(name),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\tAttributeInfo: pulumi.String(\" {\\n \\\\\\\"lineCodeRectifyType\\\\\\\": \\\\\\\"RECTIFIED\\\\\\\",\\n \\\\\\\"lineCodes\\\\\\\": [\\\\\\\"os_namerica_us\\\\\\\"]\\n }\\n\"),\n\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n var defaultAddressPool = new AddressPool(\"defaultAddressPool\", AddressPoolArgs.builder()\n .addressPoolName(name)\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"\"\"\n {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n \"\"\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: ${name}\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\n defaultAddressPool:\n type: alicloud:dns:AddressPool\n name: default\n properties:\n addressPoolName: ${name}\n instanceId: ${defaultGtmInstance.id}\n lbaStrategy: RATIO\n type: IPV4\n addresses:\n - attributeInfo: |2\n {\n \\\"lineCodeRectifyType\\\": \\\"RECTIFIED\\\",\n \\\"lineCodes\\\": [\\\"os_namerica_us\\\"]\n }\n remark: address_remark\n address: 1.1.1.1\n mode: SMART\n lbaWeight: 1\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns Address Pool can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/addressPool:AddressPool example \u003cid\u003e\n```\n\n",
"properties": {
"addressPoolName": {
"type": "string",
@@ -143079,7 +145708,7 @@
}
},
"alicloud:dns/alidnsDomain:AlidnsDomain": {
- "description": "Provides a Alidns domain resource.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns domain can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsDomain:AlidnsDomain example aliyun.com\n```\n\n",
+ "description": "Provides a Alidns domain resource.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns domain can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsDomain:AlidnsDomain example aliyun.com\n```\n\n",
"properties": {
"dnsServers": {
"type": "array",
@@ -143226,7 +145855,7 @@
}
},
"alicloud:dns/alidnsDomainAttachment:AlidnsDomainAttachment": {
- "description": "Provides bind the domain name to the Alidns instance resource.\n\n\u003e **NOTE:** Available since v1.99.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAlidnsInstance = new alicloud.dns.AlidnsInstance(\"default\", {\n dnsSecurity: \"basic\",\n domainNumbers: \"3\",\n versionCode: \"version_personal\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n});\nconst defaultAlidnsDomainAttachment = new alicloud.dns.AlidnsDomainAttachment(\"default\", {\n instanceId: defaultAlidnsInstance.id,\n domainNames: [defaultAlidnsDomain.domainName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_alidns_instance = alicloud.dns.AlidnsInstance(\"default\",\n dns_security=\"basic\",\n domain_numbers=\"3\",\n version_code=\"version_personal\",\n period=1,\n renewal_status=\"ManualRenewal\")\ndefault_alidns_domain_attachment = alicloud.dns.AlidnsDomainAttachment(\"default\",\n instance_id=default_alidns_instance.id,\n domain_names=[default_alidns_domain.domain_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAlidnsInstance = new AliCloud.Dns.AlidnsInstance(\"default\", new()\n {\n DnsSecurity = \"basic\",\n DomainNumbers = \"3\",\n VersionCode = \"version_personal\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n });\n\n var defaultAlidnsDomainAttachment = new AliCloud.Dns.AlidnsDomainAttachment(\"default\", new()\n {\n InstanceId = defaultAlidnsInstance.Id,\n DomainNames = new[]\n {\n defaultAlidnsDomain.DomainName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsDomain, err := dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsInstance, err := dns.NewAlidnsInstance(ctx, \"default\", \u0026dns.AlidnsInstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"basic\"),\n\t\t\tDomainNumbers: pulumi.String(\"3\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsDomainAttachment(ctx, \"default\", \u0026dns.AlidnsDomainAttachmentArgs{\n\t\t\tInstanceId: defaultAlidnsInstance.ID(),\n\t\t\tDomainNames: pulumi.StringArray{\n\t\t\t\tdefaultAlidnsDomain.DomainName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport com.pulumi.alicloud.dns.AlidnsInstance;\nimport com.pulumi.alicloud.dns.AlidnsInstanceArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomainAttachment;\nimport com.pulumi.alicloud.dns.AlidnsDomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAlidnsInstance = new AlidnsInstance(\"defaultAlidnsInstance\", AlidnsInstanceArgs.builder()\n .dnsSecurity(\"basic\")\n .domainNumbers(\"3\")\n .versionCode(\"version_personal\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .build());\n\n var defaultAlidnsDomainAttachment = new AlidnsDomainAttachment(\"defaultAlidnsDomainAttachment\", AlidnsDomainAttachmentArgs.builder()\n .instanceId(defaultAlidnsInstance.id())\n .domainNames(defaultAlidnsDomain.domainName())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n defaultAlidnsInstance:\n type: alicloud:dns:AlidnsInstance\n name: default\n properties:\n dnsSecurity: basic\n domainNumbers: 3\n versionCode: version_personal\n period: 1\n renewalStatus: ManualRenewal\n defaultAlidnsDomainAttachment:\n type: alicloud:dns:AlidnsDomainAttachment\n name: default\n properties:\n instanceId: ${defaultAlidnsInstance.id}\n domainNames:\n - ${defaultAlidnsDomain.domainName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS domain attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsDomainAttachment:AlidnsDomainAttachment example dns-cn-v0h1ldjhxxx\n```\n\n",
+ "description": "Provides bind the domain name to the Alidns instance resource.\n\n\u003e **NOTE:** Available since v1.99.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst defaultAlidnsInstance = new alicloud.dns.AlidnsInstance(\"default\", {\n dnsSecurity: \"basic\",\n domainNumbers: \"3\",\n versionCode: \"version_personal\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n});\nconst defaultAlidnsDomainAttachment = new alicloud.dns.AlidnsDomainAttachment(\"default\", {\n instanceId: defaultAlidnsInstance.id,\n domainNames: [defaultAlidnsDomain.domainName],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\ndefault_alidns_instance = alicloud.dns.AlidnsInstance(\"default\",\n dns_security=\"basic\",\n domain_numbers=\"3\",\n version_code=\"version_personal\",\n period=1,\n renewal_status=\"ManualRenewal\")\ndefault_alidns_domain_attachment = alicloud.dns.AlidnsDomainAttachment(\"default\",\n instance_id=default_alidns_instance.id,\n domain_names=[default_alidns_domain.domain_name])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var defaultAlidnsInstance = new AliCloud.Dns.AlidnsInstance(\"default\", new()\n {\n DnsSecurity = \"basic\",\n DomainNumbers = \"3\",\n VersionCode = \"version_personal\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n });\n\n var defaultAlidnsDomainAttachment = new AliCloud.Dns.AlidnsDomainAttachment(\"default\", new()\n {\n InstanceId = defaultAlidnsInstance.Id,\n DomainNames = new[]\n {\n defaultAlidnsDomain.DomainName,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsDomain, err := dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsInstance, err := dns.NewAlidnsInstance(ctx, \"default\", \u0026dns.AlidnsInstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"basic\"),\n\t\t\tDomainNumbers: pulumi.String(\"3\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsDomainAttachment(ctx, \"default\", \u0026dns.AlidnsDomainAttachmentArgs{\n\t\t\tInstanceId: defaultAlidnsInstance.ID(),\n\t\t\tDomainNames: pulumi.StringArray{\n\t\t\t\tdefaultAlidnsDomain.DomainName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport com.pulumi.alicloud.dns.AlidnsInstance;\nimport com.pulumi.alicloud.dns.AlidnsInstanceArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomainAttachment;\nimport com.pulumi.alicloud.dns.AlidnsDomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var defaultAlidnsInstance = new AlidnsInstance(\"defaultAlidnsInstance\", AlidnsInstanceArgs.builder()\n .dnsSecurity(\"basic\")\n .domainNumbers(\"3\")\n .versionCode(\"version_personal\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .build());\n\n var defaultAlidnsDomainAttachment = new AlidnsDomainAttachment(\"defaultAlidnsDomainAttachment\", AlidnsDomainAttachmentArgs.builder()\n .instanceId(defaultAlidnsInstance.id())\n .domainNames(defaultAlidnsDomain.domainName())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n defaultAlidnsInstance:\n type: alicloud:dns:AlidnsInstance\n name: default\n properties:\n dnsSecurity: basic\n domainNumbers: 3\n versionCode: version_personal\n period: 1\n renewalStatus: ManualRenewal\n defaultAlidnsDomainAttachment:\n type: alicloud:dns:AlidnsDomainAttachment\n name: default\n properties:\n instanceId: ${defaultAlidnsInstance.id}\n domainNames:\n - ${defaultAlidnsDomain.domainName}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS domain attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsDomainAttachment:AlidnsDomainAttachment example dns-cn-v0h1ldjhxxx\n```\n\n",
"properties": {
"domainNames": {
"type": "array",
@@ -143282,7 +145911,7 @@
}
},
"alicloud:dns/alidnsInstance:AlidnsInstance": {
- "description": "Create an Alidns Instance resource.\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.dns.AlidnsInstance(\"example\", {\n dnsSecurity: \"no\",\n domainNumbers: \"2\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"ManualRenewal\",\n versionCode: \"version_personal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.dns.AlidnsInstance(\"example\",\n dns_security=\"no\",\n domain_numbers=\"2\",\n period=1,\n renew_period=1,\n renewal_status=\"ManualRenewal\",\n version_code=\"version_personal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Dns.AlidnsInstance(\"example\", new()\n {\n DnsSecurity = \"no\",\n DomainNumbers = \"2\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"ManualRenewal\",\n VersionCode = \"version_personal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewAlidnsInstance(ctx, \"example\", \u0026dns.AlidnsInstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"no\"),\n\t\t\tDomainNumbers: pulumi.String(\"2\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.AlidnsInstance;\nimport com.pulumi.alicloud.dns.AlidnsInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlidnsInstance(\"example\", AlidnsInstanceArgs.builder()\n .dnsSecurity(\"no\")\n .domainNumbers(\"2\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"ManualRenewal\")\n .versionCode(\"version_personal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:dns:AlidnsInstance\n properties:\n dnsSecurity: no\n domainNumbers: '2'\n period: 1\n renewPeriod: 1\n renewalStatus: ManualRenewal\n versionCode: version_personal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS instance be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsInstance:AlidnsInstance example dns-cn-v0h1ldjhfff\n```\n\n",
+ "description": "Create an Alidns Instance resource.\n\n\u003e **NOTE:** Available since v1.95.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.dns.AlidnsInstance(\"example\", {\n dnsSecurity: \"no\",\n domainNumbers: \"2\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"ManualRenewal\",\n versionCode: \"version_personal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.dns.AlidnsInstance(\"example\",\n dns_security=\"no\",\n domain_numbers=\"2\",\n period=1,\n renew_period=1,\n renewal_status=\"ManualRenewal\",\n version_code=\"version_personal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Dns.AlidnsInstance(\"example\", new()\n {\n DnsSecurity = \"no\",\n DomainNumbers = \"2\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"ManualRenewal\",\n VersionCode = \"version_personal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewAlidnsInstance(ctx, \"example\", \u0026dns.AlidnsInstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"no\"),\n\t\t\tDomainNumbers: pulumi.String(\"2\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.AlidnsInstance;\nimport com.pulumi.alicloud.dns.AlidnsInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AlidnsInstance(\"example\", AlidnsInstanceArgs.builder()\n .dnsSecurity(\"no\")\n .domainNumbers(\"2\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"ManualRenewal\")\n .versionCode(\"version_personal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:dns:AlidnsInstance\n properties:\n dnsSecurity: no\n domainNumbers: '2'\n period: 1\n renewPeriod: 1\n renewalStatus: ManualRenewal\n versionCode: version_personal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS instance be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsInstance:AlidnsInstance example dns-cn-v0h1ldjhfff\n```\n\n",
"properties": {
"dnsSecurity": {
"type": "string",
@@ -143411,7 +146040,7 @@
}
},
"alicloud:dns/alidnsRecord:AlidnsRecord": {
- "description": "Provides a Alidns Record resource. For information about Alidns Domain Record and how to use it, see [What is Resource Alidns Record](https://www.alibabacloud.com/help/en/alibaba-cloud-dns/latest/adding-a-dns-record).\n\n\u003e **NOTE:** Available since v1.85.0.\n\n\u003e **NOTE:** When the site is an international site, the \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e neither supports `REDIRECT_URL` nor `REDIRECT_URL`\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst record = new alicloud.dns.AlidnsRecord(\"record\", {\n domainName: defaultAlidnsDomain.domainName,\n rr: \"alimail\",\n type: \"CNAME\",\n value: \"mail.mxhichin.com\",\n remark: \"tf-example\",\n status: \"ENABLE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\nrecord = alicloud.dns.AlidnsRecord(\"record\",\n domain_name=default_alidns_domain.domain_name,\n rr=\"alimail\",\n type=\"CNAME\",\n value=\"mail.mxhichin.com\",\n remark=\"tf-example\",\n status=\"ENABLE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var record = new AliCloud.Dns.AlidnsRecord(\"record\", new()\n {\n DomainName = defaultAlidnsDomain.DomainName,\n Rr = \"alimail\",\n Type = \"CNAME\",\n Value = \"mail.mxhichin.com\",\n Remark = \"tf-example\",\n Status = \"ENABLE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsDomain, err := dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsRecord(ctx, \"record\", \u0026dns.AlidnsRecordArgs{\n\t\t\tDomainName: defaultAlidnsDomain.DomainName,\n\t\t\tRr: pulumi.String(\"alimail\"),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tValue: pulumi.String(\"mail.mxhichin.com\"),\n\t\t\tRemark: pulumi.String(\"tf-example\"),\n\t\t\tStatus: pulumi.String(\"ENABLE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport com.pulumi.alicloud.dns.AlidnsRecord;\nimport com.pulumi.alicloud.dns.AlidnsRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var record = new AlidnsRecord(\"record\", AlidnsRecordArgs.builder()\n .domainName(defaultAlidnsDomain.domainName())\n .rr(\"alimail\")\n .type(\"CNAME\")\n .value(\"mail.mxhichin.com\")\n .remark(\"tf-example\")\n .status(\"ENABLE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n record:\n type: alicloud:dns:AlidnsRecord\n properties:\n domainName: ${defaultAlidnsDomain.domainName}\n rr: alimail\n type: CNAME\n value: mail.mxhichin.com\n remark: tf-example\n status: ENABLE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns Domain Record can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsRecord:AlidnsRecord example abc123456\n```\n\n",
+ "description": "Provides a Alidns Record resource. For information about Alidns Domain Record and how to use it, see [What is Resource Alidns Record](https://www.alibabacloud.com/help/en/alibaba-cloud-dns/latest/adding-a-dns-record).\n\n\u003e **NOTE:** Available since v1.85.0.\n\n\u003e **NOTE:** When the site is an international site, the \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e neither supports `REDIRECT_URL` nor `REDIRECT_URL`\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\nconst defaultAlidnsDomain = new alicloud.dns.AlidnsDomain(\"default\", {\n domainName: \"starmove.com\",\n groupId: _default.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst record = new alicloud.dns.AlidnsRecord(\"record\", {\n domainName: defaultAlidnsDomain.domainName,\n rr: \"alimail\",\n type: \"CNAME\",\n value: \"mail.mxhichin.com\",\n remark: \"tf-example\",\n status: \"ENABLE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\ndefault_alidns_domain = alicloud.dns.AlidnsDomain(\"default\",\n domain_name=\"starmove.com\",\n group_id=default.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\nrecord = alicloud.dns.AlidnsRecord(\"record\",\n domain_name=default_alidns_domain.domain_name,\n rr=\"alimail\",\n type=\"CNAME\",\n value=\"mail.mxhichin.com\",\n remark=\"tf-example\",\n status=\"ENABLE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain(\"default\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = @default.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var record = new AliCloud.Dns.AlidnsRecord(\"record\", new()\n {\n DomainName = defaultAlidnsDomain.DomainName,\n Rr = \"alimail\",\n Type = \"CNAME\",\n Value = \"mail.mxhichin.com\",\n Remark = \"tf-example\",\n Status = \"ENABLE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlidnsDomain, err := dns.NewAlidnsDomain(ctx, \"default\", \u0026dns.AlidnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: _default.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewAlidnsRecord(ctx, \"record\", \u0026dns.AlidnsRecordArgs{\n\t\t\tDomainName: defaultAlidnsDomain.DomainName,\n\t\t\tRr: pulumi.String(\"alimail\"),\n\t\t\tType: pulumi.String(\"CNAME\"),\n\t\t\tValue: pulumi.String(\"mail.mxhichin.com\"),\n\t\t\tRemark: pulumi.String(\"tf-example\"),\n\t\t\tStatus: pulumi.String(\"ENABLE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport com.pulumi.alicloud.dns.AlidnsDomain;\nimport com.pulumi.alicloud.dns.AlidnsDomainArgs;\nimport com.pulumi.alicloud.dns.AlidnsRecord;\nimport com.pulumi.alicloud.dns.AlidnsRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n var defaultAlidnsDomain = new AlidnsDomain(\"defaultAlidnsDomain\", AlidnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(default_.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var record = new AlidnsRecord(\"record\", AlidnsRecordArgs.builder()\n .domainName(defaultAlidnsDomain.domainName())\n .rr(\"alimail\")\n .type(\"CNAME\")\n .value(\"mail.mxhichin.com\")\n .remark(\"tf-example\")\n .status(\"ENABLE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n defaultAlidnsDomain:\n type: alicloud:dns:AlidnsDomain\n name: default\n properties:\n domainName: starmove.com\n groupId: ${default.id}\n tags:\n Created: TF\n For: example\n record:\n type: alicloud:dns:AlidnsRecord\n properties:\n domainName: ${defaultAlidnsDomain.domainName}\n rr: alimail\n type: CNAME\n value: mail.mxhichin.com\n remark: tf-example\n status: ENABLE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns Domain Record can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/alidnsRecord:AlidnsRecord example abc123456\n```\n\n",
"properties": {
"domainName": {
"type": "string",
@@ -143447,7 +146076,7 @@
},
"type": {
"type": "string",
- "description": "The type of domain record. Valid values: `A`,`NS`,`MX`,`TXT`,`CNAME`,`SRV`,`AAAA`,`CAA`, `REDIRECT_URL` and `FORWORD_URL`.\n"
+ "description": "The type of domain record. For more information, see [How to use it](https://www.alibabacloud.com/help/en/dns/dns-record-types).\n"
},
"userClientIp": {
"type": "string",
@@ -143500,7 +146129,7 @@
},
"type": {
"type": "string",
- "description": "The type of domain record. Valid values: `A`,`NS`,`MX`,`TXT`,`CNAME`,`SRV`,`AAAA`,`CAA`, `REDIRECT_URL` and `FORWORD_URL`.\n"
+ "description": "The type of domain record. For more information, see [How to use it](https://www.alibabacloud.com/help/en/dns/dns-record-types).\n"
},
"userClientIp": {
"type": "string",
@@ -143555,7 +146184,7 @@
},
"type": {
"type": "string",
- "description": "The type of domain record. Valid values: `A`,`NS`,`MX`,`TXT`,`CNAME`,`SRV`,`AAAA`,`CAA`, `REDIRECT_URL` and `FORWORD_URL`.\n"
+ "description": "The type of domain record. For more information, see [How to use it](https://www.alibabacloud.com/help/en/dns/dns-record-types).\n"
},
"userClientIp": {
"type": "string",
@@ -143570,7 +146199,7 @@
}
},
"alicloud:dns/customLine:CustomLine": {
- "description": "Provides a Alidns Custom Line resource.\n\nFor information about Alidns Custom Line and how to use it, see [What is Custom Line](https://www.alibabacloud.com/help/en/doc-detail/145059.html).\n\n\u003e **NOTE:** Available since v1.151.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.CustomLine(\"default\", {\n customLineName: \"tf-example\",\n domainName: \"alicloud-provider.com\",\n ipSegmentLists: [{\n startIp: \"192.0.2.123\",\n endIp: \"192.0.2.125\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.CustomLine(\"default\",\n custom_line_name=\"tf-example\",\n domain_name=\"alicloud-provider.com\",\n ip_segment_lists=[{\n \"start_ip\": \"192.0.2.123\",\n \"end_ip\": \"192.0.2.125\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.CustomLine(\"default\", new()\n {\n CustomLineName = \"tf-example\",\n DomainName = \"alicloud-provider.com\",\n IpSegmentLists = new[]\n {\n new AliCloud.Dns.Inputs.CustomLineIpSegmentListArgs\n {\n StartIp = \"192.0.2.123\",\n EndIp = \"192.0.2.125\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewCustomLine(ctx, \"default\", \u0026dns.CustomLineArgs{\n\t\t\tCustomLineName: pulumi.String(\"tf-example\"),\n\t\t\tDomainName: pulumi.String(\"alicloud-provider.com\"),\n\t\t\tIpSegmentLists: dns.CustomLineIpSegmentListArray{\n\t\t\t\t\u0026dns.CustomLineIpSegmentListArgs{\n\t\t\t\t\tStartIp: pulumi.String(\"192.0.2.123\"),\n\t\t\t\t\tEndIp: pulumi.String(\"192.0.2.125\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.CustomLine;\nimport com.pulumi.alicloud.dns.CustomLineArgs;\nimport com.pulumi.alicloud.dns.inputs.CustomLineIpSegmentListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new CustomLine(\"default\", CustomLineArgs.builder()\n .customLineName(\"tf-example\")\n .domainName(\"alicloud-provider.com\")\n .ipSegmentLists(CustomLineIpSegmentListArgs.builder()\n .startIp(\"192.0.2.123\")\n .endIp(\"192.0.2.125\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:CustomLine\n properties:\n customLineName: tf-example\n domainName: alicloud-provider.com\n ipSegmentLists:\n - startIp: 192.0.2.123\n endIp: 192.0.2.125\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns Custom Line can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/customLine:CustomLine example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Alidns Custom Line resource.\n\nFor information about Alidns Custom Line and how to use it, see [What is Custom Line](https://www.alibabacloud.com/help/en/doc-detail/145059.html).\n\n\u003e **NOTE:** Available since v1.151.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.CustomLine(\"default\", {\n customLineName: \"tf-example\",\n domainName: \"alicloud-provider.com\",\n ipSegmentLists: [{\n startIp: \"192.0.2.123\",\n endIp: \"192.0.2.125\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.CustomLine(\"default\",\n custom_line_name=\"tf-example\",\n domain_name=\"alicloud-provider.com\",\n ip_segment_lists=[{\n \"start_ip\": \"192.0.2.123\",\n \"end_ip\": \"192.0.2.125\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.CustomLine(\"default\", new()\n {\n CustomLineName = \"tf-example\",\n DomainName = \"alicloud-provider.com\",\n IpSegmentLists = new[]\n {\n new AliCloud.Dns.Inputs.CustomLineIpSegmentListArgs\n {\n StartIp = \"192.0.2.123\",\n EndIp = \"192.0.2.125\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewCustomLine(ctx, \"default\", \u0026dns.CustomLineArgs{\n\t\t\tCustomLineName: pulumi.String(\"tf-example\"),\n\t\t\tDomainName: pulumi.String(\"alicloud-provider.com\"),\n\t\t\tIpSegmentLists: dns.CustomLineIpSegmentListArray{\n\t\t\t\t\u0026dns.CustomLineIpSegmentListArgs{\n\t\t\t\t\tStartIp: pulumi.String(\"192.0.2.123\"),\n\t\t\t\t\tEndIp: pulumi.String(\"192.0.2.125\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.CustomLine;\nimport com.pulumi.alicloud.dns.CustomLineArgs;\nimport com.pulumi.alicloud.dns.inputs.CustomLineIpSegmentListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new CustomLine(\"default\", CustomLineArgs.builder()\n .customLineName(\"tf-example\")\n .domainName(\"alicloud-provider.com\")\n .ipSegmentLists(CustomLineIpSegmentListArgs.builder()\n .startIp(\"192.0.2.123\")\n .endIp(\"192.0.2.125\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:CustomLine\n properties:\n customLineName: tf-example\n domainName: alicloud-provider.com\n ipSegmentLists:\n - startIp: 192.0.2.123\n endIp: 192.0.2.125\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns Custom Line can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/customLine:CustomLine example \u003cid\u003e\n```\n\n",
"properties": {
"customLineName": {
"type": "string",
@@ -143847,7 +146476,7 @@
"deprecationMessage": "alicloud.dns.DdosBgpInstance has been deprecated in favor of alicloud.ddos.DdosBgpInstance"
},
"alicloud:dns/ddosCooInstance:DdosCooInstance": {
- "description": "Provides a BGP-line Anti-DDoS Pro(DdosCoo) Instance resource.\n\nFor information about BGP-line Anti-DDoS Pro(DdosCoo) Instance and how to use it, see [What is Anti-DDoS Pro Instance](https://www.alibabacloud.com/help/en/ddos-protection/latest/create-an-anti-ddos-pro-or-anti-ddos-premium-instance-by-calling-an-api-operation).\n\n\u003e **NOTE:** Available since v1.37.0.\n\n\u003e **NOTE:** The endpoint of bssopenapi used only support \"business.aliyuncs.com\" at present.\n\n\u003e **NOTE:** From version 1.214.0, if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`ddoscoo`\" pulumi-lang-dotnet=\"`Ddoscoo`\" pulumi-lang-go=\"`ddoscoo`\" pulumi-lang-python=\"`ddoscoo`\" pulumi-lang-yaml=\"`ddoscoo`\" pulumi-lang-java=\"`ddoscoo`\"\u003e`ddoscoo`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ddoscooIntl`\" pulumi-lang-dotnet=\"`DdoscooIntl`\" pulumi-lang-go=\"`ddoscooIntl`\" pulumi-lang-python=\"`ddoscoo_intl`\" pulumi-lang-yaml=\"`ddoscooIntl`\" pulumi-lang-java=\"`ddoscooIntl`\"\u003e`ddoscoo_intl`\u003c/span\u003e, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `cn-hangzhou`, and if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to `ddosDip`, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `ap-southeast-1`.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n baseBandwidth: \"30\",\n bandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n productType: \"ddoscoo\",\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n base_bandwidth=\"30\",\n bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n product_type=\"ddoscoo\",\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = \"30\",\n Bandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n ProductType = \"ddoscoo\",\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .baseBandwidth(\"30\")\n .bandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .productType(\"ddoscoo\")\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n baseBandwidth: '30'\n bandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n productType: ddoscoo\n period: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDdosCoo Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/ddosCooInstance:DdosCooInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a BGP-line Anti-DDoS Pro(DdosCoo) Instance resource.\n\nFor information about BGP-line Anti-DDoS Pro(DdosCoo) Instance and how to use it, see [What is Anti-DDoS Pro Instance](https://www.alibabacloud.com/help/en/ddos-protection/latest/create-an-anti-ddos-pro-or-anti-ddos-premium-instance-by-calling-an-api-operation).\n\n\u003e **NOTE:** Available since v1.37.0.\n\n\u003e **NOTE:** The endpoint of bssopenapi used only support \"business.aliyuncs.com\" at present.\n\n\u003e **NOTE:** From version 1.214.0, if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`ddoscoo`\" pulumi-lang-dotnet=\"`Ddoscoo`\" pulumi-lang-go=\"`ddoscoo`\" pulumi-lang-python=\"`ddoscoo`\" pulumi-lang-yaml=\"`ddoscoo`\" pulumi-lang-java=\"`ddoscoo`\"\u003e`ddoscoo`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`ddoscooIntl`\" pulumi-lang-dotnet=\"`DdoscooIntl`\" pulumi-lang-go=\"`ddoscooIntl`\" pulumi-lang-python=\"`ddoscoo_intl`\" pulumi-lang-yaml=\"`ddoscooIntl`\" pulumi-lang-java=\"`ddoscooIntl`\"\u003e`ddoscoo_intl`\u003c/span\u003e, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `cn-hangzhou`, and if \u003cspan pulumi-lang-nodejs=\"`productType`\" pulumi-lang-dotnet=\"`ProductType`\" pulumi-lang-go=\"`productType`\" pulumi-lang-python=\"`product_type`\" pulumi-lang-yaml=\"`productType`\" pulumi-lang-java=\"`productType`\"\u003e`product_type`\u003c/span\u003e is set to `ddosDip`, the provider \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e should be set to `ap-southeast-1`.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = new alicloud.ddos.DdosCooInstance(\"default\", {\n name: name,\n baseBandwidth: \"30\",\n bandwidth: \"30\",\n serviceBandwidth: \"100\",\n portCount: \"50\",\n domainCount: \"50\",\n productType: \"ddoscoo\",\n period: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.ddos.DdosCooInstance(\"default\",\n name=name,\n base_bandwidth=\"30\",\n bandwidth=\"30\",\n service_bandwidth=\"100\",\n port_count=\"50\",\n domain_count=\"50\",\n product_type=\"ddoscoo\",\n period=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = new AliCloud.Ddos.DdosCooInstance(\"default\", new()\n {\n Name = name,\n BaseBandwidth = \"30\",\n Bandwidth = \"30\",\n ServiceBandwidth = \"100\",\n PortCount = \"50\",\n DomainCount = \"50\",\n ProductType = \"ddoscoo\",\n Period = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ddos.NewDdosCooInstance(ctx, \"default\", \u0026ddos.DdosCooInstanceArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tBaseBandwidth: pulumi.String(\"30\"),\n\t\t\tBandwidth: pulumi.String(\"30\"),\n\t\t\tServiceBandwidth: pulumi.String(\"100\"),\n\t\t\tPortCount: pulumi.String(\"50\"),\n\t\t\tDomainCount: pulumi.String(\"50\"),\n\t\t\tProductType: pulumi.String(\"ddoscoo\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ddos.DdosCooInstance;\nimport com.pulumi.alicloud.ddos.DdosCooInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var default_ = new DdosCooInstance(\"default\", DdosCooInstanceArgs.builder()\n .name(name)\n .baseBandwidth(\"30\")\n .bandwidth(\"30\")\n .serviceBandwidth(\"100\")\n .portCount(\"50\")\n .domainCount(\"50\")\n .productType(\"ddoscoo\")\n .period(1)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n default:\n type: alicloud:ddos:DdosCooInstance\n properties:\n name: ${name}\n baseBandwidth: '30'\n bandwidth: '30'\n serviceBandwidth: '100'\n portCount: '50'\n domainCount: '50'\n productType: ddoscoo\n period: '1'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDdosCoo Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/ddosCooInstance:DdosCooInstance example \u003cid\u003e\n```\n\n",
"properties": {
"addressType": {
"type": "string",
@@ -144123,7 +146752,7 @@
"deprecationMessage": "alicloud.dns.DdosCooInstance has been deprecated in favor of alicloud.ddos.DdosCooInstance"
},
"alicloud:dns/dnsDomain:DnsDomain": {
- "description": "Provides a DNS domain resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsDomain \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsDomain \" pulumi-lang-go=\" dns.AlidnsDomain \" pulumi-lang-python=\" dns.AlidnsDomain \" pulumi-lang-yaml=\" alicloud.dns.AlidnsDomain \" pulumi-lang-java=\" alicloud.dns.AlidnsDomain \"\u003e alicloud.dns.AlidnsDomain \u003c/span\u003efrom version 1.95.0.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n\u003e **NOTE:** Available in v1.81.0+.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain.\nconst dns = new alicloud.dns.DnsDomain(\"dns\", {\n domainName: \"starmove.com\",\n groupId: \"85ab8713-4a30-4de4-9d20-155ff830****\",\n tags: {\n Created: \"Terraform\",\n Environment: \"test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain.\ndns = alicloud.dns.DnsDomain(\"dns\",\n domain_name=\"starmove.com\",\n group_id=\"85ab8713-4a30-4de4-9d20-155ff830****\",\n tags={\n \"Created\": \"Terraform\",\n \"Environment\": \"test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain.\n var dns = new AliCloud.Dns.DnsDomain(\"dns\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = \"85ab8713-4a30-4de4-9d20-155ff830****\",\n Tags = \n {\n { \"Created\", \"Terraform\" },\n { \"Environment\", \"test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain.\n\t\t_, err := dns.NewDnsDomain(ctx, \"dns\", \u0026dns.DnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: pulumi.String(\"85ab8713-4a30-4de4-9d20-155ff830****\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"Terraform\"),\n\t\t\t\t\"Environment\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DnsDomain;\nimport com.pulumi.alicloud.dns.DnsDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain.\n var dns = new DnsDomain(\"dns\", DnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(\"85ab8713-4a30-4de4-9d20-155ff830****\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"Terraform\"),\n Map.entry(\"Environment\", \"test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain.\n dns:\n type: alicloud:dns:DnsDomain\n properties:\n domainName: starmove.com\n groupId: 85ab8713-4a30-4de4-9d20-155ff830****\n tags:\n Created: Terraform\n Environment: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS domain can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/dnsDomain:DnsDomain example aliyun.com\n```\n\n",
+ "description": "Provides a DNS domain resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsDomain \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsDomain \" pulumi-lang-go=\" dns.AlidnsDomain \" pulumi-lang-python=\" dns.AlidnsDomain \" pulumi-lang-yaml=\" alicloud.dns.AlidnsDomain \" pulumi-lang-java=\" alicloud.dns.AlidnsDomain \"\u003e alicloud.dns.AlidnsDomain \u003c/span\u003efrom version 1.95.0.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n\u003e **NOTE:** Available in v1.81.0+.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain.\nconst dns = new alicloud.dns.DnsDomain(\"dns\", {\n domainName: \"starmove.com\",\n groupId: \"85ab8713-4a30-4de4-9d20-155ff830****\",\n tags: {\n Created: \"Terraform\",\n Environment: \"test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain.\ndns = alicloud.dns.DnsDomain(\"dns\",\n domain_name=\"starmove.com\",\n group_id=\"85ab8713-4a30-4de4-9d20-155ff830****\",\n tags={\n \"Created\": \"Terraform\",\n \"Environment\": \"test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain.\n var dns = new AliCloud.Dns.DnsDomain(\"dns\", new()\n {\n DomainName = \"starmove.com\",\n GroupId = \"85ab8713-4a30-4de4-9d20-155ff830****\",\n Tags = \n {\n { \"Created\", \"Terraform\" },\n { \"Environment\", \"test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain.\n\t\t_, err := dns.NewDnsDomain(ctx, \"dns\", \u0026dns.DnsDomainArgs{\n\t\t\tDomainName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: pulumi.String(\"85ab8713-4a30-4de4-9d20-155ff830****\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"Terraform\"),\n\t\t\t\t\"Environment\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DnsDomain;\nimport com.pulumi.alicloud.dns.DnsDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain.\n var dns = new DnsDomain(\"dns\", DnsDomainArgs.builder()\n .domainName(\"starmove.com\")\n .groupId(\"85ab8713-4a30-4de4-9d20-155ff830****\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"Terraform\"),\n Map.entry(\"Environment\", \"test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain.\n dns:\n type: alicloud:dns:DnsDomain\n properties:\n domainName: starmove.com\n groupId: 85ab8713-4a30-4de4-9d20-155ff830****\n tags:\n Created: Terraform\n Environment: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS domain can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/dnsDomain:DnsDomain example aliyun.com\n```\n\n",
"properties": {
"dnsServers": {
"type": "array",
@@ -144264,7 +146893,7 @@
}
},
"alicloud:dns/domain:Domain": {
- "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsDomain \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsDomain \" pulumi-lang-go=\" dns.AlidnsDomain \" pulumi-lang-python=\" dns.AlidnsDomain \" pulumi-lang-yaml=\" alicloud.dns.AlidnsDomain \" pulumi-lang-java=\" alicloud.dns.AlidnsDomain \"\u003e alicloud.dns.AlidnsDomain \u003c/span\u003efrom version 1.95.0.\n\nProvides a DNS resource.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain.\nconst dns = new alicloud.dns.Domain(\"dns\", {\n name: \"starmove.com\",\n groupId: \"85ab8713-4a30-4de4-9d20-155ff830f651\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain.\ndns = alicloud.dns.Domain(\"dns\",\n name=\"starmove.com\",\n group_id=\"85ab8713-4a30-4de4-9d20-155ff830f651\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain.\n var dns = new AliCloud.Dns.Domain(\"dns\", new()\n {\n Name = \"starmove.com\",\n GroupId = \"85ab8713-4a30-4de4-9d20-155ff830f651\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain.\n\t\t_, err := dns.NewDomain(ctx, \"dns\", \u0026dns.DomainArgs{\n\t\t\tName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: pulumi.String(\"85ab8713-4a30-4de4-9d20-155ff830f651\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Domain;\nimport com.pulumi.alicloud.dns.DomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain.\n var dns = new Domain(\"dns\", DomainArgs.builder()\n .name(\"starmove.com\")\n .groupId(\"85ab8713-4a30-4de4-9d20-155ff830f651\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain.\n dns:\n type: alicloud:dns:Domain\n properties:\n name: starmove.com\n groupId: 85ab8713-4a30-4de4-9d20-155ff830f651\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domain:Domain example \"aliyun.com\"\n```\n\n",
+ "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsDomain \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsDomain \" pulumi-lang-go=\" dns.AlidnsDomain \" pulumi-lang-python=\" dns.AlidnsDomain \" pulumi-lang-yaml=\" alicloud.dns.AlidnsDomain \" pulumi-lang-java=\" alicloud.dns.AlidnsDomain \"\u003e alicloud.dns.AlidnsDomain \u003c/span\u003efrom version 1.95.0.\n\nProvides a DNS resource.\n\n\u003e **NOTE:** The domain name which you want to add must be already registered and had not added by another account. Every domain name can only exist in a unique group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain.\nconst dns = new alicloud.dns.Domain(\"dns\", {\n name: \"starmove.com\",\n groupId: \"85ab8713-4a30-4de4-9d20-155ff830f651\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain.\ndns = alicloud.dns.Domain(\"dns\",\n name=\"starmove.com\",\n group_id=\"85ab8713-4a30-4de4-9d20-155ff830f651\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain.\n var dns = new AliCloud.Dns.Domain(\"dns\", new()\n {\n Name = \"starmove.com\",\n GroupId = \"85ab8713-4a30-4de4-9d20-155ff830f651\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain.\n\t\t_, err := dns.NewDomain(ctx, \"dns\", \u0026dns.DomainArgs{\n\t\t\tName: pulumi.String(\"starmove.com\"),\n\t\t\tGroupId: pulumi.String(\"85ab8713-4a30-4de4-9d20-155ff830f651\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Domain;\nimport com.pulumi.alicloud.dns.DomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain.\n var dns = new Domain(\"dns\", DomainArgs.builder()\n .name(\"starmove.com\")\n .groupId(\"85ab8713-4a30-4de4-9d20-155ff830f651\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain.\n dns:\n type: alicloud:dns:Domain\n properties:\n name: starmove.com\n groupId: 85ab8713-4a30-4de4-9d20-155ff830f651\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS can be imported using the id or domain name, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domain:Domain example \"aliyun.com\"\n```\n\n",
"properties": {
"dnsServers": {
"type": "array",
@@ -144345,7 +146974,7 @@
"deprecationMessage": "This resource has been deprecated in favour of DnsDomain"
},
"alicloud:dns/domainAttachment:DomainAttachment": {
- "description": "Provides bind the domain name to the DNS instance resource.\n\n\u003e **NOTE:** Available in v1.80.0+.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.99.0`. Please use new resource alicloud_alidns_domain_attachment.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst dns = new alicloud.dns.DomainAttachment(\"dns\", {\n instanceId: \"dns-cn-mp91lyq9xxxx\",\n domainNames: [\n \"test111.abc\",\n \"test222.abc\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndns = alicloud.dns.DomainAttachment(\"dns\",\n instance_id=\"dns-cn-mp91lyq9xxxx\",\n domain_names=[\n \"test111.abc\",\n \"test222.abc\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dns = new AliCloud.Dns.DomainAttachment(\"dns\", new()\n {\n InstanceId = \"dns-cn-mp91lyq9xxxx\",\n DomainNames = new[]\n {\n \"test111.abc\",\n \"test222.abc\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewDomainAttachment(ctx, \"dns\", \u0026dns.DomainAttachmentArgs{\n\t\t\tInstanceId: pulumi.String(\"dns-cn-mp91lyq9xxxx\"),\n\t\t\tDomainNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test111.abc\"),\n\t\t\t\tpulumi.String(\"test222.abc\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainAttachment;\nimport com.pulumi.alicloud.dns.DomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var dns = new DomainAttachment(\"dns\", DomainAttachmentArgs.builder()\n .instanceId(\"dns-cn-mp91lyq9xxxx\")\n .domainNames( \n \"test111.abc\",\n \"test222.abc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n dns:\n type: alicloud:dns:DomainAttachment\n properties:\n instanceId: dns-cn-mp91lyq9xxxx\n domainNames:\n - test111.abc\n - test222.abc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS domain attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domainAttachment:DomainAttachment example dns-cn-v0h1ldjhxxx\n```\n\n",
+ "description": "Provides bind the domain name to the DNS instance resource.\n\n\u003e **NOTE:** Available in v1.80.0+.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.99.0`. Please use new resource alicloud_alidns_domain_attachment.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst dns = new alicloud.dns.DomainAttachment(\"dns\", {\n instanceId: \"dns-cn-mp91lyq9xxxx\",\n domainNames: [\n \"test111.abc\",\n \"test222.abc\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndns = alicloud.dns.DomainAttachment(\"dns\",\n instance_id=\"dns-cn-mp91lyq9xxxx\",\n domain_names=[\n \"test111.abc\",\n \"test222.abc\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dns = new AliCloud.Dns.DomainAttachment(\"dns\", new()\n {\n InstanceId = \"dns-cn-mp91lyq9xxxx\",\n DomainNames = new[]\n {\n \"test111.abc\",\n \"test222.abc\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewDomainAttachment(ctx, \"dns\", \u0026dns.DomainAttachmentArgs{\n\t\t\tInstanceId: pulumi.String(\"dns-cn-mp91lyq9xxxx\"),\n\t\t\tDomainNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test111.abc\"),\n\t\t\t\tpulumi.String(\"test222.abc\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainAttachment;\nimport com.pulumi.alicloud.dns.DomainAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var dns = new DomainAttachment(\"dns\", DomainAttachmentArgs.builder()\n .instanceId(\"dns-cn-mp91lyq9xxxx\")\n .domainNames( \n \"test111.abc\",\n \"test222.abc\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n dns:\n type: alicloud:dns:DomainAttachment\n properties:\n instanceId: dns-cn-mp91lyq9xxxx\n domainNames:\n - test111.abc\n - test222.abc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS domain attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domainAttachment:DomainAttachment example dns-cn-v0h1ldjhxxx\n```\n\n",
"properties": {
"domainNames": {
"type": "array",
@@ -144401,7 +147030,7 @@
}
},
"alicloud:dns/domainGroup:DomainGroup": {
- "description": "Provides a Alidns Domain Group resource. For information about Alidns Domain Group and how to use it, see [What is Resource Alidns Domain Group](https://www.alibabacloud.com/help/en/doc-detail/29762.htm).\n\n\u003e **NOTE:** Available since v1.84.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns domain group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domainGroup:DomainGroup example 0932eb3ddee7499085c4d13d45*****\n```\n\n",
+ "description": "Provides a Alidns Domain Group resource. For information about Alidns Domain Group and how to use it, see [What is Resource Alidns Domain Group](https://www.alibabacloud.com/help/en/doc-detail/29762.htm).\n\n\u003e **NOTE:** Available since v1.84.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.dns.DomainGroup(\"default\", {domainGroupName: \"tf-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.dns.DomainGroup(\"default\", domain_group_name=\"tf-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Dns.DomainGroup(\"default\", new()\n {\n DomainGroupName = \"tf-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewDomainGroup(ctx, \"default\", \u0026dns.DomainGroupArgs{\n\t\t\tDomainGroupName: pulumi.String(\"tf-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.DomainGroup;\nimport com.pulumi.alicloud.dns.DomainGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DomainGroup(\"default\", DomainGroupArgs.builder()\n .domainGroupName(\"tf-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:dns:DomainGroup\n properties:\n domainGroupName: tf-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns domain group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/domainGroup:DomainGroup example 0932eb3ddee7499085c4d13d45*****\n```\n\n",
"properties": {
"domainGroupName": {
"type": "string",
@@ -144457,7 +147086,7 @@
}
},
"alicloud:dns/group:Group": {
- "description": "\u003e **DEPRECATED:** This resource has been deprecated from version `1.84.0`. Please use new resource alicloud_alidns_domain_group.\n\nProvides a DNS Group resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain group.\nconst group = new alicloud.dns.Group(\"group\", {name: \"testgroup\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain group.\ngroup = alicloud.dns.Group(\"group\", name=\"testgroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain group.\n var @group = new AliCloud.Dns.Group(\"group\", new()\n {\n Name = \"testgroup\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain group.\n\t\t_, err := dns.NewGroup(ctx, \"group\", \u0026dns.GroupArgs{\n\t\t\tName: pulumi.String(\"testgroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Group;\nimport com.pulumi.alicloud.dns.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain group.\n var group = new Group(\"group\", GroupArgs.builder()\n .name(\"testgroup\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain group.\n group:\n type: alicloud:dns:Group\n properties:\n name: testgroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "\u003e **DEPRECATED:** This resource has been deprecated from version `1.84.0`. Please use new resource alicloud_alidns_domain_group.\n\nProvides a DNS Group resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Add a new Domain group.\nconst group = new alicloud.dns.Group(\"group\", {name: \"testgroup\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Add a new Domain group.\ngroup = alicloud.dns.Group(\"group\", name=\"testgroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a new Domain group.\n var @group = new AliCloud.Dns.Group(\"group\", new()\n {\n Name = \"testgroup\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add a new Domain group.\n\t\t_, err := dns.NewGroup(ctx, \"group\", \u0026dns.GroupArgs{\n\t\t\tName: pulumi.String(\"testgroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Group;\nimport com.pulumi.alicloud.dns.GroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Add a new Domain group.\n var group = new Group(\"group\", GroupArgs.builder()\n .name(\"testgroup\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a new Domain group.\n group:\n type: alicloud:dns:Group\n properties:\n name: testgroup\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"name": {
"type": "string",
@@ -144485,7 +147114,7 @@
}
},
"alicloud:dns/gtmInstance:GtmInstance": {
- "description": "Provides a Alidns Gtm Instance resource.\n\nFor information about Alidns Gtm Instance and how to use it, see [What is Gtm Instance](https://www.alibabacloud.com/help/en/doc-detail/204852.html).\n\n\u003e **NOTE:** Available since v1.151.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: \"tf_example\"});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: \"tf_example\",\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=\"tf_example\")\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=\"tf_example\",\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = \"tf_example\",\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = \"tf_example\",\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(\"tf_example\")\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(\"tf_example\")\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: tf_example\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: tf_example\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nAlidns Gtm Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/gtmInstance:GtmInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Alidns Gtm Instance resource.\n\nFor information about Alidns Gtm Instance and how to use it, see [What is Gtm Instance](https://www.alibabacloud.com/help/en/doc-detail/204852.html).\n\n\u003e **NOTE:** Available since v1.151.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: \"tf_example\"});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: \"tf_example\",\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=\"tf_example\")\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=\"tf_example\",\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = \"tf_example\",\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = \"tf_example\",\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(\"tf_example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(\"tf_example\"),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(\"tf_example\")\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(\"tf_example\")\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: tf_example\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: tf_example\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nAlidns Gtm Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/gtmInstance:GtmInstance example \u003cid\u003e\n```\n\n",
"properties": {
"alertConfigs": {
"type": "array",
@@ -144791,7 +147420,7 @@
}
},
"alicloud:dns/instance:Instance": {
- "description": "Create an DNS Instance resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsInstance \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsInstance \" pulumi-lang-go=\" dns.AlidnsInstance \" pulumi-lang-python=\" dns.AlidnsInstance \" pulumi-lang-yaml=\" alicloud.dns.AlidnsInstance \" pulumi-lang-java=\" alicloud.dns.AlidnsInstance \"\u003e alicloud.dns.AlidnsInstance \u003c/span\u003efrom version 1.95.0.\n\n\u003e **NOTE:** Available in v1.80.0+.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _this = new alicloud.dns.Instance(\"this\", {\n dnsSecurity: \"no\",\n domainNumbers: \"2\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"ManualRenewal\",\n versionCode: \"version_personal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nthis = alicloud.dns.Instance(\"this\",\n dns_security=\"no\",\n domain_numbers=\"2\",\n period=1,\n renew_period=1,\n renewal_status=\"ManualRenewal\",\n version_code=\"version_personal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new AliCloud.Dns.Instance(\"this\", new()\n {\n DnsSecurity = \"no\",\n DomainNumbers = \"2\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"ManualRenewal\",\n VersionCode = \"version_personal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewInstance(ctx, \"this\", \u0026dns.InstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"no\"),\n\t\t\tDomainNumbers: pulumi.String(\"2\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Instance;\nimport com.pulumi.alicloud.dns.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Instance(\"this\", InstanceArgs.builder()\n .dnsSecurity(\"no\")\n .domainNumbers(\"2\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"ManualRenewal\")\n .versionCode(\"version_personal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: alicloud:dns:Instance\n properties:\n dnsSecurity: no\n domainNumbers: '2'\n period: 1\n renewPeriod: 1\n renewalStatus: ManualRenewal\n versionCode: version_personal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS instance be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/instance:Instance example dns-cn-v0h1ldjhfff\n```\n\n",
+ "description": "Create an DNS Instance resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.dns.AlidnsInstance \" pulumi-lang-dotnet=\" alicloud.dns.AlidnsInstance \" pulumi-lang-go=\" dns.AlidnsInstance \" pulumi-lang-python=\" dns.AlidnsInstance \" pulumi-lang-yaml=\" alicloud.dns.AlidnsInstance \" pulumi-lang-java=\" alicloud.dns.AlidnsInstance \"\u003e alicloud.dns.AlidnsInstance \u003c/span\u003efrom version 1.95.0.\n\n\u003e **NOTE:** Available in v1.80.0+.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _this = new alicloud.dns.Instance(\"this\", {\n dnsSecurity: \"no\",\n domainNumbers: \"2\",\n period: 1,\n renewPeriod: 1,\n renewalStatus: \"ManualRenewal\",\n versionCode: \"version_personal\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nthis = alicloud.dns.Instance(\"this\",\n dns_security=\"no\",\n domain_numbers=\"2\",\n period=1,\n renew_period=1,\n renewal_status=\"ManualRenewal\",\n version_code=\"version_personal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new AliCloud.Dns.Instance(\"this\", new()\n {\n DnsSecurity = \"no\",\n DomainNumbers = \"2\",\n Period = 1,\n RenewPeriod = 1,\n RenewalStatus = \"ManualRenewal\",\n VersionCode = \"version_personal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := dns.NewInstance(ctx, \"this\", \u0026dns.InstanceArgs{\n\t\t\tDnsSecurity: pulumi.String(\"no\"),\n\t\t\tDomainNumbers: pulumi.String(\"2\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tVersionCode: pulumi.String(\"version_personal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Instance;\nimport com.pulumi.alicloud.dns.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Instance(\"this\", InstanceArgs.builder()\n .dnsSecurity(\"no\")\n .domainNumbers(\"2\")\n .period(1)\n .renewPeriod(1)\n .renewalStatus(\"ManualRenewal\")\n .versionCode(\"version_personal\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: alicloud:dns:Instance\n properties:\n dnsSecurity: no\n domainNumbers: '2'\n period: 1\n renewPeriod: 1\n renewalStatus: ManualRenewal\n versionCode: version_personal\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS instance be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/instance:Instance example dns-cn-v0h1ldjhfff\n```\n\n",
"properties": {
"dnsSecurity": {
"type": "string",
@@ -144917,7 +147546,7 @@
}
},
"alicloud:dns/monitorConfig:MonitorConfig": {
- "description": "Provides a DNS Monitor Config resource.\n\nFor information about DNS Monitor Config and how to use it, see [What is Monitor Config](https://www.alibabacloud.com/help/en/alibaba-cloud-dns/latest/api-alidns-2015-01-09-adddnsgtmmonitor).\n\n\u003e **NOTE:** Available since v1.153.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool = new alicloud.dns.AddressPool(\"default\", {\n addressPoolName: name,\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n});\nconst defaultMonitorConfig = new alicloud.dns.MonitorConfig(\"default\", {\n addrPoolId: defaultAddressPool.id,\n evaluationCount: 1,\n interval: 60,\n timeout: 5000,\n protocolType: \"TCP\",\n monitorExtendInfo: \"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n ispCityNodes: [{\n cityCode: \"503\",\n ispCode: \"465\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = alicloud.dns.AddressPool(\"default\",\n address_pool_name=name,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }])\ndefault_monitor_config = alicloud.dns.MonitorConfig(\"default\",\n addr_pool_id=default_address_pool.id,\n evaluation_count=1,\n interval=60,\n timeout=5000,\n protocol_type=\"TCP\",\n monitor_extend_info=\"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n isp_city_nodes=[{\n \"city_code\": \"503\",\n \"isp_code\": \"465\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new AliCloud.Dns.AddressPool(\"default\", new()\n {\n AddressPoolName = name,\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n });\n\n var defaultMonitorConfig = new AliCloud.Dns.MonitorConfig(\"default\", new()\n {\n AddrPoolId = defaultAddressPool.Id,\n EvaluationCount = 1,\n Interval = 60,\n Timeout = 5000,\n ProtocolType = \"TCP\",\n MonitorExtendInfo = \"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n IspCityNodes = new[]\n {\n new AliCloud.Dns.Inputs.MonitorConfigIspCityNodeArgs\n {\n CityCode = \"503\",\n IspCode = \"465\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAddressPool, err := dns.NewAddressPool(ctx, \"default\", \u0026dns.AddressPoolArgs{\n\t\t\tAddressPoolName: pulumi.String(name),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\tAttributeInfo: pulumi.String(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\"),\n\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewMonitorConfig(ctx, \"default\", \u0026dns.MonitorConfigArgs{\n\t\t\tAddrPoolId: defaultAddressPool.ID(),\n\t\t\tEvaluationCount: pulumi.Int(1),\n\t\t\tInterval: pulumi.Int(60),\n\t\t\tTimeout: pulumi.Int(5000),\n\t\t\tProtocolType: pulumi.String(\"TCP\"),\n\t\t\tMonitorExtendInfo: pulumi.String(\"{\\\"failureRate\\\":50,\\\"port\\\":80}\"),\n\t\t\tIspCityNodes: dns.MonitorConfigIspCityNodeArray{\n\t\t\t\t\u0026dns.MonitorConfigIspCityNodeArgs{\n\t\t\t\t\tCityCode: pulumi.String(\"503\"),\n\t\t\t\t\tIspCode: pulumi.String(\"465\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport com.pulumi.alicloud.dns.MonitorConfig;\nimport com.pulumi.alicloud.dns.MonitorConfigArgs;\nimport com.pulumi.alicloud.dns.inputs.MonitorConfigIspCityNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n var defaultAddressPool = new AddressPool(\"defaultAddressPool\", AddressPoolArgs.builder()\n .addressPoolName(name)\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n var defaultMonitorConfig = new MonitorConfig(\"defaultMonitorConfig\", MonitorConfigArgs.builder()\n .addrPoolId(defaultAddressPool.id())\n .evaluationCount(1)\n .interval(60)\n .timeout(5000)\n .protocolType(\"TCP\")\n .monitorExtendInfo(\"{\\\"failureRate\\\":50,\\\"port\\\":80}\")\n .ispCityNodes(MonitorConfigIspCityNodeArgs.builder()\n .cityCode(\"503\")\n .ispCode(\"465\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: ${name}\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\n defaultAddressPool:\n type: alicloud:dns:AddressPool\n name: default\n properties:\n addressPoolName: ${name}\n instanceId: ${defaultGtmInstance.id}\n lbaStrategy: RATIO\n type: IPV4\n addresses:\n - attributeInfo: '{\"lineCodeRectifyType\":\"RECTIFIED\",\"lineCodes\":[\"os_namerica_us\"]}'\n remark: address_remark\n address: 1.1.1.1\n mode: SMART\n lbaWeight: 1\n defaultMonitorConfig:\n type: alicloud:dns:MonitorConfig\n name: default\n properties:\n addrPoolId: ${defaultAddressPool.id}\n evaluationCount: '1'\n interval: '60'\n timeout: '5000'\n protocolType: TCP\n monitorExtendInfo: '{\"failureRate\":50,\"port\":80}'\n ispCityNodes:\n - cityCode: '503'\n ispCode: '465'\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDNS Monitor Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/monitorConfig:MonitorConfig example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DNS Monitor Config resource.\n\nFor information about DNS Monitor Config and how to use it, see [What is Monitor Config](https://www.alibabacloud.com/help/en/alibaba-cloud-dns/latest/api-alidns-2015-01-09-adddnsgtmmonitor).\n\n\u003e **NOTE:** Available since v1.153.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf_example\";\nconst domainName = config.get(\"domainName\") || \"alicloud-provider.com\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultAlarmContactGroup = new alicloud.cms.AlarmContactGroup(\"default\", {alarmContactGroupName: name});\nconst defaultGtmInstance = new alicloud.dns.GtmInstance(\"default\", {\n instanceName: name,\n paymentType: \"Subscription\",\n period: 1,\n renewalStatus: \"ManualRenewal\",\n packageEdition: \"standard\",\n healthCheckTaskCount: 100,\n smsNotificationCount: 1000,\n publicCnameMode: \"SYSTEM_ASSIGN\",\n ttl: 60,\n cnameType: \"PUBLIC\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n alertGroups: [defaultAlarmContactGroup.alarmContactGroupName],\n publicUserDomainName: domainName,\n alertConfigs: [{\n smsNotice: true,\n noticeType: \"ADDR_ALERT\",\n emailNotice: true,\n dingtalkNotice: true,\n }],\n});\nconst defaultAddressPool = new alicloud.dns.AddressPool(\"default\", {\n addressPoolName: name,\n instanceId: defaultGtmInstance.id,\n lbaStrategy: \"RATIO\",\n type: \"IPV4\",\n addresses: [{\n attributeInfo: \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n remark: \"address_remark\",\n address: \"1.1.1.1\",\n mode: \"SMART\",\n lbaWeight: 1,\n }],\n});\nconst defaultMonitorConfig = new alicloud.dns.MonitorConfig(\"default\", {\n addrPoolId: defaultAddressPool.id,\n evaluationCount: 1,\n interval: 60,\n timeout: 5000,\n protocolType: \"TCP\",\n monitorExtendInfo: \"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n ispCityNodes: [{\n cityCode: \"503\",\n ispCode: \"465\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf_example\"\ndomain_name = config.get(\"domainName\")\nif domain_name is None:\n domain_name = \"alicloud-provider.com\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_alarm_contact_group = alicloud.cms.AlarmContactGroup(\"default\", alarm_contact_group_name=name)\ndefault_gtm_instance = alicloud.dns.GtmInstance(\"default\",\n instance_name=name,\n payment_type=\"Subscription\",\n period=1,\n renewal_status=\"ManualRenewal\",\n package_edition=\"standard\",\n health_check_task_count=100,\n sms_notification_count=1000,\n public_cname_mode=\"SYSTEM_ASSIGN\",\n ttl=60,\n cname_type=\"PUBLIC\",\n resource_group_id=default.groups[0].id,\n alert_groups=[default_alarm_contact_group.alarm_contact_group_name],\n public_user_domain_name=domain_name,\n alert_configs=[{\n \"sms_notice\": True,\n \"notice_type\": \"ADDR_ALERT\",\n \"email_notice\": True,\n \"dingtalk_notice\": True,\n }])\ndefault_address_pool = alicloud.dns.AddressPool(\"default\",\n address_pool_name=name,\n instance_id=default_gtm_instance.id,\n lba_strategy=\"RATIO\",\n type=\"IPV4\",\n addresses=[{\n \"attribute_info\": \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n \"remark\": \"address_remark\",\n \"address\": \"1.1.1.1\",\n \"mode\": \"SMART\",\n \"lba_weight\": 1,\n }])\ndefault_monitor_config = alicloud.dns.MonitorConfig(\"default\",\n addr_pool_id=default_address_pool.id,\n evaluation_count=1,\n interval=60,\n timeout=5000,\n protocol_type=\"TCP\",\n monitor_extend_info=\"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n isp_city_nodes=[{\n \"city_code\": \"503\",\n \"isp_code\": \"465\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf_example\";\n var domainName = config.Get(\"domainName\") ?? \"alicloud-provider.com\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultAlarmContactGroup = new AliCloud.Cms.AlarmContactGroup(\"default\", new()\n {\n AlarmContactGroupName = name,\n });\n\n var defaultGtmInstance = new AliCloud.Dns.GtmInstance(\"default\", new()\n {\n InstanceName = name,\n PaymentType = \"Subscription\",\n Period = 1,\n RenewalStatus = \"ManualRenewal\",\n PackageEdition = \"standard\",\n HealthCheckTaskCount = 100,\n SmsNotificationCount = 1000,\n PublicCnameMode = \"SYSTEM_ASSIGN\",\n Ttl = 60,\n CnameType = \"PUBLIC\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n AlertGroups = new[]\n {\n defaultAlarmContactGroup.AlarmContactGroupName,\n },\n PublicUserDomainName = domainName,\n AlertConfigs = new[]\n {\n new AliCloud.Dns.Inputs.GtmInstanceAlertConfigArgs\n {\n SmsNotice = true,\n NoticeType = \"ADDR_ALERT\",\n EmailNotice = true,\n DingtalkNotice = true,\n },\n },\n });\n\n var defaultAddressPool = new AliCloud.Dns.AddressPool(\"default\", new()\n {\n AddressPoolName = name,\n InstanceId = defaultGtmInstance.Id,\n LbaStrategy = \"RATIO\",\n Type = \"IPV4\",\n Addresses = new[]\n {\n new AliCloud.Dns.Inputs.AddressPoolAddressArgs\n {\n AttributeInfo = \"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\",\n Remark = \"address_remark\",\n Address = \"1.1.1.1\",\n Mode = \"SMART\",\n LbaWeight = 1,\n },\n },\n });\n\n var defaultMonitorConfig = new AliCloud.Dns.MonitorConfig(\"default\", new()\n {\n AddrPoolId = defaultAddressPool.Id,\n EvaluationCount = 1,\n Interval = 60,\n Timeout = 5000,\n ProtocolType = \"TCP\",\n MonitorExtendInfo = \"{\\\"failureRate\\\":50,\\\"port\\\":80}\",\n IspCityNodes = new[]\n {\n new AliCloud.Dns.Inputs.MonitorConfigIspCityNodeArgs\n {\n CityCode = \"503\",\n IspCode = \"465\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf_example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdomainName := \"alicloud-provider.com\"\n\t\tif param := cfg.Get(\"domainName\"); param != \"\" {\n\t\t\tdomainName = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAlarmContactGroup, err := cms.NewAlarmContactGroup(ctx, \"default\", \u0026cms.AlarmContactGroupArgs{\n\t\t\tAlarmContactGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGtmInstance, err := dns.NewGtmInstance(ctx, \"default\", \u0026dns.GtmInstanceArgs{\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tRenewalStatus: pulumi.String(\"ManualRenewal\"),\n\t\t\tPackageEdition: pulumi.String(\"standard\"),\n\t\t\tHealthCheckTaskCount: pulumi.Int(100),\n\t\t\tSmsNotificationCount: pulumi.Int(1000),\n\t\t\tPublicCnameMode: pulumi.String(\"SYSTEM_ASSIGN\"),\n\t\t\tTtl: pulumi.Int(60),\n\t\t\tCnameType: pulumi.String(\"PUBLIC\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tAlertGroups: pulumi.StringArray{\n\t\t\t\tdefaultAlarmContactGroup.AlarmContactGroupName,\n\t\t\t},\n\t\t\tPublicUserDomainName: pulumi.String(domainName),\n\t\t\tAlertConfigs: dns.GtmInstanceAlertConfigArray{\n\t\t\t\t\u0026dns.GtmInstanceAlertConfigArgs{\n\t\t\t\t\tSmsNotice: pulumi.Bool(true),\n\t\t\t\t\tNoticeType: pulumi.String(\"ADDR_ALERT\"),\n\t\t\t\t\tEmailNotice: pulumi.Bool(true),\n\t\t\t\t\tDingtalkNotice: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultAddressPool, err := dns.NewAddressPool(ctx, \"default\", \u0026dns.AddressPoolArgs{\n\t\t\tAddressPoolName: pulumi.String(name),\n\t\t\tInstanceId: defaultGtmInstance.ID(),\n\t\t\tLbaStrategy: pulumi.String(\"RATIO\"),\n\t\t\tType: pulumi.String(\"IPV4\"),\n\t\t\tAddresses: dns.AddressPoolAddressArray{\n\t\t\t\t\u0026dns.AddressPoolAddressArgs{\n\t\t\t\t\tAttributeInfo: pulumi.String(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\"),\n\t\t\t\t\tRemark: pulumi.String(\"address_remark\"),\n\t\t\t\t\tAddress: pulumi.String(\"1.1.1.1\"),\n\t\t\t\t\tMode: pulumi.String(\"SMART\"),\n\t\t\t\t\tLbaWeight: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dns.NewMonitorConfig(ctx, \"default\", \u0026dns.MonitorConfigArgs{\n\t\t\tAddrPoolId: defaultAddressPool.ID(),\n\t\t\tEvaluationCount: pulumi.Int(1),\n\t\t\tInterval: pulumi.Int(60),\n\t\t\tTimeout: pulumi.Int(5000),\n\t\t\tProtocolType: pulumi.String(\"TCP\"),\n\t\t\tMonitorExtendInfo: pulumi.String(\"{\\\"failureRate\\\":50,\\\"port\\\":80}\"),\n\t\t\tIspCityNodes: dns.MonitorConfigIspCityNodeArray{\n\t\t\t\t\u0026dns.MonitorConfigIspCityNodeArgs{\n\t\t\t\t\tCityCode: pulumi.String(\"503\"),\n\t\t\t\t\tIspCode: pulumi.String(\"465\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.cms.AlarmContactGroup;\nimport com.pulumi.alicloud.cms.AlarmContactGroupArgs;\nimport com.pulumi.alicloud.dns.GtmInstance;\nimport com.pulumi.alicloud.dns.GtmInstanceArgs;\nimport com.pulumi.alicloud.dns.inputs.GtmInstanceAlertConfigArgs;\nimport com.pulumi.alicloud.dns.AddressPool;\nimport com.pulumi.alicloud.dns.AddressPoolArgs;\nimport com.pulumi.alicloud.dns.inputs.AddressPoolAddressArgs;\nimport com.pulumi.alicloud.dns.MonitorConfig;\nimport com.pulumi.alicloud.dns.MonitorConfigArgs;\nimport com.pulumi.alicloud.dns.inputs.MonitorConfigIspCityNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf_example\");\n final var domainName = config.get(\"domainName\").orElse(\"alicloud-provider.com\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultAlarmContactGroup = new AlarmContactGroup(\"defaultAlarmContactGroup\", AlarmContactGroupArgs.builder()\n .alarmContactGroupName(name)\n .build());\n\n var defaultGtmInstance = new GtmInstance(\"defaultGtmInstance\", GtmInstanceArgs.builder()\n .instanceName(name)\n .paymentType(\"Subscription\")\n .period(1)\n .renewalStatus(\"ManualRenewal\")\n .packageEdition(\"standard\")\n .healthCheckTaskCount(100)\n .smsNotificationCount(1000)\n .publicCnameMode(\"SYSTEM_ASSIGN\")\n .ttl(60)\n .cnameType(\"PUBLIC\")\n .resourceGroupId(default_.groups()[0].id())\n .alertGroups(defaultAlarmContactGroup.alarmContactGroupName())\n .publicUserDomainName(domainName)\n .alertConfigs(GtmInstanceAlertConfigArgs.builder()\n .smsNotice(true)\n .noticeType(\"ADDR_ALERT\")\n .emailNotice(true)\n .dingtalkNotice(true)\n .build())\n .build());\n\n var defaultAddressPool = new AddressPool(\"defaultAddressPool\", AddressPoolArgs.builder()\n .addressPoolName(name)\n .instanceId(defaultGtmInstance.id())\n .lbaStrategy(\"RATIO\")\n .type(\"IPV4\")\n .addresses(AddressPoolAddressArgs.builder()\n .attributeInfo(\"{\\\"lineCodeRectifyType\\\":\\\"RECTIFIED\\\",\\\"lineCodes\\\":[\\\"os_namerica_us\\\"]}\")\n .remark(\"address_remark\")\n .address(\"1.1.1.1\")\n .mode(\"SMART\")\n .lbaWeight(1)\n .build())\n .build());\n\n var defaultMonitorConfig = new MonitorConfig(\"defaultMonitorConfig\", MonitorConfigArgs.builder()\n .addrPoolId(defaultAddressPool.id())\n .evaluationCount(1)\n .interval(60)\n .timeout(5000)\n .protocolType(\"TCP\")\n .monitorExtendInfo(\"{\\\"failureRate\\\":50,\\\"port\\\":80}\")\n .ispCityNodes(MonitorConfigIspCityNodeArgs.builder()\n .cityCode(\"503\")\n .ispCode(\"465\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf_example\n domainName:\n type: string\n default: alicloud-provider.com\nresources:\n defaultAlarmContactGroup:\n type: alicloud:cms:AlarmContactGroup\n name: default\n properties:\n alarmContactGroupName: ${name}\n defaultGtmInstance:\n type: alicloud:dns:GtmInstance\n name: default\n properties:\n instanceName: ${name}\n paymentType: Subscription\n period: 1\n renewalStatus: ManualRenewal\n packageEdition: standard\n healthCheckTaskCount: 100\n smsNotificationCount: 1000\n publicCnameMode: SYSTEM_ASSIGN\n ttl: 60\n cnameType: PUBLIC\n resourceGroupId: ${default.groups[0].id}\n alertGroups:\n - ${defaultAlarmContactGroup.alarmContactGroupName}\n publicUserDomainName: ${domainName}\n alertConfigs:\n - smsNotice: true\n noticeType: ADDR_ALERT\n emailNotice: true\n dingtalkNotice: true\n defaultAddressPool:\n type: alicloud:dns:AddressPool\n name: default\n properties:\n addressPoolName: ${name}\n instanceId: ${defaultGtmInstance.id}\n lbaStrategy: RATIO\n type: IPV4\n addresses:\n - attributeInfo: '{\"lineCodeRectifyType\":\"RECTIFIED\",\"lineCodes\":[\"os_namerica_us\"]}'\n remark: address_remark\n address: 1.1.1.1\n mode: SMART\n lbaWeight: 1\n defaultMonitorConfig:\n type: alicloud:dns:MonitorConfig\n name: default\n properties:\n addrPoolId: ${defaultAddressPool.id}\n evaluationCount: '1'\n interval: '60'\n timeout: '5000'\n protocolType: TCP\n monitorExtendInfo: '{\"failureRate\":50,\"port\":80}'\n ispCityNodes:\n - cityCode: '503'\n ispCode: '465'\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDNS Monitor Config can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/monitorConfig:MonitorConfig example \u003cid\u003e\n```\n\n",
"properties": {
"addrPoolId": {
"type": "string",
@@ -145055,7 +147684,7 @@
}
},
"alicloud:dns/record:Record": {
- "description": "Provides a DNS Record resource.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.85.0`. Please use new resource alicloud_alidns_record.\n\n\u003e **NOTE:** When the site is an international site, the \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e neither supports `REDIRECT_URL` nor `REDIRECT_URL`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new Domain record\nconst record = new alicloud.dns.Record(\"record\", {\n name: \"domainname\",\n hostRecord: \"@\",\n type: \"A\",\n value: \"192.168.99.99\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new Domain record\nrecord = alicloud.dns.Record(\"record\",\n name=\"domainname\",\n host_record=\"@\",\n type=\"A\",\n value=\"192.168.99.99\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Domain record\n var record = new AliCloud.Dns.Record(\"record\", new()\n {\n Name = \"domainname\",\n HostRecord = \"@\",\n Type = \"A\",\n Value = \"192.168.99.99\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new Domain record\n\t\t_, err := dns.NewRecord(ctx, \"record\", \u0026dns.RecordArgs{\n\t\t\tName: pulumi.String(\"domainname\"),\n\t\t\tHostRecord: pulumi.String(\"@\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tValue: pulumi.String(\"192.168.99.99\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Record;\nimport com.pulumi.alicloud.dns.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new Domain record\n var record = new Record(\"record\", RecordArgs.builder()\n .name(\"domainname\")\n .hostRecord(\"@\")\n .type(\"A\")\n .value(\"192.168.99.99\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Domain record\n record:\n type: alicloud:dns:Record\n properties:\n name: domainname\n hostRecord: '@'\n type: A\n value: 192.168.99.99\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nRDS record can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/record:Record example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DNS Record resource.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.85.0`. Please use new resource alicloud_alidns_record.\n\n\u003e **NOTE:** When the site is an international site, the \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e neither supports `REDIRECT_URL` nor `REDIRECT_URL`\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new Domain record\nconst record = new alicloud.dns.Record(\"record\", {\n name: \"domainname\",\n hostRecord: \"@\",\n type: \"A\",\n value: \"192.168.99.99\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new Domain record\nrecord = alicloud.dns.Record(\"record\",\n name=\"domainname\",\n host_record=\"@\",\n type=\"A\",\n value=\"192.168.99.99\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Domain record\n var record = new AliCloud.Dns.Record(\"record\", new()\n {\n Name = \"domainname\",\n HostRecord = \"@\",\n Type = \"A\",\n Value = \"192.168.99.99\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new Domain record\n\t\t_, err := dns.NewRecord(ctx, \"record\", \u0026dns.RecordArgs{\n\t\t\tName: pulumi.String(\"domainname\"),\n\t\t\tHostRecord: pulumi.String(\"@\"),\n\t\t\tType: pulumi.String(\"A\"),\n\t\t\tValue: pulumi.String(\"192.168.99.99\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.dns.Record;\nimport com.pulumi.alicloud.dns.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new Domain record\n var record = new Record(\"record\", RecordArgs.builder()\n .name(\"domainname\")\n .hostRecord(\"@\")\n .type(\"A\")\n .value(\"192.168.99.99\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Domain record\n record:\n type: alicloud:dns:Record\n properties:\n name: domainname\n hostRecord: '@'\n type: A\n value: 192.168.99.99\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nRDS record can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dns/record:Record example \u003cid\u003e\n```\n\n",
"properties": {
"hostRecord": {
"type": "string",
@@ -145179,7 +147808,7 @@
}
},
"alicloud:drds/instance:Instance": {
- "description": "Distributed Relational Database Service (DRDS) is a lightweight (stateless), flexible, stable, and efficient middleware product independently developed by Alibaba Group to resolve scalability issues with single-host relational databases.\nWith its compatibility with MySQL protocols and syntaxes, DRDS enables database/table sharding, smooth scaling, configuration upgrade/downgrade,\ntransparent read/write splitting, and distributed transactions, providing O\u0026M capabilities for distributed databases throughout their entire lifecycle.\n\nFor information about DRDS and how to use it, see [What is DRDS](https://www.alibabacloud.com/help/product/29657.htm).\n\n\u003e **NOTE:** Available since v1.24.0.\n\n\u003e **NOTE:** At present, DRDS instance only can be supported in the regions: cn-shenzhen, cn-beijing, cn-hangzhou, cn-hongkong, cn-qingdao, ap-southeast-1.\n\n\u003e **NOTE:** Currently, this resource only support `Domestic Site Account`.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst config = new pulumi.Config();\nconst instanceSeries = config.get(\"instanceSeries\") || \"drds.sn1.4c8g\";\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"default-NODELETING\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n}));\nconst defaultInstance = new alicloud.drds.Instance(\"default\", {\n description: \"drds instance\",\n instanceChargeType: \"PostPaid\",\n zoneId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.vswitches?.[0]?.zoneId),\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.vswitches?.[0]?.id),\n instanceSeries: instanceSeries,\n specification: \"drds.sn1.4c8g.8C16G\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nconfig = pulumi.Config()\ninstance_series = config.get(\"instanceSeries\")\nif instance_series is None:\n instance_series = \"drds.sn1.4c8g\"\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"default-NODELETING\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.drds.Instance(\"default\",\n description=\"drds instance\",\n instance_charge_type=\"PostPaid\",\n zone_id=default_get_switches.vswitches[0].zone_id,\n vswitch_id=default_get_switches.vswitches[0].id,\n instance_series=instance_series,\n specification=\"drds.sn1.4c8g.8C16G\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var config = new Config();\n var instanceSeries = config.Get(\"instanceSeries\") ?? \"drds.sn1.4c8g\";\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"default-NODELETING\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Drds.Instance(\"default\", new()\n {\n Description = \"drds instance\",\n InstanceChargeType = \"PostPaid\",\n ZoneId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Vswitches[0]?.ZoneId),\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Vswitches[0]?.Id),\n InstanceSeries = instanceSeries,\n Specification = \"drds.sn1.4c8g.8C16G\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/drds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tinstanceSeries := \"drds.sn1.4c8g\"\n\t\tif param := cfg.Get(\"instanceSeries\"); param != \"\" {\n\t\t\tinstanceSeries = param\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = drds.NewInstance(ctx, \"default\", \u0026drds.InstanceArgs{\n\t\t\tDescription: pulumi.String(\"drds instance\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tZoneId: pulumi.String(defaultGetSwitches.Vswitches[0].ZoneId),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Vswitches[0].Id),\n\t\t\tInstanceSeries: pulumi.String(instanceSeries),\n\t\t\tSpecification: pulumi.String(\"drds.sn1.4c8g.8C16G\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.drds.Instance;\nimport com.pulumi.alicloud.drds.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var instanceSeries = config.get(\"instanceSeries\").orElse(\"drds.sn1.4c8g\");\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"default-NODELETING\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(\"drds instance\")\n .instanceChargeType(\"PostPaid\")\n .zoneId(defaultGetSwitches.vswitches()[0].zoneId())\n .vswitchId(defaultGetSwitches.vswitches()[0].id())\n .instanceSeries(instanceSeries)\n .specification(\"drds.sn1.4c8g.8C16G\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n instanceSeries:\n type: string\n default: drds.sn1.4c8g\nresources:\n defaultInstance:\n type: alicloud:drds:Instance\n name: default\n properties:\n description: drds instance\n instanceChargeType: PostPaid\n zoneId: ${defaultGetSwitches.vswitches[0].zoneId}\n vswitchId: ${defaultGetSwitches.vswitches[0].id}\n instanceSeries: ${instanceSeries}\n specification: drds.sn1.4c8g.8C16G\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: default-NODELETING\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDistributed Relational Database Service (DRDS) can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:drds/instance:Instance example drds-abc123456\n```\n\n",
+ "description": "Distributed Relational Database Service (DRDS) is a lightweight (stateless), flexible, stable, and efficient middleware product independently developed by Alibaba Group to resolve scalability issues with single-host relational databases.\nWith its compatibility with MySQL protocols and syntaxes, DRDS enables database/table sharding, smooth scaling, configuration upgrade/downgrade,\ntransparent read/write splitting, and distributed transactions, providing O\u0026M capabilities for distributed databases throughout their entire lifecycle.\n\nFor information about DRDS and how to use it, see [What is DRDS](https://www.alibabacloud.com/help/product/29657.htm).\n\n\u003e **NOTE:** Available since v1.24.0.\n\n\u003e **NOTE:** At present, DRDS instance only can be supported in the regions: cn-shenzhen, cn-beijing, cn-hangzhou, cn-hongkong, cn-qingdao, ap-southeast-1.\n\n\u003e **NOTE:** Currently, this resource only support `Domestic Site Account`.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst config = new pulumi.Config();\nconst instanceSeries = config.get(\"instanceSeries\") || \"drds.sn1.4c8g\";\nconst defaultGetNetworks = alicloud.vpc.getNetworks({\n nameRegex: \"default-NODELETING\",\n});\nconst defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks =\u003e alicloud.vpc.getSwitches({\n vpcId: defaultGetNetworks.ids?.[0],\n}));\nconst defaultInstance = new alicloud.drds.Instance(\"default\", {\n description: \"drds instance\",\n instanceChargeType: \"PostPaid\",\n zoneId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.vswitches?.[0]?.zoneId),\n vswitchId: defaultGetSwitches.then(defaultGetSwitches =\u003e defaultGetSwitches.vswitches?.[0]?.id),\n instanceSeries: instanceSeries,\n specification: \"drds.sn1.4c8g.8C16G\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nconfig = pulumi.Config()\ninstance_series = config.get(\"instanceSeries\")\nif instance_series is None:\n instance_series = \"drds.sn1.4c8g\"\ndefault_get_networks = alicloud.vpc.get_networks(name_regex=\"default-NODELETING\")\ndefault_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0])\ndefault_instance = alicloud.drds.Instance(\"default\",\n description=\"drds instance\",\n instance_charge_type=\"PostPaid\",\n zone_id=default_get_switches.vswitches[0].zone_id,\n vswitch_id=default_get_switches.vswitches[0].id,\n instance_series=instance_series,\n specification=\"drds.sn1.4c8g.8C16G\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var config = new Config();\n var instanceSeries = config.Get(\"instanceSeries\") ?? \"drds.sn1.4c8g\";\n var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()\n {\n NameRegex = \"default-NODELETING\",\n });\n\n var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()\n {\n VpcId = defaultGetNetworks.Apply(getNetworksResult =\u003e getNetworksResult.Ids[0]),\n });\n\n var defaultInstance = new AliCloud.Drds.Instance(\"default\", new()\n {\n Description = \"drds instance\",\n InstanceChargeType = \"PostPaid\",\n ZoneId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Vswitches[0]?.ZoneId),\n VswitchId = defaultGetSwitches.Apply(getSwitchesResult =\u003e getSwitchesResult.Vswitches[0]?.Id),\n InstanceSeries = instanceSeries,\n Specification = \"drds.sn1.4c8g.8C16G\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/drds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tinstanceSeries := \"drds.sn1.4c8g\"\n\t\tif param := cfg.Get(\"instanceSeries\"); param != \"\" {\n\t\t\tinstanceSeries = param\n\t\t}\n\t\tdefaultGetNetworks, err := vpc.GetNetworks(ctx, \u0026vpc.GetNetworksArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default-NODELETING\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetSwitches, err := vpc.GetSwitches(ctx, \u0026vpc.GetSwitchesArgs{\n\t\t\tVpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = drds.NewInstance(ctx, \"default\", \u0026drds.InstanceArgs{\n\t\t\tDescription: pulumi.String(\"drds instance\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tZoneId: pulumi.String(defaultGetSwitches.Vswitches[0].ZoneId),\n\t\t\tVswitchId: pulumi.String(defaultGetSwitches.Vswitches[0].Id),\n\t\t\tInstanceSeries: pulumi.String(instanceSeries),\n\t\t\tSpecification: pulumi.String(\"drds.sn1.4c8g.8C16G\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.VpcFunctions;\nimport com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;\nimport com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;\nimport com.pulumi.alicloud.drds.Instance;\nimport com.pulumi.alicloud.drds.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var instanceSeries = config.get(\"instanceSeries\").orElse(\"drds.sn1.4c8g\");\n final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()\n .nameRegex(\"default-NODELETING\")\n .build());\n\n final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()\n .vpcId(defaultGetNetworks.ids()[0])\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .description(\"drds instance\")\n .instanceChargeType(\"PostPaid\")\n .zoneId(defaultGetSwitches.vswitches()[0].zoneId())\n .vswitchId(defaultGetSwitches.vswitches()[0].id())\n .instanceSeries(instanceSeries)\n .specification(\"drds.sn1.4c8g.8C16G\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n instanceSeries:\n type: string\n default: drds.sn1.4c8g\nresources:\n defaultInstance:\n type: alicloud:drds:Instance\n name: default\n properties:\n description: drds instance\n instanceChargeType: PostPaid\n zoneId: ${defaultGetSwitches.vswitches[0].zoneId}\n vswitchId: ${defaultGetSwitches.vswitches[0].id}\n instanceSeries: ${instanceSeries}\n specification: drds.sn1.4c8g.8C16G\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetNetworks:\n fn::invoke:\n function: alicloud:vpc:getNetworks\n arguments:\n nameRegex: default-NODELETING\n defaultGetSwitches:\n fn::invoke:\n function: alicloud:vpc:getSwitches\n arguments:\n vpcId: ${defaultGetNetworks.ids[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDistributed Relational Database Service (DRDS) can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:drds/instance:Instance example drds-abc123456\n```\n\n",
"properties": {
"connectionString": {
"type": "string",
@@ -145336,7 +147965,7 @@
}
},
"alicloud:drds/polardbxInstance:PolardbxInstance": {
- "description": "Provides a DRDS Polardb X Instance resource.\n\nFor information about DRDS Polardb X Instance and how to use it, see [What is Polardb X Instance](https://www.alibabacloud.com/help/en/polardb/polardb-for-xscale/api-createdbinstance-1).\n\n\u003e **NOTE:** Available since v1.211.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst example = new alicloud.vpc.Network(\"example\", {vpcName: name});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: example.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"172.16.0.0/24\",\n vswitchName: name,\n});\nconst defaultPolardbxInstance = new alicloud.drds.PolardbxInstance(\"default\", {\n topologyType: \"3azones\",\n vswitchId: exampleSwitch.id,\n primaryZone: \"ap-southeast-1a\",\n cnNodeCount: 2,\n dnClass: \"mysql.n4.medium.25\",\n cnClass: \"polarx.x4.medium.2e\",\n dnNodeCount: 2,\n secondaryZone: \"ap-southeast-1b\",\n tertiaryZone: \"ap-southeast-1c\",\n vpcId: example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nexample = alicloud.vpc.Network(\"example\", vpc_name=name)\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example.id,\n zone_id=default.zones[0].id,\n cidr_block=\"172.16.0.0/24\",\n vswitch_name=name)\ndefault_polardbx_instance = alicloud.drds.PolardbxInstance(\"default\",\n topology_type=\"3azones\",\n vswitch_id=example_switch.id,\n primary_zone=\"ap-southeast-1a\",\n cn_node_count=2,\n dn_class=\"mysql.n4.medium.25\",\n cn_class=\"polarx.x4.medium.2e\",\n dn_node_count=2,\n secondary_zone=\"ap-southeast-1b\",\n tertiary_zone=\"ap-southeast-1c\",\n vpc_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = example.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"172.16.0.0/24\",\n VswitchName = name,\n });\n\n var defaultPolardbxInstance = new AliCloud.Drds.PolardbxInstance(\"default\", new()\n {\n TopologyType = \"3azones\",\n VswitchId = exampleSwitch.Id,\n PrimaryZone = \"ap-southeast-1a\",\n CnNodeCount = 2,\n DnClass = \"mysql.n4.medium.25\",\n CnClass = \"polarx.x4.medium.2e\",\n DnNodeCount = 2,\n SecondaryZone = \"ap-southeast-1b\",\n TertiaryZone = \"ap-southeast-1c\",\n VpcId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/drds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = drds.NewPolardbxInstance(ctx, \"default\", \u0026drds.PolardbxInstanceArgs{\n\t\t\tTopologyType: pulumi.String(\"3azones\"),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tPrimaryZone: pulumi.String(\"ap-southeast-1a\"),\n\t\t\tCnNodeCount: pulumi.Int(2),\n\t\t\tDnClass: pulumi.String(\"mysql.n4.medium.25\"),\n\t\t\tCnClass: pulumi.String(\"polarx.x4.medium.2e\"),\n\t\t\tDnNodeCount: pulumi.Int(2),\n\t\t\tSecondaryZone: pulumi.String(\"ap-southeast-1b\"),\n\t\t\tTertiaryZone: pulumi.String(\"ap-southeast-1c\"),\n\t\t\tVpcId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.drds.PolardbxInstance;\nimport com.pulumi.alicloud.drds.PolardbxInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(example.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"172.16.0.0/24\")\n .vswitchName(name)\n .build());\n\n var defaultPolardbxInstance = new PolardbxInstance(\"defaultPolardbxInstance\", PolardbxInstanceArgs.builder()\n .topologyType(\"3azones\")\n .vswitchId(exampleSwitch.id())\n .primaryZone(\"ap-southeast-1a\")\n .cnNodeCount(2)\n .dnClass(\"mysql.n4.medium.25\")\n .cnClass(\"polarx.x4.medium.2e\")\n .dnNodeCount(2)\n .secondaryZone(\"ap-southeast-1b\")\n .tertiaryZone(\"ap-southeast-1c\")\n .vpcId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${example.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 172.16.0.0/24\n vswitchName: ${name}\n defaultPolardbxInstance:\n type: alicloud:drds:PolardbxInstance\n name: default\n properties:\n topologyType: 3azones\n vswitchId: ${exampleSwitch.id}\n primaryZone: ap-southeast-1a\n cnNodeCount: '2'\n dnClass: mysql.n4.medium.25\n cnClass: polarx.x4.medium.2e\n dnNodeCount: '2'\n secondaryZone: ap-southeast-1b\n tertiaryZone: ap-southeast-1c\n vpcId: ${example.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDRDS Polardb X Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:drds/polardbxInstance:PolardbxInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DRDS Polardb X Instance resource.\n\nFor information about DRDS Polardb X Instance and how to use it, see [What is Polardb X Instance](https://www.alibabacloud.com/help/en/polardb/polardb-for-xscale/api-createdbinstance-1).\n\n\u003e **NOTE:** Available since v1.211.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst example = new alicloud.vpc.Network(\"example\", {vpcName: name});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: example.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n cidrBlock: \"172.16.0.0/24\",\n vswitchName: name,\n});\nconst defaultPolardbxInstance = new alicloud.drds.PolardbxInstance(\"default\", {\n topologyType: \"3azones\",\n vswitchId: exampleSwitch.id,\n primaryZone: \"ap-southeast-1a\",\n cnNodeCount: 2,\n dnClass: \"mysql.n4.medium.25\",\n cnClass: \"polarx.x4.medium.2e\",\n dnNodeCount: 2,\n secondaryZone: \"ap-southeast-1b\",\n tertiaryZone: \"ap-southeast-1c\",\n vpcId: example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nexample = alicloud.vpc.Network(\"example\", vpc_name=name)\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example.id,\n zone_id=default.zones[0].id,\n cidr_block=\"172.16.0.0/24\",\n vswitch_name=name)\ndefault_polardbx_instance = alicloud.drds.PolardbxInstance(\"default\",\n topology_type=\"3azones\",\n vswitch_id=example_switch.id,\n primary_zone=\"ap-southeast-1a\",\n cn_node_count=2,\n dn_class=\"mysql.n4.medium.25\",\n cn_class=\"polarx.x4.medium.2e\",\n dn_node_count=2,\n secondary_zone=\"ap-southeast-1b\",\n tertiary_zone=\"ap-southeast-1c\",\n vpc_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var example = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = example.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n CidrBlock = \"172.16.0.0/24\",\n VswitchName = name,\n });\n\n var defaultPolardbxInstance = new AliCloud.Drds.PolardbxInstance(\"default\", new()\n {\n TopologyType = \"3azones\",\n VswitchId = exampleSwitch.Id,\n PrimaryZone = \"ap-southeast-1a\",\n CnNodeCount = 2,\n DnClass = \"mysql.n4.medium.25\",\n CnClass = \"polarx.x4.medium.2e\",\n DnNodeCount = 2,\n SecondaryZone = \"ap-southeast-1b\",\n TertiaryZone = \"ap-southeast-1c\",\n VpcId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/drds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: example.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = drds.NewPolardbxInstance(ctx, \"default\", \u0026drds.PolardbxInstanceArgs{\n\t\t\tTopologyType: pulumi.String(\"3azones\"),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tPrimaryZone: pulumi.String(\"ap-southeast-1a\"),\n\t\t\tCnNodeCount: pulumi.Int(2),\n\t\t\tDnClass: pulumi.String(\"mysql.n4.medium.25\"),\n\t\t\tCnClass: pulumi.String(\"polarx.x4.medium.2e\"),\n\t\t\tDnNodeCount: pulumi.Int(2),\n\t\t\tSecondaryZone: pulumi.String(\"ap-southeast-1b\"),\n\t\t\tTertiaryZone: pulumi.String(\"ap-southeast-1c\"),\n\t\t\tVpcId: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.drds.PolardbxInstance;\nimport com.pulumi.alicloud.drds.PolardbxInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var example = new Network(\"example\", NetworkArgs.builder()\n .vpcName(name)\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(example.id())\n .zoneId(default_.zones()[0].id())\n .cidrBlock(\"172.16.0.0/24\")\n .vswitchName(name)\n .build());\n\n var defaultPolardbxInstance = new PolardbxInstance(\"defaultPolardbxInstance\", PolardbxInstanceArgs.builder()\n .topologyType(\"3azones\")\n .vswitchId(exampleSwitch.id())\n .primaryZone(\"ap-southeast-1a\")\n .cnNodeCount(2)\n .dnClass(\"mysql.n4.medium.25\")\n .cnClass(\"polarx.x4.medium.2e\")\n .dnNodeCount(2)\n .secondaryZone(\"ap-southeast-1b\")\n .tertiaryZone(\"ap-southeast-1c\")\n .vpcId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n example:\n type: alicloud:vpc:Network\n properties:\n vpcName: ${name}\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${example.id}\n zoneId: ${default.zones[0].id}\n cidrBlock: 172.16.0.0/24\n vswitchName: ${name}\n defaultPolardbxInstance:\n type: alicloud:drds:PolardbxInstance\n name: default\n properties:\n topologyType: 3azones\n vswitchId: ${exampleSwitch.id}\n primaryZone: ap-southeast-1a\n cnNodeCount: '2'\n dnClass: mysql.n4.medium.25\n cnClass: polarx.x4.medium.2e\n dnNodeCount: '2'\n secondaryZone: ap-southeast-1b\n tertiaryZone: ap-southeast-1c\n vpcId: ${example.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDRDS Polardb X Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:drds/polardbxInstance:PolardbxInstance example \u003cid\u003e\n```\n\n",
"properties": {
"cnClass": {
"type": "string",
@@ -145536,7 +148165,7 @@
}
},
"alicloud:dts/consumerChannel:ConsumerChannel": {
- "description": "Provides a DTS Consumer Channel resource.\n\nFor information about DTS Consumer Channel and how to use it, see [What is Consumer Channel](https://www.alibabacloud.com/help/en/doc-detail/264593.htm).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.rds.Instance(\"example\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: name,\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleRdsAccount = new alicloud.rds.RdsAccount(\"example\", {\n dbInstanceId: exampleInstance.id,\n accountName: \"example_name\",\n accountPassword: \"example_1234\",\n});\nconst exampleDatabase = new alicloud.rds.Database(\"example\", {\n instanceId: exampleInstance.id,\n name: name,\n});\nconst exampleAccountPrivilege = new alicloud.rds.AccountPrivilege(\"example\", {\n instanceId: exampleInstance.id,\n accountName: exampleRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase.name],\n});\nconst exampleSubscriptionJob = new alicloud.dts.SubscriptionJob(\"example\", {\n dtsJobName: name,\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleInstance.id,\n sourceEndpointDatabaseName: exampleDatabase.name,\n sourceEndpointUserName: exampleRdsAccount.accountName,\n sourceEndpointPassword: exampleRdsAccount.accountPassword,\n dbList: pulumi.interpolate`{\"${exampleDatabase.name}\":{\"name\":\"${exampleDatabase.name}\",\"all\":true}}`,\n subscriptionInstanceNetworkType: \"vpc\",\n subscriptionInstanceVpcId: exampleNetwork.id,\n subscriptionInstanceVswitchId: exampleSwitch.id,\n status: \"Normal\",\n});\nconst exampleConsumerChannel = new alicloud.dts.ConsumerChannel(\"example\", {\n dtsInstanceId: exampleSubscriptionJob.dtsInstanceId,\n consumerGroupName: name,\n consumerGroupUserName: \"example\",\n consumerGroupPassword: \"example1234\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.rds.Instance(\"example\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=name,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id])\nexample_rds_account = alicloud.rds.RdsAccount(\"example\",\n db_instance_id=example_instance.id,\n account_name=\"example_name\",\n account_password=\"example_1234\")\nexample_database = alicloud.rds.Database(\"example\",\n instance_id=example_instance.id,\n name=name)\nexample_account_privilege = alicloud.rds.AccountPrivilege(\"example\",\n instance_id=example_instance.id,\n account_name=example_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database.name])\nexample_subscription_job = alicloud.dts.SubscriptionJob(\"example\",\n dts_job_name=name,\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_instance.id,\n source_endpoint_database_name=example_database.name,\n source_endpoint_user_name=example_rds_account.account_name,\n source_endpoint_password=example_rds_account.account_password,\n db_list=pulumi.Output.all(\n exampleDatabaseName=example_database.name,\n exampleDatabaseName1=example_database.name\n).apply(lambda resolved_outputs: f\"{{\\\"{resolved_outputs['exampleDatabaseName']}\\\":{{\\\"name\\\":\\\"{resolved_outputs['exampleDatabaseName1']}\\\",\\\"all\\\":true}}}}\")\n,\n subscription_instance_network_type=\"vpc\",\n subscription_instance_vpc_id=example_network.id,\n subscription_instance_vswitch_id=example_switch.id,\n status=\"Normal\")\nexample_consumer_channel = alicloud.dts.ConsumerChannel(\"example\",\n dts_instance_id=example_subscription_job.dts_instance_id,\n consumer_group_name=name,\n consumer_group_user_name=\"example\",\n consumer_group_password=\"example1234\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Rds.Instance(\"example\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = name,\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleRdsAccount = new AliCloud.Rds.RdsAccount(\"example\", new()\n {\n DbInstanceId = exampleInstance.Id,\n AccountName = \"example_name\",\n AccountPassword = \"example_1234\",\n });\n\n var exampleDatabase = new AliCloud.Rds.Database(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n Name = name,\n });\n\n var exampleAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n AccountName = exampleRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase.Name,\n },\n });\n\n var exampleSubscriptionJob = new AliCloud.Dts.SubscriptionJob(\"example\", new()\n {\n DtsJobName = name,\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleInstance.Id,\n SourceEndpointDatabaseName = exampleDatabase.Name,\n SourceEndpointUserName = exampleRdsAccount.AccountName,\n SourceEndpointPassword = exampleRdsAccount.AccountPassword,\n DbList = Output.Tuple(exampleDatabase.Name, exampleDatabase.Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return $\"{{\\\"{exampleDatabaseName}\\\":{{\\\"name\\\":\\\"{exampleDatabaseName1}\\\",\\\"all\\\":true}}}}\";\n }),\n SubscriptionInstanceNetworkType = \"vpc\",\n SubscriptionInstanceVpcId = exampleNetwork.Id,\n SubscriptionInstanceVswitchId = exampleSwitch.Id,\n Status = \"Normal\",\n });\n\n var exampleConsumerChannel = new AliCloud.Dts.ConsumerChannel(\"example\", new()\n {\n DtsInstanceId = exampleSubscriptionJob.DtsInstanceId,\n ConsumerGroupName = name,\n ConsumerGroupUserName = \"example\",\n ConsumerGroupPassword = \"example1234\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := rds.NewInstance(ctx, \"example\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRdsAccount, err := rds.NewRdsAccount(ctx, \"example\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"example_name\"),\n\t\t\tAccountPassword: pulumi.String(\"example_1234\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDatabase, err := rds.NewDatabase(ctx, \"example\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rds.NewAccountPrivilege(ctx, \"example\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: exampleRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\texampleDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubscriptionJob, err := dts.NewSubscriptionJob(ctx, \"example\", \u0026dts.SubscriptionJobArgs{\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleInstance.ID(),\n\t\t\tSourceEndpointDatabaseName: exampleDatabase.Name,\n\t\t\tSourceEndpointUserName: exampleRdsAccount.AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount.AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase.Name, exampleDatabase.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"{\\\"%v\\\":{\\\"name\\\":\\\"%v\\\",\\\"all\\\":true}}\", exampleDatabaseName, exampleDatabaseName1), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSubscriptionInstanceNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSubscriptionInstanceVpcId: exampleNetwork.ID(),\n\t\t\tSubscriptionInstanceVswitchId: exampleSwitch.ID(),\n\t\t\tStatus: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewConsumerChannel(ctx, \"example\", \u0026dts.ConsumerChannelArgs{\n\t\t\tDtsInstanceId: exampleSubscriptionJob.DtsInstanceId,\n\t\t\tConsumerGroupName: pulumi.String(name),\n\t\t\tConsumerGroupUserName: pulumi.String(\"example\"),\n\t\t\tConsumerGroupPassword: pulumi.String(\"example1234\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SubscriptionJob;\nimport com.pulumi.alicloud.dts.SubscriptionJobArgs;\nimport com.pulumi.alicloud.dts.ConsumerChannel;\nimport com.pulumi.alicloud.dts.ConsumerChannelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(name)\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleRdsAccount = new RdsAccount(\"exampleRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance.id())\n .accountName(\"example_name\")\n .accountPassword(\"example_1234\")\n .build());\n\n var exampleDatabase = new Database(\"exampleDatabase\", DatabaseArgs.builder()\n .instanceId(exampleInstance.id())\n .name(name)\n .build());\n\n var exampleAccountPrivilege = new AccountPrivilege(\"exampleAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance.id())\n .accountName(exampleRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase.name())\n .build());\n\n var exampleSubscriptionJob = new SubscriptionJob(\"exampleSubscriptionJob\", SubscriptionJobArgs.builder()\n .dtsJobName(name)\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleInstance.id())\n .sourceEndpointDatabaseName(exampleDatabase.name())\n .sourceEndpointUserName(exampleRdsAccount.accountName())\n .sourceEndpointPassword(exampleRdsAccount.accountPassword())\n .dbList(Output.tuple(exampleDatabase.name(), exampleDatabase.name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return String.format(\"{{\\\"%s\\\":{{\\\"name\\\":\\\"%s\\\",\\\"all\\\":true}}}}\", exampleDatabaseName,exampleDatabaseName1);\n }))\n .subscriptionInstanceNetworkType(\"vpc\")\n .subscriptionInstanceVpcId(exampleNetwork.id())\n .subscriptionInstanceVswitchId(exampleSwitch.id())\n .status(\"Normal\")\n .build());\n\n var exampleConsumerChannel = new ConsumerChannel(\"exampleConsumerChannel\", ConsumerChannelArgs.builder()\n .dtsInstanceId(exampleSubscriptionJob.dtsInstanceId())\n .consumerGroupName(name)\n .consumerGroupUserName(\"example\")\n .consumerGroupPassword(\"example1234\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${exampleNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${exampleGetZones.zones[0].id}\n vswitchName: ${name}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:rds:Instance\n name: example\n properties:\n engine: MySQL\n engineVersion: '8.0'\n instanceType: ${exampleGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${exampleGetInstanceClasses.instanceClasses[0].storageRange.min}\n instanceChargeType: Postpaid\n instanceName: ${name}\n vswitchId: ${exampleSwitch.id}\n monitoringPeriod: '60'\n dbInstanceStorageType: cloud_essd\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleRdsAccount:\n type: alicloud:rds:RdsAccount\n name: example\n properties:\n dbInstanceId: ${exampleInstance.id}\n accountName: example_name\n accountPassword: example_1234\n exampleDatabase:\n type: alicloud:rds:Database\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n name: ${name}\n exampleAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n accountName: ${exampleRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${exampleDatabase.name}\n exampleSubscriptionJob:\n type: alicloud:dts:SubscriptionJob\n name: example\n properties:\n dtsJobName: ${name}\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${example.regions[0].id}\n sourceEndpointInstanceType: RDS\n sourceEndpointInstanceId: ${exampleInstance.id}\n sourceEndpointDatabaseName: ${exampleDatabase.name}\n sourceEndpointUserName: ${exampleRdsAccount.accountName}\n sourceEndpointPassword: ${exampleRdsAccount.accountPassword}\n dbList: '{\"${exampleDatabase.name}\":{\"name\":\"${exampleDatabase.name}\",\"all\":true}}'\n subscriptionInstanceNetworkType: vpc\n subscriptionInstanceVpcId: ${exampleNetwork.id}\n subscriptionInstanceVswitchId: ${exampleSwitch.id}\n status: Normal\n exampleConsumerChannel:\n type: alicloud:dts:ConsumerChannel\n name: example\n properties:\n dtsInstanceId: ${exampleSubscriptionJob.dtsInstanceId}\n consumerGroupName: ${name}\n consumerGroupUserName: example\n consumerGroupPassword: example1234\nvariables:\n example:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n exampleGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n exampleGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${exampleGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDTS Consumer Channel can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/consumerChannel:ConsumerChannel example \u003cdts_instance_id\u003e:\u003cconsumer_group_id\u003e\n```\n\n",
+ "description": "Provides a DTS Consumer Channel resource.\n\nFor information about DTS Consumer Channel and how to use it, see [What is Consumer Channel](https://www.alibabacloud.com/help/en/doc-detail/264593.htm).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.rds.Instance(\"example\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: name,\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleRdsAccount = new alicloud.rds.RdsAccount(\"example\", {\n dbInstanceId: exampleInstance.id,\n accountName: \"example_name\",\n accountPassword: \"example_1234\",\n});\nconst exampleDatabase = new alicloud.rds.Database(\"example\", {\n instanceId: exampleInstance.id,\n name: name,\n});\nconst exampleAccountPrivilege = new alicloud.rds.AccountPrivilege(\"example\", {\n instanceId: exampleInstance.id,\n accountName: exampleRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase.name],\n});\nconst exampleSubscriptionJob = new alicloud.dts.SubscriptionJob(\"example\", {\n dtsJobName: name,\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleInstance.id,\n sourceEndpointDatabaseName: exampleDatabase.name,\n sourceEndpointUserName: exampleRdsAccount.accountName,\n sourceEndpointPassword: exampleRdsAccount.accountPassword,\n dbList: pulumi.interpolate`{\"${exampleDatabase.name}\":{\"name\":\"${exampleDatabase.name}\",\"all\":true}}`,\n subscriptionInstanceNetworkType: \"vpc\",\n subscriptionInstanceVpcId: exampleNetwork.id,\n subscriptionInstanceVswitchId: exampleSwitch.id,\n status: \"Normal\",\n});\nconst exampleConsumerChannel = new alicloud.dts.ConsumerChannel(\"example\", {\n dtsInstanceId: exampleSubscriptionJob.dtsInstanceId,\n consumerGroupName: name,\n consumerGroupUserName: \"example\",\n consumerGroupPassword: \"example1234\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.rds.Instance(\"example\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=name,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id])\nexample_rds_account = alicloud.rds.RdsAccount(\"example\",\n db_instance_id=example_instance.id,\n account_name=\"example_name\",\n account_password=\"example_1234\")\nexample_database = alicloud.rds.Database(\"example\",\n instance_id=example_instance.id,\n name=name)\nexample_account_privilege = alicloud.rds.AccountPrivilege(\"example\",\n instance_id=example_instance.id,\n account_name=example_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database.name])\nexample_subscription_job = alicloud.dts.SubscriptionJob(\"example\",\n dts_job_name=name,\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_instance.id,\n source_endpoint_database_name=example_database.name,\n source_endpoint_user_name=example_rds_account.account_name,\n source_endpoint_password=example_rds_account.account_password,\n db_list=pulumi.Output.all(\n exampleDatabaseName=example_database.name,\n exampleDatabaseName1=example_database.name\n).apply(lambda resolved_outputs: f\"{{\\\"{resolved_outputs['exampleDatabaseName']}\\\":{{\\\"name\\\":\\\"{resolved_outputs['exampleDatabaseName1']}\\\",\\\"all\\\":true}}}}\")\n,\n subscription_instance_network_type=\"vpc\",\n subscription_instance_vpc_id=example_network.id,\n subscription_instance_vswitch_id=example_switch.id,\n status=\"Normal\")\nexample_consumer_channel = alicloud.dts.ConsumerChannel(\"example\",\n dts_instance_id=example_subscription_job.dts_instance_id,\n consumer_group_name=name,\n consumer_group_user_name=\"example\",\n consumer_group_password=\"example1234\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Rds.Instance(\"example\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = name,\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleRdsAccount = new AliCloud.Rds.RdsAccount(\"example\", new()\n {\n DbInstanceId = exampleInstance.Id,\n AccountName = \"example_name\",\n AccountPassword = \"example_1234\",\n });\n\n var exampleDatabase = new AliCloud.Rds.Database(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n Name = name,\n });\n\n var exampleAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n AccountName = exampleRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase.Name,\n },\n });\n\n var exampleSubscriptionJob = new AliCloud.Dts.SubscriptionJob(\"example\", new()\n {\n DtsJobName = name,\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleInstance.Id,\n SourceEndpointDatabaseName = exampleDatabase.Name,\n SourceEndpointUserName = exampleRdsAccount.AccountName,\n SourceEndpointPassword = exampleRdsAccount.AccountPassword,\n DbList = Output.Tuple(exampleDatabase.Name, exampleDatabase.Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return $\"{{\\\"{exampleDatabaseName}\\\":{{\\\"name\\\":\\\"{exampleDatabaseName1}\\\",\\\"all\\\":true}}}}\";\n }),\n SubscriptionInstanceNetworkType = \"vpc\",\n SubscriptionInstanceVpcId = exampleNetwork.Id,\n SubscriptionInstanceVswitchId = exampleSwitch.Id,\n Status = \"Normal\",\n });\n\n var exampleConsumerChannel = new AliCloud.Dts.ConsumerChannel(\"example\", new()\n {\n DtsInstanceId = exampleSubscriptionJob.DtsInstanceId,\n ConsumerGroupName = name,\n ConsumerGroupUserName = \"example\",\n ConsumerGroupPassword = \"example1234\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := rds.NewInstance(ctx, \"example\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRdsAccount, err := rds.NewRdsAccount(ctx, \"example\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"example_name\"),\n\t\t\tAccountPassword: pulumi.String(\"example_1234\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDatabase, err := rds.NewDatabase(ctx, \"example\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rds.NewAccountPrivilege(ctx, \"example\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: exampleRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\texampleDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubscriptionJob, err := dts.NewSubscriptionJob(ctx, \"example\", \u0026dts.SubscriptionJobArgs{\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleInstance.ID(),\n\t\t\tSourceEndpointDatabaseName: exampleDatabase.Name,\n\t\t\tSourceEndpointUserName: exampleRdsAccount.AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount.AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase.Name, exampleDatabase.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\treturn fmt.Sprintf(\"{\\\"%v\\\":{\\\"name\\\":\\\"%v\\\",\\\"all\\\":true}}\", exampleDatabaseName, exampleDatabaseName1), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSubscriptionInstanceNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSubscriptionInstanceVpcId: exampleNetwork.ID(),\n\t\t\tSubscriptionInstanceVswitchId: exampleSwitch.ID(),\n\t\t\tStatus: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewConsumerChannel(ctx, \"example\", \u0026dts.ConsumerChannelArgs{\n\t\t\tDtsInstanceId: exampleSubscriptionJob.DtsInstanceId,\n\t\t\tConsumerGroupName: pulumi.String(name),\n\t\t\tConsumerGroupUserName: pulumi.String(\"example\"),\n\t\t\tConsumerGroupPassword: pulumi.String(\"example1234\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SubscriptionJob;\nimport com.pulumi.alicloud.dts.SubscriptionJobArgs;\nimport com.pulumi.alicloud.dts.ConsumerChannel;\nimport com.pulumi.alicloud.dts.ConsumerChannelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(name)\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleRdsAccount = new RdsAccount(\"exampleRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance.id())\n .accountName(\"example_name\")\n .accountPassword(\"example_1234\")\n .build());\n\n var exampleDatabase = new Database(\"exampleDatabase\", DatabaseArgs.builder()\n .instanceId(exampleInstance.id())\n .name(name)\n .build());\n\n var exampleAccountPrivilege = new AccountPrivilege(\"exampleAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance.id())\n .accountName(exampleRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase.name())\n .build());\n\n var exampleSubscriptionJob = new SubscriptionJob(\"exampleSubscriptionJob\", SubscriptionJobArgs.builder()\n .dtsJobName(name)\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleInstance.id())\n .sourceEndpointDatabaseName(exampleDatabase.name())\n .sourceEndpointUserName(exampleRdsAccount.accountName())\n .sourceEndpointPassword(exampleRdsAccount.accountPassword())\n .dbList(Output.tuple(exampleDatabase.name(), exampleDatabase.name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return String.format(\"{{\\\"%s\\\":{{\\\"name\\\":\\\"%s\\\",\\\"all\\\":true}}}}\", exampleDatabaseName,exampleDatabaseName1);\n }))\n .subscriptionInstanceNetworkType(\"vpc\")\n .subscriptionInstanceVpcId(exampleNetwork.id())\n .subscriptionInstanceVswitchId(exampleSwitch.id())\n .status(\"Normal\")\n .build());\n\n var exampleConsumerChannel = new ConsumerChannel(\"exampleConsumerChannel\", ConsumerChannelArgs.builder()\n .dtsInstanceId(exampleSubscriptionJob.dtsInstanceId())\n .consumerGroupName(name)\n .consumerGroupUserName(\"example\")\n .consumerGroupPassword(\"example1234\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${exampleNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${exampleGetZones.zones[0].id}\n vswitchName: ${name}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:rds:Instance\n name: example\n properties:\n engine: MySQL\n engineVersion: '8.0'\n instanceType: ${exampleGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${exampleGetInstanceClasses.instanceClasses[0].storageRange.min}\n instanceChargeType: Postpaid\n instanceName: ${name}\n vswitchId: ${exampleSwitch.id}\n monitoringPeriod: '60'\n dbInstanceStorageType: cloud_essd\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleRdsAccount:\n type: alicloud:rds:RdsAccount\n name: example\n properties:\n dbInstanceId: ${exampleInstance.id}\n accountName: example_name\n accountPassword: example_1234\n exampleDatabase:\n type: alicloud:rds:Database\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n name: ${name}\n exampleAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n accountName: ${exampleRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${exampleDatabase.name}\n exampleSubscriptionJob:\n type: alicloud:dts:SubscriptionJob\n name: example\n properties:\n dtsJobName: ${name}\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${example.regions[0].id}\n sourceEndpointInstanceType: RDS\n sourceEndpointInstanceId: ${exampleInstance.id}\n sourceEndpointDatabaseName: ${exampleDatabase.name}\n sourceEndpointUserName: ${exampleRdsAccount.accountName}\n sourceEndpointPassword: ${exampleRdsAccount.accountPassword}\n dbList: '{\"${exampleDatabase.name}\":{\"name\":\"${exampleDatabase.name}\",\"all\":true}}'\n subscriptionInstanceNetworkType: vpc\n subscriptionInstanceVpcId: ${exampleNetwork.id}\n subscriptionInstanceVswitchId: ${exampleSwitch.id}\n status: Normal\n exampleConsumerChannel:\n type: alicloud:dts:ConsumerChannel\n name: example\n properties:\n dtsInstanceId: ${exampleSubscriptionJob.dtsInstanceId}\n consumerGroupName: ${name}\n consumerGroupUserName: example\n consumerGroupPassword: example1234\nvariables:\n example:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n exampleGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n exampleGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${exampleGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDTS Consumer Channel can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/consumerChannel:ConsumerChannel example \u003cdts_instance_id\u003e:\u003cconsumer_group_id\u003e\n```\n\n",
"properties": {
"consumerGroupId": {
"type": "string",
@@ -145622,7 +148251,7 @@
}
},
"alicloud:dts/instance:Instance": {
- "description": "Provides a Dts Instance resource.\n\nFor information about Dts Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/data-transmission-service/latest/createdtsinstance).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultInstance = new alicloud.dts.Instance(\"default\", {\n type: \"sync\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n paymentType: \"Subscription\",\n instanceClass: \"large\",\n sourceEndpointEngineName: \"MySQL\",\n sourceRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_instance = alicloud.dts.Instance(\"default\",\n type=\"sync\",\n resource_group_id=default.ids[0],\n payment_type=\"Subscription\",\n instance_class=\"large\",\n source_endpoint_engine_name=\"MySQL\",\n source_region=default_get_regions.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_region=default_get_regions.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInstance = new AliCloud.Dts.Instance(\"default\", new()\n {\n Type = \"sync\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n PaymentType = \"Subscription\",\n InstanceClass = \"large\",\n SourceEndpointEngineName = \"MySQL\",\n SourceRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewInstance(ctx, \"default\", \u0026dts.InstanceArgs{\n\t\t\tType: pulumi.String(\"sync\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tInstanceClass: pulumi.String(\"large\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.Instance;\nimport com.pulumi.alicloud.dts.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .type(\"sync\")\n .resourceGroupId(default_.ids()[0])\n .paymentType(\"Subscription\")\n .instanceClass(\"large\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceRegion(defaultGetRegions.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationRegion(defaultGetRegions.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInstance:\n type: alicloud:dts:Instance\n name: default\n properties:\n type: sync\n resourceGroupId: ${default.ids[0]}\n paymentType: Subscription\n instanceClass: large\n sourceEndpointEngineName: MySQL\n sourceRegion: ${defaultGetRegions.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationRegion: ${defaultGetRegions.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDts Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Dts Instance resource.\n\nFor information about Dts Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/data-transmission-service/latest/createdtsinstance).\n\n\u003e **NOTE:** Available since v1.198.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultInstance = new alicloud.dts.Instance(\"default\", {\n type: \"sync\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n paymentType: \"Subscription\",\n instanceClass: \"large\",\n sourceEndpointEngineName: \"MySQL\",\n sourceRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationRegion: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_instance = alicloud.dts.Instance(\"default\",\n type=\"sync\",\n resource_group_id=default.ids[0],\n payment_type=\"Subscription\",\n instance_class=\"large\",\n source_endpoint_engine_name=\"MySQL\",\n source_region=default_get_regions.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_region=default_get_regions.regions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultInstance = new AliCloud.Dts.Instance(\"default\", new()\n {\n Type = \"sync\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n PaymentType = \"Subscription\",\n InstanceClass = \"large\",\n SourceEndpointEngineName = \"MySQL\",\n SourceRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationRegion = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewInstance(ctx, \"default\", \u0026dts.InstanceArgs{\n\t\t\tType: pulumi.String(\"sync\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tPaymentType: pulumi.String(\"Subscription\"),\n\t\t\tInstanceClass: pulumi.String(\"large\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationRegion: pulumi.String(defaultGetRegions.Regions[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.Instance;\nimport com.pulumi.alicloud.dts.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .type(\"sync\")\n .resourceGroupId(default_.ids()[0])\n .paymentType(\"Subscription\")\n .instanceClass(\"large\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceRegion(defaultGetRegions.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationRegion(defaultGetRegions.regions()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultInstance:\n type: alicloud:dts:Instance\n name: default\n properties:\n type: sync\n resourceGroupId: ${default.ids[0]}\n paymentType: Subscription\n instanceClass: large\n sourceEndpointEngineName: MySQL\n sourceRegion: ${defaultGetRegions.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationRegion: ${defaultGetRegions.regions[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDts Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"autoPay": {
"type": "boolean",
@@ -145940,7 +148569,7 @@
}
},
"alicloud:dts/jobMonitorRule:JobMonitorRule": {
- "description": "Provides a DTS Job Monitor Rule resource.\n\nFor information about DTS Job Monitor Rule and how to use it, see [What is Job Monitor Rule](https://www.alibabacloud.com/help/en/dts/developer-reference/api-createjobmonitorrule).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].name,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleMigrationInstance = new alicloud.dts.MigrationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleMigrationJob = new alicloud.dts.MigrationJob(\"example\", {\n dtsInstanceId: exampleMigrationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n status: \"Migrating\",\n});\nconst exampleJobMonitorRule = new alicloud.dts.JobMonitorRule(\"example\", {\n dtsJobId: exampleMigrationJob.id,\n type: \"delay\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_migration_instance = alicloud.dts.MigrationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_migration_job = alicloud.dts.MigrationJob(\"example\",\n dts_instance_id=example_migration_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True,\n status=\"Migrating\")\nexample_job_monitor_rule = alicloud.dts.JobMonitorRule(\"example\",\n dts_job_id=example_migration_job.id,\n type=\"delay\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].Name,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleMigrationInstance = new AliCloud.Dts.MigrationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleMigrationJob = new AliCloud.Dts.MigrationJob(\"example\", new()\n {\n DtsInstanceId = exampleMigrationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n Status = \"Migrating\",\n });\n\n var exampleJobMonitorRule = new AliCloud.Dts.JobMonitorRule(\"example\", new()\n {\n DtsJobId = exampleMigrationJob.Id,\n Type = \"delay\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].Name,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleMigrationInstance, err := dts.NewMigrationInstance(ctx, \"example\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMigrationJob, err := dts.NewMigrationJob(ctx, \"example\", \u0026dts.MigrationJobArgs{\n\t\t\tDtsInstanceId: exampleMigrationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t\tStatus: pulumi.String(\"Migrating\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewJobMonitorRule(ctx, \"example\", \u0026dts.JobMonitorRuleArgs{\n\t\t\tDtsJobId: exampleMigrationJob.ID(),\n\t\t\tType: pulumi.String(\"delay\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport com.pulumi.alicloud.dts.MigrationJob;\nimport com.pulumi.alicloud.dts.MigrationJobArgs;\nimport com.pulumi.alicloud.dts.JobMonitorRule;\nimport com.pulumi.alicloud.dts.JobMonitorRuleArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].name())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleMigrationInstance = new MigrationInstance(\"exampleMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleMigrationJob = new MigrationJob(\"exampleMigrationJob\", MigrationJobArgs.builder()\n .dtsInstanceId(exampleMigrationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .status(\"Migrating\")\n .build());\n\n var exampleJobMonitorRule = new JobMonitorRule(\"exampleJobMonitorRule\", JobMonitorRuleArgs.builder()\n .dtsJobId(exampleMigrationJob.id())\n .type(\"delay\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDTS Job Monitor Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/jobMonitorRule:JobMonitorRule example \u003cdts_job_id\u003e\n```\n\n",
+ "description": "Provides a DTS Job Monitor Rule resource.\n\nFor information about DTS Job Monitor Rule and how to use it, see [What is Job Monitor Rule](https://www.alibabacloud.com/help/en/dts/developer-reference/api-createjobmonitorrule).\n\n\u003e **NOTE:** Available since v1.134.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].name,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleMigrationInstance = new alicloud.dts.MigrationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleMigrationJob = new alicloud.dts.MigrationJob(\"example\", {\n dtsInstanceId: exampleMigrationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n status: \"Migrating\",\n});\nconst exampleJobMonitorRule = new alicloud.dts.JobMonitorRule(\"example\", {\n dtsJobId: exampleMigrationJob.id,\n type: \"delay\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_migration_instance = alicloud.dts.MigrationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_migration_job = alicloud.dts.MigrationJob(\"example\",\n dts_instance_id=example_migration_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True,\n status=\"Migrating\")\nexample_job_monitor_rule = alicloud.dts.JobMonitorRule(\"example\",\n dts_job_id=example_migration_job.id,\n type=\"delay\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].Name,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleMigrationInstance = new AliCloud.Dts.MigrationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleMigrationJob = new AliCloud.Dts.MigrationJob(\"example\", new()\n {\n DtsInstanceId = exampleMigrationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n Status = \"Migrating\",\n });\n\n var exampleJobMonitorRule = new AliCloud.Dts.JobMonitorRule(\"example\", new()\n {\n DtsJobId = exampleMigrationJob.Id,\n Type = \"delay\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].Name,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleMigrationInstance, err := dts.NewMigrationInstance(ctx, \"example\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleMigrationJob, err := dts.NewMigrationJob(ctx, \"example\", \u0026dts.MigrationJobArgs{\n\t\t\tDtsInstanceId: exampleMigrationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t\tStatus: pulumi.String(\"Migrating\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewJobMonitorRule(ctx, \"example\", \u0026dts.JobMonitorRuleArgs{\n\t\t\tDtsJobId: exampleMigrationJob.ID(),\n\t\t\tType: pulumi.String(\"delay\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport com.pulumi.alicloud.dts.MigrationJob;\nimport com.pulumi.alicloud.dts.MigrationJobArgs;\nimport com.pulumi.alicloud.dts.JobMonitorRule;\nimport com.pulumi.alicloud.dts.JobMonitorRuleArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].name())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleMigrationInstance = new MigrationInstance(\"exampleMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleMigrationJob = new MigrationJob(\"exampleMigrationJob\", MigrationJobArgs.builder()\n .dtsInstanceId(exampleMigrationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .status(\"Migrating\")\n .build());\n\n var exampleJobMonitorRule = new JobMonitorRule(\"exampleJobMonitorRule\", JobMonitorRuleArgs.builder()\n .dtsJobId(exampleMigrationJob.id())\n .type(\"delay\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDTS Job Monitor Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/jobMonitorRule:JobMonitorRule example \u003cdts_job_id\u003e\n```\n\n",
"properties": {
"delayRuleTime": {
"type": "string",
@@ -146027,7 +148656,7 @@
}
},
"alicloud:dts/migrationInstance:MigrationInstance": {
- "description": "Provides a DTS Migration Instance resource.\n\nFor information about DTS Migration Instance and how to use it, see [What is Synchronization Instance](https://www.alibabacloud.com/help/en/doc-detail/208270.html).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultMigrationInstance = new alicloud.dts.MigrationInstance(\"default\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\ndefault_migration_instance = alicloud.dts.MigrationInstance(\"default\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=default.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=default.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultMigrationInstance = new AliCloud.Dts.MigrationInstance(\"default\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewMigrationInstance(ctx, \"default\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultMigrationInstance = new MigrationInstance(\"defaultMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(default_.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(default_.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultMigrationInstance:\n type: alicloud:dts:MigrationInstance\n name: default\n properties:\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${default.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationEndpointRegion: ${default.regions[0].id}\n instanceClass: small\n syncArchitecture: oneway\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDTS Migration Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/migrationInstance:MigrationInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DTS Migration Instance resource.\n\nFor information about DTS Migration Instance and how to use it, see [What is Synchronization Instance](https://www.alibabacloud.com/help/en/doc-detail/208270.html).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultMigrationInstance = new alicloud.dts.MigrationInstance(\"default\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\ndefault_migration_instance = alicloud.dts.MigrationInstance(\"default\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=default.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=default.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultMigrationInstance = new AliCloud.Dts.MigrationInstance(\"default\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewMigrationInstance(ctx, \"default\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultMigrationInstance = new MigrationInstance(\"defaultMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(default_.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(default_.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultMigrationInstance:\n type: alicloud:dts:MigrationInstance\n name: default\n properties:\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${default.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationEndpointRegion: ${default.regions[0].id}\n instanceClass: small\n syncArchitecture: oneway\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDTS Migration Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/migrationInstance:MigrationInstance example \u003cid\u003e\n```\n\n",
"properties": {
"computeUnit": {
"type": "integer",
@@ -146214,7 +148843,7 @@
}
},
"alicloud:dts/migrationJob:MigrationJob": {
- "description": "Provides a DTS Migration Job resource.\n\nFor information about DTS Migration Job and how to use it, see [What is Migration Job](https://www.alibabacloud.com/help/en/doc-detail/208399.html).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].name,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleMigrationInstance = new alicloud.dts.MigrationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleMigrationJob = new alicloud.dts.MigrationJob(\"example\", {\n dtsInstanceId: exampleMigrationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_migration_instance = alicloud.dts.MigrationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_migration_job = alicloud.dts.MigrationJob(\"example\",\n dts_instance_id=example_migration_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].Name,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleMigrationInstance = new AliCloud.Dts.MigrationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleMigrationJob = new AliCloud.Dts.MigrationJob(\"example\", new()\n {\n DtsInstanceId = exampleMigrationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].Name,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleMigrationInstance, err := dts.NewMigrationInstance(ctx, \"example\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewMigrationJob(ctx, \"example\", \u0026dts.MigrationJobArgs{\n\t\t\tDtsInstanceId: exampleMigrationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport com.pulumi.alicloud.dts.MigrationJob;\nimport com.pulumi.alicloud.dts.MigrationJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].name())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleMigrationInstance = new MigrationInstance(\"exampleMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleMigrationJob = new MigrationJob(\"exampleMigrationJob\", MigrationJobArgs.builder()\n .dtsInstanceId(exampleMigrationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Notice\n\n1. The expiration time cannot be changed after the work of the annual and monthly subscription suspended;\n2. After the pay-as-you-go type job suspended, your job configuration fee will still be charged;\n3. If the task suspended for more than 6 hours, the task will not start successfully.\n4. Suspending the task will only stop writing to the target library, but will still continue to obtain the incremental log of the source, so that the task can be quickly resumed after the suspension is canceled. Therefore, some resources of the source library, such as bandwidth resources, will continue to be occupied during the period.\n5. Charges will continue during the task suspension period. If you need to stop charging, please release the instance\n6. When a DTS instance suspended for more than 7 days, the instance cannot be resumed, and the status will change from suspended to failed.\n\n## Import\n\nDTS Migration Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/migrationJob:MigrationJob example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DTS Migration Job resource.\n\nFor information about DTS Migration Job and how to use it, see [What is Migration Job](https://www.alibabacloud.com/help/en/doc-detail/208399.html).\n\n\u003e **NOTE:** Available since v1.157.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: `${name}_%d`,\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].name,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleMigrationInstance = new alicloud.dts.MigrationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleMigrationJob = new alicloud.dts.MigrationJob(\"example\", {\n dtsInstanceId: exampleMigrationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=f\"{name}_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_migration_instance = alicloud.dts.MigrationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_migration_job = alicloud.dts.MigrationJob(\"example\",\n dts_instance_id=example_migration_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = $\"{name}_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].Name,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleMigrationInstance = new AliCloud.Dts.MigrationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleMigrationJob = new AliCloud.Dts.MigrationJob(\"example\", new()\n {\n DtsInstanceId = exampleMigrationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: fmt.Sprintf(\"%v%v\", name, \"_%d\"),\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].Name,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleMigrationInstance, err := dts.NewMigrationInstance(ctx, \"example\", \u0026dts.MigrationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewMigrationJob(ctx, \"example\", \u0026dts.MigrationJobArgs{\n\t\t\tDtsInstanceId: exampleMigrationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.MigrationInstance;\nimport com.pulumi.alicloud.dts.MigrationInstanceArgs;\nimport com.pulumi.alicloud.dts.MigrationJob;\nimport com.pulumi.alicloud.dts.MigrationJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(String.format(\"%s_%d\", name))\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].name())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleMigrationInstance = new MigrationInstance(\"exampleMigrationInstance\", MigrationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleMigrationJob = new MigrationJob(\"exampleMigrationJob\", MigrationJobArgs.builder()\n .dtsInstanceId(exampleMigrationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Notice\n\n1. The expiration time cannot be changed after the work of the annual and monthly subscription suspended;\n2. After the pay-as-you-go type job suspended, your job configuration fee will still be charged;\n3. If the task suspended for more than 6 hours, the task will not start successfully.\n4. Suspending the task will only stop writing to the target library, but will still continue to obtain the incremental log of the source, so that the task can be quickly resumed after the suspension is canceled. Therefore, some resources of the source library, such as bandwidth resources, will continue to be occupied during the period.\n5. Charges will continue during the task suspension period. If you need to stop charging, please release the instance\n6. When a DTS instance suspended for more than 7 days, the instance cannot be resumed, and the status will change from suspended to failed.\n\n## Import\n\nDTS Migration Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/migrationJob:MigrationJob example \u003cid\u003e\n```\n\n",
"properties": {
"checkpoint": {
"type": "string",
@@ -146679,7 +149308,7 @@
}
},
"alicloud:dts/subscriptionJob:SubscriptionJob": {
- "description": "Provides a DTS Subscription Job resource.\n\nFor information about DTS Subscription Job and how to use it, see [What is Subscription Job](https://www.alibabacloud.com/help/en/data-transmission-service/latest/configuresubscription).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.rds.Instance(\"example\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: name,\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleRdsAccount = new alicloud.rds.RdsAccount(\"example\", {\n dbInstanceId: exampleInstance.id,\n accountName: \"test_mysql\",\n accountPassword: \"N1cetest\",\n});\nconst exampleDatabase = new alicloud.rds.Database(\"example\", {\n instanceId: exampleInstance.id,\n name: name,\n});\nconst exampleAccountPrivilege = new alicloud.rds.AccountPrivilege(\"example\", {\n instanceId: exampleInstance.id,\n accountName: exampleRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase.name],\n});\nconst exampleSubscriptionJob = new alicloud.dts.SubscriptionJob(\"example\", {\n dtsJobName: name,\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleInstance.id,\n sourceEndpointDatabaseName: exampleDatabase.name,\n sourceEndpointUserName: exampleRdsAccount.accountName,\n sourceEndpointPassword: exampleRdsAccount.accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase.name, exampleDatabase.name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n subscriptionInstanceNetworkType: \"vpc\",\n subscriptionInstanceVpcId: exampleNetwork.id,\n subscriptionInstanceVswitchId: exampleSwitch.id,\n status: \"Normal\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.rds.Instance(\"example\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=name,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id])\nexample_rds_account = alicloud.rds.RdsAccount(\"example\",\n db_instance_id=example_instance.id,\n account_name=\"test_mysql\",\n account_password=\"N1cetest\")\nexample_database = alicloud.rds.Database(\"example\",\n instance_id=example_instance.id,\n name=name)\nexample_account_privilege = alicloud.rds.AccountPrivilege(\"example\",\n instance_id=example_instance.id,\n account_name=example_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database.name])\nexample_subscription_job = alicloud.dts.SubscriptionJob(\"example\",\n dts_job_name=name,\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_instance.id,\n source_endpoint_database_name=example_database.name,\n source_endpoint_user_name=example_rds_account.account_name,\n source_endpoint_password=example_rds_account.account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database.name,\n exampleDatabaseName1=example_database.name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n subscription_instance_network_type=\"vpc\",\n subscription_instance_vpc_id=example_network.id,\n subscription_instance_vswitch_id=example_switch.id,\n status=\"Normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Rds.Instance(\"example\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = name,\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleRdsAccount = new AliCloud.Rds.RdsAccount(\"example\", new()\n {\n DbInstanceId = exampleInstance.Id,\n AccountName = \"test_mysql\",\n AccountPassword = \"N1cetest\",\n });\n\n var exampleDatabase = new AliCloud.Rds.Database(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n Name = name,\n });\n\n var exampleAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n AccountName = exampleRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase.Name,\n },\n });\n\n var exampleSubscriptionJob = new AliCloud.Dts.SubscriptionJob(\"example\", new()\n {\n DtsJobName = name,\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleInstance.Id,\n SourceEndpointDatabaseName = exampleDatabase.Name,\n SourceEndpointUserName = exampleRdsAccount.AccountName,\n SourceEndpointPassword = exampleRdsAccount.AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase.Name, exampleDatabase.Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n SubscriptionInstanceNetworkType = \"vpc\",\n SubscriptionInstanceVpcId = exampleNetwork.Id,\n SubscriptionInstanceVswitchId = exampleSwitch.Id,\n Status = \"Normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := rds.NewInstance(ctx, \"example\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRdsAccount, err := rds.NewRdsAccount(ctx, \"example\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"test_mysql\"),\n\t\t\tAccountPassword: pulumi.String(\"N1cetest\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDatabase, err := rds.NewDatabase(ctx, \"example\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rds.NewAccountPrivilege(ctx, \"example\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: exampleRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\texampleDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSubscriptionJob(ctx, \"example\", \u0026dts.SubscriptionJobArgs{\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleInstance.ID(),\n\t\t\tSourceEndpointDatabaseName: exampleDatabase.Name,\n\t\t\tSourceEndpointUserName: exampleRdsAccount.AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount.AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase.Name, exampleDatabase.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSubscriptionInstanceNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSubscriptionInstanceVpcId: exampleNetwork.ID(),\n\t\t\tSubscriptionInstanceVswitchId: exampleSwitch.ID(),\n\t\t\tStatus: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SubscriptionJob;\nimport com.pulumi.alicloud.dts.SubscriptionJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(name)\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleRdsAccount = new RdsAccount(\"exampleRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance.id())\n .accountName(\"test_mysql\")\n .accountPassword(\"N1cetest\")\n .build());\n\n var exampleDatabase = new Database(\"exampleDatabase\", DatabaseArgs.builder()\n .instanceId(exampleInstance.id())\n .name(name)\n .build());\n\n var exampleAccountPrivilege = new AccountPrivilege(\"exampleAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance.id())\n .accountName(exampleRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase.name())\n .build());\n\n var exampleSubscriptionJob = new SubscriptionJob(\"exampleSubscriptionJob\", SubscriptionJobArgs.builder()\n .dtsJobName(name)\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleInstance.id())\n .sourceEndpointDatabaseName(exampleDatabase.name())\n .sourceEndpointUserName(exampleRdsAccount.accountName())\n .sourceEndpointPassword(exampleRdsAccount.accountPassword())\n .dbList(Output.tuple(exampleDatabase.name(), exampleDatabase.name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .subscriptionInstanceNetworkType(\"vpc\")\n .subscriptionInstanceVpcId(exampleNetwork.id())\n .subscriptionInstanceVswitchId(exampleSwitch.id())\n .status(\"Normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${exampleNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${exampleGetZones.zones[0].id}\n vswitchName: ${name}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:rds:Instance\n name: example\n properties:\n engine: MySQL\n engineVersion: '8.0'\n instanceType: ${exampleGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${exampleGetInstanceClasses.instanceClasses[0].storageRange.min}\n instanceChargeType: Postpaid\n instanceName: ${name}\n vswitchId: ${exampleSwitch.id}\n monitoringPeriod: '60'\n dbInstanceStorageType: cloud_essd\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleRdsAccount:\n type: alicloud:rds:RdsAccount\n name: example\n properties:\n dbInstanceId: ${exampleInstance.id}\n accountName: test_mysql\n accountPassword: N1cetest\n exampleDatabase:\n type: alicloud:rds:Database\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n name: ${name}\n exampleAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n accountName: ${exampleRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${exampleDatabase.name}\n exampleSubscriptionJob:\n type: alicloud:dts:SubscriptionJob\n name: example\n properties:\n dtsJobName: ${name}\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${example.regions[0].id}\n sourceEndpointInstanceType: RDS\n sourceEndpointInstanceId: ${exampleInstance.id}\n sourceEndpointDatabaseName: ${exampleDatabase.name}\n sourceEndpointUserName: ${exampleRdsAccount.accountName}\n sourceEndpointPassword: ${exampleRdsAccount.accountPassword}\n dbList:\n fn::toJSON:\n ${exampleDatabase.name}:\n name: ${exampleDatabase.name}\n all: true\n subscriptionInstanceNetworkType: vpc\n subscriptionInstanceVpcId: ${exampleNetwork.id}\n subscriptionInstanceVswitchId: ${exampleSwitch.id}\n status: Normal\nvariables:\n example:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n exampleGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n exampleGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${exampleGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDTS Subscription Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/subscriptionJob:SubscriptionJob example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DTS Subscription Job resource.\n\nFor information about DTS Subscription Job and how to use it, see [What is Subscription Job](https://www.alibabacloud.com/help/en/data-transmission-service/latest/configuresubscription).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.rds.Instance(\"example\", {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: name,\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n});\nconst exampleRdsAccount = new alicloud.rds.RdsAccount(\"example\", {\n dbInstanceId: exampleInstance.id,\n accountName: \"test_mysql\",\n accountPassword: \"N1cetest\",\n});\nconst exampleDatabase = new alicloud.rds.Database(\"example\", {\n instanceId: exampleInstance.id,\n name: name,\n});\nconst exampleAccountPrivilege = new alicloud.rds.AccountPrivilege(\"example\", {\n instanceId: exampleInstance.id,\n accountName: exampleRdsAccount.accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase.name],\n});\nconst exampleSubscriptionJob = new alicloud.dts.SubscriptionJob(\"example\", {\n dtsJobName: name,\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleInstance.id,\n sourceEndpointDatabaseName: exampleDatabase.name,\n sourceEndpointUserName: exampleRdsAccount.accountName,\n sourceEndpointPassword: exampleRdsAccount.accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase.name, exampleDatabase.name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n subscriptionInstanceNetworkType: \"vpc\",\n subscriptionInstanceVpcId: exampleNetwork.id,\n subscriptionInstanceVswitchId: exampleSwitch.id,\n status: \"Normal\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.rds.Instance(\"example\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=name,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id])\nexample_rds_account = alicloud.rds.RdsAccount(\"example\",\n db_instance_id=example_instance.id,\n account_name=\"test_mysql\",\n account_password=\"N1cetest\")\nexample_database = alicloud.rds.Database(\"example\",\n instance_id=example_instance.id,\n name=name)\nexample_account_privilege = alicloud.rds.AccountPrivilege(\"example\",\n instance_id=example_instance.id,\n account_name=example_rds_account.account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database.name])\nexample_subscription_job = alicloud.dts.SubscriptionJob(\"example\",\n dts_job_name=name,\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_instance.id,\n source_endpoint_database_name=example_database.name,\n source_endpoint_user_name=example_rds_account.account_name,\n source_endpoint_password=example_rds_account.account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database.name,\n exampleDatabaseName1=example_database.name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n subscription_instance_network_type=\"vpc\",\n subscription_instance_vpc_id=example_network.id,\n subscription_instance_vswitch_id=example_switch.id,\n status=\"Normal\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Rds.Instance(\"example\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = name,\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n });\n\n var exampleRdsAccount = new AliCloud.Rds.RdsAccount(\"example\", new()\n {\n DbInstanceId = exampleInstance.Id,\n AccountName = \"test_mysql\",\n AccountPassword = \"N1cetest\",\n });\n\n var exampleDatabase = new AliCloud.Rds.Database(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n Name = name,\n });\n\n var exampleAccountPrivilege = new AliCloud.Rds.AccountPrivilege(\"example\", new()\n {\n InstanceId = exampleInstance.Id,\n AccountName = exampleRdsAccount.AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase.Name,\n },\n });\n\n var exampleSubscriptionJob = new AliCloud.Dts.SubscriptionJob(\"example\", new()\n {\n DtsJobName = name,\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleInstance.Id,\n SourceEndpointDatabaseName = exampleDatabase.Name,\n SourceEndpointUserName = exampleRdsAccount.AccountName,\n SourceEndpointPassword = exampleRdsAccount.AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase.Name, exampleDatabase.Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n SubscriptionInstanceNetworkType = \"vpc\",\n SubscriptionInstanceVpcId = exampleNetwork.Id,\n SubscriptionInstanceVswitchId = exampleSwitch.Id,\n Status = \"Normal\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := rds.NewInstance(ctx, \"example\", \u0026rds.InstanceArgs{\n\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleRdsAccount, err := rds.NewRdsAccount(ctx, \"example\", \u0026rds.RdsAccountArgs{\n\t\t\tDbInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: pulumi.String(\"test_mysql\"),\n\t\t\tAccountPassword: pulumi.String(\"N1cetest\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDatabase, err := rds.NewDatabase(ctx, \"example\", \u0026rds.DatabaseArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rds.NewAccountPrivilege(ctx, \"example\", \u0026rds.AccountPrivilegeArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tAccountName: exampleRdsAccount.AccountName,\n\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\texampleDatabase.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSubscriptionJob(ctx, \"example\", \u0026dts.SubscriptionJobArgs{\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleInstance.ID(),\n\t\t\tSourceEndpointDatabaseName: exampleDatabase.Name,\n\t\t\tSourceEndpointUserName: exampleRdsAccount.AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount.AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase.Name, exampleDatabase.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSubscriptionInstanceNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSubscriptionInstanceVpcId: exampleNetwork.ID(),\n\t\t\tSubscriptionInstanceVswitchId: exampleSwitch.ID(),\n\t\t\tStatus: pulumi.String(\"Normal\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SubscriptionJob;\nimport com.pulumi.alicloud.dts.SubscriptionJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(name)\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n var exampleRdsAccount = new RdsAccount(\"exampleRdsAccount\", RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance.id())\n .accountName(\"test_mysql\")\n .accountPassword(\"N1cetest\")\n .build());\n\n var exampleDatabase = new Database(\"exampleDatabase\", DatabaseArgs.builder()\n .instanceId(exampleInstance.id())\n .name(name)\n .build());\n\n var exampleAccountPrivilege = new AccountPrivilege(\"exampleAccountPrivilege\", AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance.id())\n .accountName(exampleRdsAccount.accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase.name())\n .build());\n\n var exampleSubscriptionJob = new SubscriptionJob(\"exampleSubscriptionJob\", SubscriptionJobArgs.builder()\n .dtsJobName(name)\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleInstance.id())\n .sourceEndpointDatabaseName(exampleDatabase.name())\n .sourceEndpointUserName(exampleRdsAccount.accountName())\n .sourceEndpointPassword(exampleRdsAccount.accountPassword())\n .dbList(Output.tuple(exampleDatabase.name(), exampleDatabase.name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .subscriptionInstanceNetworkType(\"vpc\")\n .subscriptionInstanceVpcId(exampleNetwork.id())\n .subscriptionInstanceVswitchId(exampleSwitch.id())\n .status(\"Normal\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vpcId: ${exampleNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${exampleGetZones.zones[0].id}\n vswitchName: ${name}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:rds:Instance\n name: example\n properties:\n engine: MySQL\n engineVersion: '8.0'\n instanceType: ${exampleGetInstanceClasses.instanceClasses[0].instanceClass}\n instanceStorage: ${exampleGetInstanceClasses.instanceClasses[0].storageRange.min}\n instanceChargeType: Postpaid\n instanceName: ${name}\n vswitchId: ${exampleSwitch.id}\n monitoringPeriod: '60'\n dbInstanceStorageType: cloud_essd\n securityGroupIds:\n - ${exampleSecurityGroup.id}\n exampleRdsAccount:\n type: alicloud:rds:RdsAccount\n name: example\n properties:\n dbInstanceId: ${exampleInstance.id}\n accountName: test_mysql\n accountPassword: N1cetest\n exampleDatabase:\n type: alicloud:rds:Database\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n name: ${name}\n exampleAccountPrivilege:\n type: alicloud:rds:AccountPrivilege\n name: example\n properties:\n instanceId: ${exampleInstance.id}\n accountName: ${exampleRdsAccount.accountName}\n privilege: ReadWrite\n dbNames:\n - ${exampleDatabase.name}\n exampleSubscriptionJob:\n type: alicloud:dts:SubscriptionJob\n name: example\n properties:\n dtsJobName: ${name}\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${example.regions[0].id}\n sourceEndpointInstanceType: RDS\n sourceEndpointInstanceId: ${exampleInstance.id}\n sourceEndpointDatabaseName: ${exampleDatabase.name}\n sourceEndpointUserName: ${exampleRdsAccount.accountName}\n sourceEndpointPassword: ${exampleRdsAccount.accountPassword}\n dbList:\n fn::toJSON:\n ${exampleDatabase.name}:\n name: ${exampleDatabase.name}\n all: true\n subscriptionInstanceNetworkType: vpc\n subscriptionInstanceVpcId: ${exampleNetwork.id}\n subscriptionInstanceVswitchId: ${exampleSwitch.id}\n status: Normal\nvariables:\n example:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n exampleGetZones:\n fn::invoke:\n function: alicloud:rds:getZones\n arguments:\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n exampleGetInstanceClasses:\n fn::invoke:\n function: alicloud:rds:getInstanceClasses\n arguments:\n zoneId: ${exampleGetZones.zones[0].id}\n engine: MySQL\n engineVersion: '8.0'\n instanceChargeType: PostPaid\n category: Basic\n dbInstanceStorageType: cloud_essd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDTS Subscription Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/subscriptionJob:SubscriptionJob example \u003cid\u003e\n```\n\n",
"properties": {
"checkpoint": {
"type": "string",
@@ -147192,7 +149821,7 @@
}
},
"alicloud:dts/synchronizationInstance:SynchronizationInstance": {
- "description": "Provides a DTS Synchronization Instance resource.\n\nFor information about DTS Synchronization Instance and how to use it, see [What is Synchronization Instance](https://www.alibabacloud.com/help/en/doc-detail/130744.html).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultSynchronizationInstance = new alicloud.dts.SynchronizationInstance(\"default\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\ndefault_synchronization_instance = alicloud.dts.SynchronizationInstance(\"default\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=default.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=default.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultSynchronizationInstance = new AliCloud.Dts.SynchronizationInstance(\"default\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSynchronizationInstance(ctx, \"default\", \u0026dts.SynchronizationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.SynchronizationInstance;\nimport com.pulumi.alicloud.dts.SynchronizationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultSynchronizationInstance = new SynchronizationInstance(\"defaultSynchronizationInstance\", SynchronizationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(default_.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(default_.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultSynchronizationInstance:\n type: alicloud:dts:SynchronizationInstance\n name: default\n properties:\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${default.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationEndpointRegion: ${default.regions[0].id}\n instanceClass: small\n syncArchitecture: oneway\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nDTS Synchronization Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/synchronizationInstance:SynchronizationInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DTS Synchronization Instance resource.\n\nFor information about DTS Synchronization Instance and how to use it, see [What is Synchronization Instance](https://www.alibabacloud.com/help/en/doc-detail/130744.html).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultSynchronizationInstance = new alicloud.dts.SynchronizationInstance(\"default\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: _default.then(_default =\u003e _default.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_regions(current=True)\ndefault_synchronization_instance = alicloud.dts.SynchronizationInstance(\"default\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=default.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=default.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultSynchronizationInstance = new AliCloud.Dts.SynchronizationInstance(\"default\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSynchronizationInstance(ctx, \"default\", \u0026dts.SynchronizationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(_default.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.dts.SynchronizationInstance;\nimport com.pulumi.alicloud.dts.SynchronizationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultSynchronizationInstance = new SynchronizationInstance(\"defaultSynchronizationInstance\", SynchronizationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(default_.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(default_.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultSynchronizationInstance:\n type: alicloud:dts:SynchronizationInstance\n name: default\n properties:\n paymentType: PayAsYouGo\n sourceEndpointEngineName: MySQL\n sourceEndpointRegion: ${default.regions[0].id}\n destinationEndpointEngineName: MySQL\n destinationEndpointRegion: ${default.regions[0].id}\n instanceClass: small\n syncArchitecture: oneway\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nDTS Synchronization Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/synchronizationInstance:SynchronizationInstance example \u003cid\u003e\n```\n\n",
"properties": {
"autoPay": {
"type": "string",
@@ -147407,7 +150036,7 @@
}
},
"alicloud:dts/synchronizationJob:SynchronizationJob": {
- "description": "Provides a DTS Synchronization Job resource.\n\nFor information about DTS Synchronization Job and how to use it, see [What is Synchronization Job](https://www.alibabacloud.com/help/en/dts/developer-reference/api-configuredtsjob).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n securityGroupName: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: \"%s_%d\",\n args: [\n name,\n range.value + 1,\n ],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: \"%s_%d\",\n args: [\n name,\n range.value + 1,\n ],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleSynchronizationInstance = new alicloud.dts.SynchronizationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleSynchronizationJob = new alicloud.dts.SynchronizationJob(\"example\", {\n dtsInstanceId: exampleSynchronizationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n status: \"Synchronizing\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n security_group_name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=\"%s_%d\",\n args=[\n name,\n range[\"value\"] + 1,\n ]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=\"%s_%d\",\n args=[\n name,\n range[\"value\"] + 1,\n ]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_synchronization_instance = alicloud.dts.SynchronizationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_synchronization_job = alicloud.dts.SynchronizationJob(\"example\",\n dts_instance_id=example_synchronization_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True,\n status=\"Synchronizing\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n SecurityGroupName = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = \"%s_%d\",\n Args = new[]\n {\n name,\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = \"%s_%d\",\n Args = new[]\n {\n name,\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleSynchronizationInstance = new AliCloud.Dts.SynchronizationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleSynchronizationJob = new AliCloud.Dts.SynchronizationJob(\"example\", new()\n {\n DtsInstanceId = exampleSynchronizationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n Status = \"Synchronizing\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s_%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s_%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].AccountName,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleSynchronizationInstance, err := dts.NewSynchronizationInstance(ctx, \"example\", \u0026dts.SynchronizationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSynchronizationJob(ctx, \"example\", \u0026dts.SynchronizationJobArgs{\n\t\t\tDtsInstanceId: exampleSynchronizationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t\tStatus: pulumi.String(\"Synchronizing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SynchronizationInstance;\nimport com.pulumi.alicloud.dts.SynchronizationInstanceArgs;\nimport com.pulumi.alicloud.dts.SynchronizationJob;\nimport com.pulumi.alicloud.dts.SynchronizationJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s_%d\")\n .args( \n name,\n range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(\"%s_%d\")\n .args( \n name,\n range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleSynchronizationInstance = new SynchronizationInstance(\"exampleSynchronizationInstance\", SynchronizationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .dtsInstanceId(exampleSynchronizationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .status(\"Synchronizing\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Notice\n\n1. The expiration time cannot be changed after the work of the annual and monthly subscription suspended;\n2. After the pay-as-you-go type job suspended, your job configuration fee will still be charged;\n3. If the task suspended for more than 6 hours, the task will not start successfully.\n4. Suspending the task will only stop writing to the target library, but will still continue to obtain the incremental log of the source, so that the task can be quickly resumed after the suspension is canceled. Therefore, some resources of the source library, such as bandwidth resources, will continue to be occupied during the period.\n5. Charges will continue during the task suspension period. If you need to stop charging, please release the instance\n6. When a DTS instance suspended for more than 7 days, the instance cannot be resumed, and the status will change from suspended to failed.\n\n## Import\n\nDTS Synchronization Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/synchronizationJob:SynchronizationJob example \u003cid\u003e\n```\n\n",
+ "description": "Provides a DTS Synchronization Job resource.\n\nFor information about DTS Synchronization Job and how to use it, see [What is Synchronization Job](https://www.alibabacloud.com/help/en/dts/developer-reference/api-configuredtsjob).\n\n\u003e **NOTE:** Available since v1.138.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst example = alicloud.getRegions({\n current: true,\n});\nconst exampleGetZones = alicloud.rds.getZones({\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n});\nconst exampleGetInstanceClasses = exampleGetZones.then(exampleGetZones =\u003e alicloud.rds.getInstanceClasses({\n zoneId: exampleGetZones.zones?.[0]?.id,\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceChargeType: \"PostPaid\",\n category: \"Basic\",\n dbInstanceStorageType: \"cloud_essd\",\n}));\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vpcId: exampleNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: exampleGetZones.then(exampleGetZones =\u003e exampleGetZones.zones?.[0]?.id),\n vswitchName: name,\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n securityGroupName: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance: alicloud.rds.Instance[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleInstance.push(new alicloud.rds.Instance(`example-${range.value}`, {\n engine: \"MySQL\",\n engineVersion: \"8.0\",\n instanceType: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.instanceClass),\n instanceStorage: exampleGetInstanceClasses.then(exampleGetInstanceClasses =\u003e exampleGetInstanceClasses.instanceClasses?.[0]?.storageRange?.min),\n instanceChargeType: \"Postpaid\",\n instanceName: std.format({\n input: \"%s_%d\",\n args: [\n name,\n range.value + 1,\n ],\n }).then(invoke =\u003e invoke.result),\n vswitchId: exampleSwitch.id,\n monitoringPeriod: 60,\n dbInstanceStorageType: \"cloud_essd\",\n securityGroupIds: [exampleSecurityGroup.id],\n }));\n}\nconst exampleRdsAccount: alicloud.rds.RdsAccount[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleRdsAccount.push(new alicloud.rds.RdsAccount(`example-${range.value}`, {\n dbInstanceId: exampleInstance[range.value].id,\n accountName: std.format({\n input: \"example_name_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n accountPassword: std.format({\n input: \"example_password_%d\",\n args: [range.value + 1],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleDatabase: alicloud.rds.Database[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleDatabase.push(new alicloud.rds.Database(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n name: std.format({\n input: \"%s_%d\",\n args: [\n name,\n range.value + 1,\n ],\n }).then(invoke =\u003e invoke.result),\n }));\n}\nconst exampleAccountPrivilege: alicloud.rds.AccountPrivilege[] = [];\nfor (const range = {value: 0}; range.value \u003c 2; range.value++) {\n exampleAccountPrivilege.push(new alicloud.rds.AccountPrivilege(`example-${range.value}`, {\n instanceId: exampleInstance[range.value].id,\n accountName: exampleRdsAccount[range.value].accountName,\n privilege: \"ReadWrite\",\n dbNames: [exampleDatabase[range.value].name],\n }));\n}\nconst exampleSynchronizationInstance = new alicloud.dts.SynchronizationInstance(\"example\", {\n paymentType: \"PayAsYouGo\",\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n instanceClass: \"small\",\n syncArchitecture: \"oneway\",\n});\nconst exampleSynchronizationJob = new alicloud.dts.SynchronizationJob(\"example\", {\n dtsInstanceId: exampleSynchronizationInstance.id,\n dtsJobName: name,\n sourceEndpointInstanceType: \"RDS\",\n sourceEndpointInstanceId: exampleAccountPrivilege[0].instanceId,\n sourceEndpointEngineName: \"MySQL\",\n sourceEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n sourceEndpointUserName: exampleRdsAccount[0].accountName,\n sourceEndpointPassword: exampleRdsAccount[0].accountPassword,\n destinationEndpointInstanceType: \"RDS\",\n destinationEndpointInstanceId: exampleAccountPrivilege[1].instanceId,\n destinationEndpointEngineName: \"MySQL\",\n destinationEndpointRegion: example.then(example =\u003e example.regions?.[0]?.id),\n destinationEndpointUserName: exampleRdsAccount[1].accountName,\n destinationEndpointPassword: exampleRdsAccount[1].accountPassword,\n dbList: pulumi.jsonStringify(pulumi.all([exampleDatabase[0].name, exampleDatabase[1].name]).apply(([exampleDatabaseName, exampleDatabaseName1]) =\u003e {\n [exampleDatabaseName]: {\n name: exampleDatabaseName1,\n all: true,\n },\n })),\n structureInitialization: true,\n dataInitialization: true,\n dataSynchronization: true,\n status: \"Synchronizing\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nexample = alicloud.get_regions(current=True)\nexample_get_zones = alicloud.rds.get_zones(engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_get_instance_classes = alicloud.rds.get_instance_classes(zone_id=example_get_zones.zones[0].id,\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_charge_type=\"PostPaid\",\n category=\"Basic\",\n db_instance_storage_type=\"cloud_essd\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vpc_id=example_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=example_get_zones.zones[0].id,\n vswitch_name=name)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n security_group_name=name,\n vpc_id=example_network.id)\nexample_instance = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_instance.append(alicloud.rds.Instance(f\"example-{range['value']}\",\n engine=\"MySQL\",\n engine_version=\"8.0\",\n instance_type=example_get_instance_classes.instance_classes[0].instance_class,\n instance_storage=example_get_instance_classes.instance_classes[0].storage_range.min,\n instance_charge_type=\"Postpaid\",\n instance_name=std.format(input=\"%s_%d\",\n args=[\n name,\n range[\"value\"] + 1,\n ]).result,\n vswitch_id=example_switch.id,\n monitoring_period=60,\n db_instance_storage_type=\"cloud_essd\",\n security_group_ids=[example_security_group.id]))\nexample_rds_account = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_rds_account.append(alicloud.rds.RdsAccount(f\"example-{range['value']}\",\n db_instance_id=example_instance[range[\"value\"]].id,\n account_name=std.format(input=\"example_name_%d\",\n args=[range[\"value\"] + 1]).result,\n account_password=std.format(input=\"example_password_%d\",\n args=[range[\"value\"] + 1]).result))\nexample_database = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_database.append(alicloud.rds.Database(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n name=std.format(input=\"%s_%d\",\n args=[\n name,\n range[\"value\"] + 1,\n ]).result))\nexample_account_privilege = []\nfor range in [{\"value\": i} for i in range(0, 2)]:\n example_account_privilege.append(alicloud.rds.AccountPrivilege(f\"example-{range['value']}\",\n instance_id=example_instance[range[\"value\"]].id,\n account_name=example_rds_account[range[\"value\"]].account_name,\n privilege=\"ReadWrite\",\n db_names=[example_database[range[\"value\"]].name]))\nexample_synchronization_instance = alicloud.dts.SynchronizationInstance(\"example\",\n payment_type=\"PayAsYouGo\",\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n instance_class=\"small\",\n sync_architecture=\"oneway\")\nexample_synchronization_job = alicloud.dts.SynchronizationJob(\"example\",\n dts_instance_id=example_synchronization_instance.id,\n dts_job_name=name,\n source_endpoint_instance_type=\"RDS\",\n source_endpoint_instance_id=example_account_privilege[0].instance_id,\n source_endpoint_engine_name=\"MySQL\",\n source_endpoint_region=example.regions[0].id,\n source_endpoint_user_name=example_rds_account[0].account_name,\n source_endpoint_password=example_rds_account[0].account_password,\n destination_endpoint_instance_type=\"RDS\",\n destination_endpoint_instance_id=example_account_privilege[1].instance_id,\n destination_endpoint_engine_name=\"MySQL\",\n destination_endpoint_region=example.regions[0].id,\n destination_endpoint_user_name=example_rds_account[1].account_name,\n destination_endpoint_password=example_rds_account[1].account_password,\n db_list=pulumi.Output.json_dumps(pulumi.Output.all(\n exampleDatabaseName=example_database[0].name,\n exampleDatabaseName1=example_database[1].name\n).apply(lambda resolved_outputs: {\n resolved_outputs['exampleDatabaseName']: {\n \"name\": resolved_outputs['exampleDatabaseName1'],\n \"all\": True,\n },\n })\n),\n structure_initialization=True,\n data_initialization=True,\n data_synchronization=True,\n status=\"Synchronizing\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var example = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var exampleGetZones = AliCloud.Rds.GetZones.Invoke(new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleGetInstanceClasses = AliCloud.Rds.GetInstanceClasses.Invoke(new()\n {\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceChargeType = \"PostPaid\",\n Category = \"Basic\",\n DbInstanceStorageType = \"cloud_essd\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VpcId = exampleNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = exampleGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n VswitchName = name,\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n SecurityGroupName = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new List\u003cAliCloud.Rds.Instance\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleInstance.Add(new AliCloud.Rds.Instance($\"example-{range.Value}\", new()\n {\n Engine = \"MySQL\",\n EngineVersion = \"8.0\",\n InstanceType = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),\n InstanceStorage = exampleGetInstanceClasses.Apply(getInstanceClassesResult =\u003e getInstanceClassesResult.InstanceClasses[0]?.StorageRange?.Min),\n InstanceChargeType = \"Postpaid\",\n InstanceName = Std.Format.Invoke(new()\n {\n Input = \"%s_%d\",\n Args = new[]\n {\n name,\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n VswitchId = exampleSwitch.Id,\n MonitoringPeriod = 60,\n DbInstanceStorageType = \"cloud_essd\",\n SecurityGroupIds = new[]\n {\n exampleSecurityGroup.Id,\n },\n }));\n }\n var exampleRdsAccount = new List\u003cAliCloud.Rds.RdsAccount\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleRdsAccount.Add(new AliCloud.Rds.RdsAccount($\"example-{range.Value}\", new()\n {\n DbInstanceId = exampleInstance[range.Value].Id,\n AccountName = Std.Format.Invoke(new()\n {\n Input = \"example_name_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n AccountPassword = Std.Format.Invoke(new()\n {\n Input = \"example_password_%d\",\n Args = new[]\n {\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleDatabase = new List\u003cAliCloud.Rds.Database\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleDatabase.Add(new AliCloud.Rds.Database($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n Name = Std.Format.Invoke(new()\n {\n Input = \"%s_%d\",\n Args = new[]\n {\n name,\n range.Value + 1,\n },\n }).Apply(invoke =\u003e invoke.Result),\n }));\n }\n var exampleAccountPrivilege = new List\u003cAliCloud.Rds.AccountPrivilege\u003e();\n for (var rangeIndex = 0; rangeIndex \u003c 2; rangeIndex++)\n {\n var range = new { Value = rangeIndex };\n exampleAccountPrivilege.Add(new AliCloud.Rds.AccountPrivilege($\"example-{range.Value}\", new()\n {\n InstanceId = exampleInstance[range.Value].Id,\n AccountName = exampleRdsAccount[range.Value].AccountName,\n Privilege = \"ReadWrite\",\n DbNames = new[]\n {\n exampleDatabase[range.Value].Name,\n },\n }));\n }\n var exampleSynchronizationInstance = new AliCloud.Dts.SynchronizationInstance(\"example\", new()\n {\n PaymentType = \"PayAsYouGo\",\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n InstanceClass = \"small\",\n SyncArchitecture = \"oneway\",\n });\n\n var exampleSynchronizationJob = new AliCloud.Dts.SynchronizationJob(\"example\", new()\n {\n DtsInstanceId = exampleSynchronizationInstance.Id,\n DtsJobName = name,\n SourceEndpointInstanceType = \"RDS\",\n SourceEndpointInstanceId = exampleAccountPrivilege[0].InstanceId,\n SourceEndpointEngineName = \"MySQL\",\n SourceEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n SourceEndpointUserName = exampleRdsAccount[0].AccountName,\n SourceEndpointPassword = exampleRdsAccount[0].AccountPassword,\n DestinationEndpointInstanceType = \"RDS\",\n DestinationEndpointInstanceId = exampleAccountPrivilege[1].InstanceId,\n DestinationEndpointEngineName = \"MySQL\",\n DestinationEndpointRegion = example.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n DestinationEndpointUserName = exampleRdsAccount[1].AccountName,\n DestinationEndpointPassword = exampleRdsAccount[1].AccountPassword,\n DbList = Output.JsonSerialize(Output.Create(Output.Tuple(exampleDatabase[0].Name, exampleDatabase[1].Name).Apply(values =\u003e\n {\n var exampleDatabaseName = values.Item1;\n var exampleDatabaseName1 = values.Item2;\n return \n {\n { exampleDatabaseName, \n {\n { \"name\", exampleDatabaseName1 },\n { \"all\", true },\n } },\n };\n }))),\n StructureInitialization = true,\n DataInitialization = true,\n DataSynchronization = true,\n Status = \"Synchronizing\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetZones, err := rds.GetZones(ctx, \u0026rds.GetZonesArgs{\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, \u0026rds.GetInstanceClassesArgs{\n\t\t\tZoneId: pulumi.StringRef(exampleGetZones.Zones[0].Id),\n\t\t\tEngine: pulumi.StringRef(\"MySQL\"),\n\t\t\tEngineVersion: pulumi.StringRef(\"8.0\"),\n\t\t\tInstanceChargeType: pulumi.StringRef(\"PostPaid\"),\n\t\t\tCategory: pulumi.StringRef(\"Basic\"),\n\t\t\tDbInstanceStorageType: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(exampleGetZones.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s_%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleInstance []*rds.Instance\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\t_ := index\n\t\t\t__res, err := rds.NewInstance(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.InstanceArgs{\n\t\t\t\tEngine: pulumi.String(\"MySQL\"),\n\t\t\t\tEngineVersion: pulumi.String(\"8.0\"),\n\t\t\t\tInstanceType: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),\n\t\t\t\tInstanceStorage: pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),\n\t\t\t\tInstanceChargeType: pulumi.String(\"Postpaid\"),\n\t\t\t\tInstanceName: pulumi.String(invokeFormat.Result),\n\t\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\t\tMonitoringPeriod: pulumi.Int(60),\n\t\t\t\tDbInstanceStorageType: pulumi.String(\"cloud_essd\"),\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleInstance = append(exampleInstance, __res)\n\t\t}\n\t\tinvokeFormat1, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_name_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat2, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"example_password_%d\",\n\t\t\tArgs: []float64{\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleRdsAccount []*rds.RdsAccount\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewRdsAccount(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.RdsAccountArgs{\n\t\t\t\tDbInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: pulumi.String(invokeFormat1.Result),\n\t\t\t\tAccountPassword: pulumi.String(invokeFormat2.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleRdsAccount = append(exampleRdsAccount, __res)\n\t\t}\n\t\tinvokeFormat3, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s_%d\",\n\t\t\tArgs: []interface{}{\n\t\t\t\tname,\n\t\t\t\tval0 + 1,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvar exampleDatabase []*rds.Database\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewDatabase(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.DatabaseArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tName: pulumi.String(invokeFormat3.Result),\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleDatabase = append(exampleDatabase, __res)\n\t\t}\n\t\tvar exampleAccountPrivilege []*rds.AccountPrivilege\n\t\tfor index := 0; index \u003c 2; index++ {\n\t\t\tkey0 := index\n\t\t\tval0 := index\n\t\t\t__res, err := rds.NewAccountPrivilege(ctx, fmt.Sprintf(\"example-%v\", key0), \u0026rds.AccountPrivilegeArgs{\n\t\t\t\tInstanceId: exampleInstance[val0].ID(),\n\t\t\t\tAccountName: exampleRdsAccount[val0].AccountName,\n\t\t\t\tPrivilege: pulumi.String(\"ReadWrite\"),\n\t\t\t\tDbNames: pulumi.StringArray{\n\t\t\t\t\texampleDatabase[val0].Name,\n\t\t\t\t},\n\t\t\t})\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\texampleAccountPrivilege = append(exampleAccountPrivilege, __res)\n\t\t}\n\t\texampleSynchronizationInstance, err := dts.NewSynchronizationInstance(ctx, \"example\", \u0026dts.SynchronizationInstanceArgs{\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tInstanceClass: pulumi.String(\"small\"),\n\t\t\tSyncArchitecture: pulumi.String(\"oneway\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = dts.NewSynchronizationJob(ctx, \"example\", \u0026dts.SynchronizationJobArgs{\n\t\t\tDtsInstanceId: exampleSynchronizationInstance.ID(),\n\t\t\tDtsJobName: pulumi.String(name),\n\t\t\tSourceEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tSourceEndpointInstanceId: exampleAccountPrivilege[0].InstanceId,\n\t\t\tSourceEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tSourceEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tSourceEndpointUserName: exampleRdsAccount[0].AccountName,\n\t\t\tSourceEndpointPassword: exampleRdsAccount[0].AccountPassword,\n\t\t\tDestinationEndpointInstanceType: pulumi.String(\"RDS\"),\n\t\t\tDestinationEndpointInstanceId: exampleAccountPrivilege[1].InstanceId,\n\t\t\tDestinationEndpointEngineName: pulumi.String(\"MySQL\"),\n\t\t\tDestinationEndpointRegion: pulumi.String(example.Regions[0].Id),\n\t\t\tDestinationEndpointUserName: exampleRdsAccount[1].AccountName,\n\t\t\tDestinationEndpointPassword: exampleRdsAccount[1].AccountPassword,\n\t\t\tDbList: pulumi.All(exampleDatabase[0].Name, exampleDatabase[1].Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\texampleDatabaseName := _args[0].(string)\n\t\t\t\texampleDatabaseName1 := _args[1].(string)\n\t\t\t\tvar _zero string\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]map[string]interface{}{\n\t\t\t\t\texampleDatabaseName: map[string]interface{}{\n\t\t\t\t\t\t\"name\": exampleDatabaseName1,\n\t\t\t\t\t\t\"all\": true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn json0, nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tStructureInitialization: pulumi.Bool(true),\n\t\t\tDataInitialization: pulumi.Bool(true),\n\t\t\tDataSynchronization: pulumi.Bool(true),\n\t\t\tStatus: pulumi.String(\"Synchronizing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.rds.RdsFunctions;\nimport com.pulumi.alicloud.rds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.rds.Instance;\nimport com.pulumi.alicloud.rds.InstanceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.rds.RdsAccount;\nimport com.pulumi.alicloud.rds.RdsAccountArgs;\nimport com.pulumi.alicloud.rds.Database;\nimport com.pulumi.alicloud.rds.DatabaseArgs;\nimport com.pulumi.alicloud.rds.AccountPrivilege;\nimport com.pulumi.alicloud.rds.AccountPrivilegeArgs;\nimport com.pulumi.alicloud.dts.SynchronizationInstance;\nimport com.pulumi.alicloud.dts.SynchronizationInstanceArgs;\nimport com.pulumi.alicloud.dts.SynchronizationJob;\nimport com.pulumi.alicloud.dts.SynchronizationJobArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport com.pulumi.codegen.internal.KeyedValue;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var example = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var exampleGetZones = RdsFunctions.getZones(GetZonesArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n final var exampleGetInstanceClasses = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()\n .zoneId(exampleGetZones.zones()[0].id())\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceChargeType(\"PostPaid\")\n .category(\"Basic\")\n .dbInstanceStorageType(\"cloud_essd\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vpcId(exampleNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(exampleGetZones.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n for (var i = 0; i \u003c 2; i++) {\n new Instance(\"exampleInstance-\" + i, InstanceArgs.builder()\n .engine(\"MySQL\")\n .engineVersion(\"8.0\")\n .instanceType(exampleGetInstanceClasses.instanceClasses()[0].instanceClass())\n .instanceStorage(exampleGetInstanceClasses.instanceClasses()[0].storageRange().min())\n .instanceChargeType(\"Postpaid\")\n .instanceName(StdFunctions.format(FormatArgs.builder()\n .input(\"%s_%d\")\n .args( \n name,\n range.value() + 1)\n .build()).result())\n .vswitchId(exampleSwitch.id())\n .monitoringPeriod(60)\n .dbInstanceStorageType(\"cloud_essd\")\n .securityGroupIds(exampleSecurityGroup.id())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new RdsAccount(\"exampleRdsAccount-\" + i, RdsAccountArgs.builder()\n .dbInstanceId(exampleInstance[range.value()].id())\n .accountName(StdFunctions.format(FormatArgs.builder()\n .input(\"example_name_%d\")\n .args(range.value() + 1)\n .build()).result())\n .accountPassword(StdFunctions.format(FormatArgs.builder()\n .input(\"example_password_%d\")\n .args(range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new Database(\"exampleDatabase-\" + i, DatabaseArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .name(StdFunctions.format(FormatArgs.builder()\n .input(\"%s_%d\")\n .args( \n name,\n range.value() + 1)\n .build()).result())\n .build());\n\n \n}\n for (var i = 0; i \u003c 2; i++) {\n new AccountPrivilege(\"exampleAccountPrivilege-\" + i, AccountPrivilegeArgs.builder()\n .instanceId(exampleInstance[range.value()].id())\n .accountName(exampleRdsAccount[range.value()].accountName())\n .privilege(\"ReadWrite\")\n .dbNames(exampleDatabase[range.value()].name())\n .build());\n\n \n}\n var exampleSynchronizationInstance = new SynchronizationInstance(\"exampleSynchronizationInstance\", SynchronizationInstanceArgs.builder()\n .paymentType(\"PayAsYouGo\")\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .instanceClass(\"small\")\n .syncArchitecture(\"oneway\")\n .build());\n\n var exampleSynchronizationJob = new SynchronizationJob(\"exampleSynchronizationJob\", SynchronizationJobArgs.builder()\n .dtsInstanceId(exampleSynchronizationInstance.id())\n .dtsJobName(name)\n .sourceEndpointInstanceType(\"RDS\")\n .sourceEndpointInstanceId(exampleAccountPrivilege[0].instanceId())\n .sourceEndpointEngineName(\"MySQL\")\n .sourceEndpointRegion(example.regions()[0].id())\n .sourceEndpointUserName(exampleRdsAccount[0].accountName())\n .sourceEndpointPassword(exampleRdsAccount[0].accountPassword())\n .destinationEndpointInstanceType(\"RDS\")\n .destinationEndpointInstanceId(exampleAccountPrivilege[1].instanceId())\n .destinationEndpointEngineName(\"MySQL\")\n .destinationEndpointRegion(example.regions()[0].id())\n .destinationEndpointUserName(exampleRdsAccount[1].accountName())\n .destinationEndpointPassword(exampleRdsAccount[1].accountPassword())\n .dbList(Output.tuple(exampleDatabase[0].name(), exampleDatabase[1].name()).applyValue(values -\u003e {\n var exampleDatabaseName = values.t1;\n var exampleDatabaseName1 = values.t2;\n return serializeJson(\n jsonObject(\n jsonProperty(exampleDatabaseName, jsonObject(\n jsonProperty(\"name\", exampleDatabaseName1),\n jsonProperty(\"all\", true)\n ))\n ));\n }))\n .structureInitialization(true)\n .dataInitialization(true)\n .dataSynchronization(true)\n .status(\"Synchronizing\")\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Notice\n\n1. The expiration time cannot be changed after the work of the annual and monthly subscription suspended;\n2. After the pay-as-you-go type job suspended, your job configuration fee will still be charged;\n3. If the task suspended for more than 6 hours, the task will not start successfully.\n4. Suspending the task will only stop writing to the target library, but will still continue to obtain the incremental log of the source, so that the task can be quickly resumed after the suspension is canceled. Therefore, some resources of the source library, such as bandwidth resources, will continue to be occupied during the period.\n5. Charges will continue during the task suspension period. If you need to stop charging, please release the instance\n6. When a DTS instance suspended for more than 7 days, the instance cannot be resumed, and the status will change from suspended to failed.\n\n## Import\n\nDTS Synchronization Job can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:dts/synchronizationJob:SynchronizationJob example \u003cid\u003e\n```\n\n",
"properties": {
"checkpoint": {
"type": "string",
@@ -148376,7 +151005,7 @@
}
},
"alicloud:ebs/dedicatedBlockStorageCluster:DedicatedBlockStorageCluster": {
- "description": "Provides a Ebs Dedicated Block Storage Cluster resource.\n\nFor information about Ebs Dedicated Block Storage Cluster and how to use it, see [What is Dedicated Block Storage Cluster](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ebs-2021-07-30-creatededicatedblockstoragecluster).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ebs.DedicatedBlockStorageCluster(\"default\", {\n type: \"Premium\",\n zoneId: \"cn-heyuan-b\",\n dedicatedBlockStorageClusterName: \"dedicated_block_storage_cluster_name\",\n totalCapacity: \"61440\",\n regionId: \"cn-heyuan\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ebs.DedicatedBlockStorageCluster(\"default\",\n type=\"Premium\",\n zone_id=\"cn-heyuan-b\",\n dedicated_block_storage_cluster_name=\"dedicated_block_storage_cluster_name\",\n total_capacity=\"61440\",\n region_id=\"cn-heyuan\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ebs.DedicatedBlockStorageCluster(\"default\", new()\n {\n Type = \"Premium\",\n ZoneId = \"cn-heyuan-b\",\n DedicatedBlockStorageClusterName = \"dedicated_block_storage_cluster_name\",\n TotalCapacity = \"61440\",\n RegionId = \"cn-heyuan\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ebs.NewDedicatedBlockStorageCluster(ctx, \"default\", \u0026ebs.DedicatedBlockStorageClusterArgs{\n\t\t\tType: pulumi.String(\"Premium\"),\n\t\t\tZoneId: pulumi.String(\"cn-heyuan-b\"),\n\t\t\tDedicatedBlockStorageClusterName: pulumi.String(\"dedicated_block_storage_cluster_name\"),\n\t\t\tTotalCapacity: pulumi.String(\"61440\"),\n\t\t\tRegionId: \"cn-heyuan\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.DedicatedBlockStorageCluster;\nimport com.pulumi.alicloud.ebs.DedicatedBlockStorageClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DedicatedBlockStorageCluster(\"default\", DedicatedBlockStorageClusterArgs.builder()\n .type(\"Premium\")\n .zoneId(\"cn-heyuan-b\")\n .dedicatedBlockStorageClusterName(\"dedicated_block_storage_cluster_name\")\n .totalCapacity(\"61440\")\n .regionId(\"cn-heyuan\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ebs:DedicatedBlockStorageCluster\n properties:\n type: Premium\n zoneId: cn-heyuan-b\n dedicatedBlockStorageClusterName: dedicated_block_storage_cluster_name\n totalCapacity: 61440\n regionId: cn-heyuan\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEbs Dedicated Block Storage Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/dedicatedBlockStorageCluster:DedicatedBlockStorageCluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Ebs Dedicated Block Storage Cluster resource.\n\nFor information about Ebs Dedicated Block Storage Cluster and how to use it, see [What is Dedicated Block Storage Cluster](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ebs-2021-07-30-creatededicatedblockstoragecluster).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ebs.DedicatedBlockStorageCluster(\"default\", {\n type: \"Premium\",\n zoneId: \"cn-heyuan-b\",\n dedicatedBlockStorageClusterName: \"dedicated_block_storage_cluster_name\",\n totalCapacity: \"61440\",\n regionId: \"cn-heyuan\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ebs.DedicatedBlockStorageCluster(\"default\",\n type=\"Premium\",\n zone_id=\"cn-heyuan-b\",\n dedicated_block_storage_cluster_name=\"dedicated_block_storage_cluster_name\",\n total_capacity=\"61440\",\n region_id=\"cn-heyuan\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ebs.DedicatedBlockStorageCluster(\"default\", new()\n {\n Type = \"Premium\",\n ZoneId = \"cn-heyuan-b\",\n DedicatedBlockStorageClusterName = \"dedicated_block_storage_cluster_name\",\n TotalCapacity = \"61440\",\n RegionId = \"cn-heyuan\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ebs.NewDedicatedBlockStorageCluster(ctx, \"default\", \u0026ebs.DedicatedBlockStorageClusterArgs{\n\t\t\tType: pulumi.String(\"Premium\"),\n\t\t\tZoneId: pulumi.String(\"cn-heyuan-b\"),\n\t\t\tDedicatedBlockStorageClusterName: pulumi.String(\"dedicated_block_storage_cluster_name\"),\n\t\t\tTotalCapacity: pulumi.String(\"61440\"),\n\t\t\tRegionId: \"cn-heyuan\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.DedicatedBlockStorageCluster;\nimport com.pulumi.alicloud.ebs.DedicatedBlockStorageClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new DedicatedBlockStorageCluster(\"default\", DedicatedBlockStorageClusterArgs.builder()\n .type(\"Premium\")\n .zoneId(\"cn-heyuan-b\")\n .dedicatedBlockStorageClusterName(\"dedicated_block_storage_cluster_name\")\n .totalCapacity(\"61440\")\n .regionId(\"cn-heyuan\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ebs:DedicatedBlockStorageCluster\n properties:\n type: Premium\n zoneId: cn-heyuan-b\n dedicatedBlockStorageClusterName: dedicated_block_storage_cluster_name\n totalCapacity: 61440\n regionId: cn-heyuan\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEbs Dedicated Block Storage Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/dedicatedBlockStorageCluster:DedicatedBlockStorageCluster example \u003cid\u003e\n```\n\n",
"properties": {
"availableCapacity": {
"type": "string",
@@ -148568,7 +151197,7 @@
}
},
"alicloud:ebs/diskReplicaGroup:DiskReplicaGroup": {
- "description": "Provides a Elastic Block Storage(EBS) Disk Replica Group resource.\n\nconsistent replica group.\n\nFor information about Elastic Block Storage(EBS) Disk Replica Group and how to use it, see [What is Disk Replica Group](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/creatediskreplicagroup).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetRegions = _default.then(_default =\u003e alicloud.ebs.getRegions({\n regionId: _default.regions?.[0]?.id,\n}));\nconst defaultDiskReplicaGroup = new alicloud.ebs.DiskReplicaGroup(\"default\", {\n sourceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n sourceZoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[0]?.zoneId),\n destinationRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationZoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[1]?.zoneId),\n groupName: name,\n description: name,\n rpo: 900,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_regions = alicloud.ebs.get_regions(region_id=default.regions[0].id)\ndefault_disk_replica_group = alicloud.ebs.DiskReplicaGroup(\"default\",\n source_region_id=default.regions[0].id,\n source_zone_id=default_get_regions.regions[0].zones[0].zone_id,\n destination_region_id=default.regions[0].id,\n destination_zone_id=default_get_regions.regions[0].zones[1].zone_id,\n group_name=name,\n description=name,\n rpo=900)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetRegions = AliCloud.Ebs.GetRegions.Invoke(new()\n {\n RegionId = @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n var defaultDiskReplicaGroup = new AliCloud.Ebs.DiskReplicaGroup(\"default\", new()\n {\n SourceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n SourceZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[0]?.ZoneId),\n DestinationRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[1]?.ZoneId),\n GroupName = name,\n Description = name,\n Rpo = 900,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := ebs.GetRegions(ctx, \u0026ebs.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(_default.Regions[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewDiskReplicaGroup(ctx, \"default\", \u0026ebs.DiskReplicaGroupArgs{\n\t\t\tSourceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tSourceZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[0].ZoneId),\n\t\t\tDestinationRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[1].ZoneId),\n\t\t\tGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRpo: pulumi.Int(900),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ebs.EbsFunctions;\nimport com.pulumi.alicloud.ebs.DiskReplicaGroup;\nimport com.pulumi.alicloud.ebs.DiskReplicaGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetRegions = EbsFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(default_.regions()[0].id())\n .build());\n\n var defaultDiskReplicaGroup = new DiskReplicaGroup(\"defaultDiskReplicaGroup\", DiskReplicaGroupArgs.builder()\n .sourceRegionId(default_.regions()[0].id())\n .sourceZoneId(defaultGetRegions.regions()[0].zones()[0].zoneId())\n .destinationRegionId(default_.regions()[0].id())\n .destinationZoneId(defaultGetRegions.regions()[0].zones()[1].zoneId())\n .groupName(name)\n .description(name)\n .rpo(900)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultDiskReplicaGroup:\n type: alicloud:ebs:DiskReplicaGroup\n name: default\n properties:\n sourceRegionId: ${default.regions[0].id}\n sourceZoneId: ${defaultGetRegions.regions[0].zones[0].zoneId}\n destinationRegionId: ${default.regions[0].id}\n destinationZoneId: ${defaultGetRegions.regions[0].zones[1].zoneId}\n groupName: ${name}\n description: ${name}\n rpo: 900\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetRegions:\n fn::invoke:\n function: alicloud:ebs:getRegions\n arguments:\n regionId: ${default.regions[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nElastic Block Storage(EBS) Disk Replica Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/diskReplicaGroup:DiskReplicaGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Elastic Block Storage(EBS) Disk Replica Group resource.\n\nconsistent replica group.\n\nFor information about Elastic Block Storage(EBS) Disk Replica Group and how to use it, see [What is Disk Replica Group](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/creatediskreplicagroup).\n\n\u003e **NOTE:** Available since v1.187.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetRegions = _default.then(_default =\u003e alicloud.ebs.getRegions({\n regionId: _default.regions?.[0]?.id,\n}));\nconst defaultDiskReplicaGroup = new alicloud.ebs.DiskReplicaGroup(\"default\", {\n sourceRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n sourceZoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[0]?.zoneId),\n destinationRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n destinationZoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[1]?.zoneId),\n groupName: name,\n description: name,\n rpo: 900,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_regions = alicloud.ebs.get_regions(region_id=default.regions[0].id)\ndefault_disk_replica_group = alicloud.ebs.DiskReplicaGroup(\"default\",\n source_region_id=default.regions[0].id,\n source_zone_id=default_get_regions.regions[0].zones[0].zone_id,\n destination_region_id=default.regions[0].id,\n destination_zone_id=default_get_regions.regions[0].zones[1].zone_id,\n group_name=name,\n description=name,\n rpo=900)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetRegions = AliCloud.Ebs.GetRegions.Invoke(new()\n {\n RegionId = @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n var defaultDiskReplicaGroup = new AliCloud.Ebs.DiskReplicaGroup(\"default\", new()\n {\n SourceRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n SourceZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[0]?.ZoneId),\n DestinationRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n DestinationZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[1]?.ZoneId),\n GroupName = name,\n Description = name,\n Rpo = 900,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := ebs.GetRegions(ctx, \u0026ebs.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(_default.Regions[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewDiskReplicaGroup(ctx, \"default\", \u0026ebs.DiskReplicaGroupArgs{\n\t\t\tSourceRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tSourceZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[0].ZoneId),\n\t\t\tDestinationRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tDestinationZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[1].ZoneId),\n\t\t\tGroupName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tRpo: pulumi.Int(900),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ebs.EbsFunctions;\nimport com.pulumi.alicloud.ebs.DiskReplicaGroup;\nimport com.pulumi.alicloud.ebs.DiskReplicaGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetRegions = EbsFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(default_.regions()[0].id())\n .build());\n\n var defaultDiskReplicaGroup = new DiskReplicaGroup(\"defaultDiskReplicaGroup\", DiskReplicaGroupArgs.builder()\n .sourceRegionId(default_.regions()[0].id())\n .sourceZoneId(defaultGetRegions.regions()[0].zones()[0].zoneId())\n .destinationRegionId(default_.regions()[0].id())\n .destinationZoneId(defaultGetRegions.regions()[0].zones()[1].zoneId())\n .groupName(name)\n .description(name)\n .rpo(900)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultDiskReplicaGroup:\n type: alicloud:ebs:DiskReplicaGroup\n name: default\n properties:\n sourceRegionId: ${default.regions[0].id}\n sourceZoneId: ${defaultGetRegions.regions[0].zones[0].zoneId}\n destinationRegionId: ${default.regions[0].id}\n destinationZoneId: ${defaultGetRegions.regions[0].zones[1].zoneId}\n groupName: ${name}\n description: ${name}\n rpo: 900\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetRegions:\n fn::invoke:\n function: alicloud:ebs:getRegions\n arguments:\n regionId: ${default.regions[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nElastic Block Storage(EBS) Disk Replica Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/diskReplicaGroup:DiskReplicaGroup example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -148796,7 +151425,7 @@
}
},
"alicloud:ebs/diskReplicaPair:DiskReplicaPair": {
- "description": "Provides a Elastic Block Storage(EBS) Disk Replica Pair resource.\n\n\n\nFor information about Elastic Block Storage(EBS) Disk Replica Pair and how to use it, see [What is Disk Replica Pair](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ebs-2021-07-30-creatediskreplicapair).\n\n\u003e **NOTE:** Available since v1.196.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetRegions = _default.then(_default =\u003e alicloud.ebs.getRegions({\n regionId: _default.regions?.[0]?.id,\n}));\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[0]?.zoneId),\n category: \"cloud_essd\",\n deleteAutoSnapshot: true,\n deleteWithInstance: true,\n description: name,\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n For: \"example\",\n controlledBy: \"ear\",\n },\n});\nconst destination = new alicloud.ecs.EcsDisk(\"destination\", {\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[1]?.zoneId),\n category: \"cloud_essd\",\n deleteAutoSnapshot: true,\n deleteWithInstance: true,\n description: std.format({\n input: \"%s-destination\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n For: \"example\",\n controlledBy: \"ear\",\n },\n});\nconst defaultDiskReplicaPair = new alicloud.ebs.DiskReplicaPair(\"default\", {\n destinationDiskId: destination.id,\n destinationRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n paymentType: \"POSTPAY\",\n destinationZoneId: destination.zoneId,\n sourceZoneId: defaultEcsDisk.zoneId,\n diskId: defaultEcsDisk.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_regions = alicloud.ebs.get_regions(region_id=default.regions[0].id)\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=default_get_regions.regions[0].zones[0].zone_id,\n category=\"cloud_essd\",\n delete_auto_snapshot=True,\n delete_with_instance=True,\n description=name,\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n \"controlledBy\": \"ear\",\n })\ndestination = alicloud.ecs.EcsDisk(\"destination\",\n zone_id=default_get_regions.regions[0].zones[1].zone_id,\n category=\"cloud_essd\",\n delete_auto_snapshot=True,\n delete_with_instance=True,\n description=std.format(input=\"%s-destination\",\n args=[name]).result,\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n \"controlledBy\": \"ear\",\n })\ndefault_disk_replica_pair = alicloud.ebs.DiskReplicaPair(\"default\",\n destination_disk_id=destination.id,\n destination_region_id=default.regions[0].id,\n payment_type=\"POSTPAY\",\n destination_zone_id=destination.zone_id,\n source_zone_id=default_ecs_disk.zone_id,\n disk_id=default_ecs_disk.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetRegions = AliCloud.Ebs.GetRegions.Invoke(new()\n {\n RegionId = @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[0]?.ZoneId),\n Category = \"cloud_essd\",\n DeleteAutoSnapshot = true,\n DeleteWithInstance = true,\n Description = name,\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n { \"controlledBy\", \"ear\" },\n },\n });\n\n var destination = new AliCloud.Ecs.EcsDisk(\"destination\", new()\n {\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[1]?.ZoneId),\n Category = \"cloud_essd\",\n DeleteAutoSnapshot = true,\n DeleteWithInstance = true,\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s-destination\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n { \"controlledBy\", \"ear\" },\n },\n });\n\n var defaultDiskReplicaPair = new AliCloud.Ebs.DiskReplicaPair(\"default\", new()\n {\n DestinationDiskId = destination.Id,\n DestinationRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n PaymentType = \"POSTPAY\",\n DestinationZoneId = destination.ZoneId,\n SourceZoneId = defaultEcsDisk.ZoneId,\n DiskId = defaultEcsDisk.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := ebs.GetRegions(ctx, \u0026ebs.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(_default.Regions[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[0].ZoneId),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t\t\"controlledBy\": pulumi.String(\"ear\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-destination\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdestination, err := ecs.NewEcsDisk(ctx, \"destination\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[1].ZoneId),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(invokeFormat.Result),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t\t\"controlledBy\": pulumi.String(\"ear\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewDiskReplicaPair(ctx, \"default\", \u0026ebs.DiskReplicaPairArgs{\n\t\t\tDestinationDiskId: destination.ID(),\n\t\t\tDestinationRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tPaymentType: pulumi.String(\"POSTPAY\"),\n\t\t\tDestinationZoneId: destination.ZoneId,\n\t\t\tSourceZoneId: defaultEcsDisk.ZoneId,\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ebs.EbsFunctions;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.ebs.DiskReplicaPair;\nimport com.pulumi.alicloud.ebs.DiskReplicaPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetRegions = EbsFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(default_.regions()[0].id())\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(defaultGetRegions.regions()[0].zones()[0].zoneId())\n .category(\"cloud_essd\")\n .deleteAutoSnapshot(true)\n .deleteWithInstance(true)\n .description(name)\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\"),\n Map.entry(\"controlledBy\", \"ear\")\n ))\n .build());\n\n var destination = new EcsDisk(\"destination\", EcsDiskArgs.builder()\n .zoneId(defaultGetRegions.regions()[0].zones()[1].zoneId())\n .category(\"cloud_essd\")\n .deleteAutoSnapshot(true)\n .deleteWithInstance(true)\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-destination\")\n .args(name)\n .build()).result())\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\"),\n Map.entry(\"controlledBy\", \"ear\")\n ))\n .build());\n\n var defaultDiskReplicaPair = new DiskReplicaPair(\"defaultDiskReplicaPair\", DiskReplicaPairArgs.builder()\n .destinationDiskId(destination.id())\n .destinationRegionId(default_.regions()[0].id())\n .paymentType(\"POSTPAY\")\n .destinationZoneId(destination.zoneId())\n .sourceZoneId(defaultEcsDisk.zoneId())\n .diskId(defaultEcsDisk.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${defaultGetRegions.regions[0].zones[0].zoneId}\n category: cloud_essd\n deleteAutoSnapshot: 'true'\n deleteWithInstance: 'true'\n description: ${name}\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n For: example\n controlledBy: ear\n destination:\n type: alicloud:ecs:EcsDisk\n properties:\n zoneId: ${defaultGetRegions.regions[0].zones[1].zoneId}\n category: cloud_essd\n deleteAutoSnapshot: 'true'\n deleteWithInstance: 'true'\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-destination'\n args:\n - ${name}\n return: result\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n For: example\n controlledBy: ear\n defaultDiskReplicaPair:\n type: alicloud:ebs:DiskReplicaPair\n name: default\n properties:\n destinationDiskId: ${destination.id}\n destinationRegionId: ${default.regions[0].id}\n paymentType: POSTPAY\n destinationZoneId: ${destination.zoneId}\n sourceZoneId: ${defaultEcsDisk.zoneId}\n diskId: ${defaultEcsDisk.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetRegions:\n fn::invoke:\n function: alicloud:ebs:getRegions\n arguments:\n regionId: ${default.regions[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nElastic Block Storage(EBS) Disk Replica Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/diskReplicaPair:DiskReplicaPair example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Elastic Block Storage(EBS) Disk Replica Pair resource.\n\n\n\nFor information about Elastic Block Storage(EBS) Disk Replica Pair and how to use it, see [What is Disk Replica Pair](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ebs-2021-07-30-creatediskreplicapair).\n\n\u003e **NOTE:** Available since v1.196.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetRegions = _default.then(_default =\u003e alicloud.ebs.getRegions({\n regionId: _default.regions?.[0]?.id,\n}));\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[0]?.zoneId),\n category: \"cloud_essd\",\n deleteAutoSnapshot: true,\n deleteWithInstance: true,\n description: name,\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n For: \"example\",\n controlledBy: \"ear\",\n },\n});\nconst destination = new alicloud.ecs.EcsDisk(\"destination\", {\n zoneId: defaultGetRegions.then(defaultGetRegions =\u003e defaultGetRegions.regions?.[0]?.zones?.[1]?.zoneId),\n category: \"cloud_essd\",\n deleteAutoSnapshot: true,\n deleteWithInstance: true,\n description: std.format({\n input: \"%s-destination\",\n args: [name],\n }).then(invoke =\u003e invoke.result),\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n For: \"example\",\n controlledBy: \"ear\",\n },\n});\nconst defaultDiskReplicaPair = new alicloud.ebs.DiskReplicaPair(\"default\", {\n destinationDiskId: destination.id,\n destinationRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n paymentType: \"POSTPAY\",\n destinationZoneId: destination.zoneId,\n sourceZoneId: defaultEcsDisk.zoneId,\n diskId: defaultEcsDisk.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_regions = alicloud.ebs.get_regions(region_id=default.regions[0].id)\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=default_get_regions.regions[0].zones[0].zone_id,\n category=\"cloud_essd\",\n delete_auto_snapshot=True,\n delete_with_instance=True,\n description=name,\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n \"controlledBy\": \"ear\",\n })\ndestination = alicloud.ecs.EcsDisk(\"destination\",\n zone_id=default_get_regions.regions[0].zones[1].zone_id,\n category=\"cloud_essd\",\n delete_auto_snapshot=True,\n delete_with_instance=True,\n description=std.format(input=\"%s-destination\",\n args=[name]).result,\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n \"controlledBy\": \"ear\",\n })\ndefault_disk_replica_pair = alicloud.ebs.DiskReplicaPair(\"default\",\n destination_disk_id=destination.id,\n destination_region_id=default.regions[0].id,\n payment_type=\"POSTPAY\",\n destination_zone_id=destination.zone_id,\n source_zone_id=default_ecs_disk.zone_id,\n disk_id=default_ecs_disk.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetRegions = AliCloud.Ebs.GetRegions.Invoke(new()\n {\n RegionId = @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id),\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[0]?.ZoneId),\n Category = \"cloud_essd\",\n DeleteAutoSnapshot = true,\n DeleteWithInstance = true,\n Description = name,\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n { \"controlledBy\", \"ear\" },\n },\n });\n\n var destination = new AliCloud.Ecs.EcsDisk(\"destination\", new()\n {\n ZoneId = defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Zones[1]?.ZoneId),\n Category = \"cloud_essd\",\n DeleteAutoSnapshot = true,\n DeleteWithInstance = true,\n Description = Std.Format.Invoke(new()\n {\n Input = \"%s-destination\",\n Args = new[]\n {\n name,\n },\n }).Apply(invoke =\u003e invoke.Result),\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n { \"controlledBy\", \"ear\" },\n },\n });\n\n var defaultDiskReplicaPair = new AliCloud.Ebs.DiskReplicaPair(\"default\", new()\n {\n DestinationDiskId = destination.Id,\n DestinationRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n PaymentType = \"POSTPAY\",\n DestinationZoneId = destination.ZoneId,\n SourceZoneId = defaultEcsDisk.ZoneId,\n DiskId = defaultEcsDisk.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := ebs.GetRegions(ctx, \u0026ebs.GetRegionsArgs{\n\t\t\tRegionId: pulumi.StringRef(_default.Regions[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[0].ZoneId),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t\t\"controlledBy\": pulumi.String(\"ear\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeFormat, err := std.Format(ctx, \u0026std.FormatArgs{\n\t\t\tInput: \"%s-destination\",\n\t\t\tArgs: []string{\n\t\t\t\tname,\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdestination, err := ecs.NewEcsDisk(ctx, \"destination\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(defaultGetRegions.Regions[0].Zones[1].ZoneId),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(invokeFormat.Result),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t\t\"controlledBy\": pulumi.String(\"ear\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewDiskReplicaPair(ctx, \"default\", \u0026ebs.DiskReplicaPairArgs{\n\t\t\tDestinationDiskId: destination.ID(),\n\t\t\tDestinationRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tPaymentType: pulumi.String(\"POSTPAY\"),\n\t\t\tDestinationZoneId: destination.ZoneId,\n\t\t\tSourceZoneId: defaultEcsDisk.ZoneId,\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.ebs.EbsFunctions;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.FormatArgs;\nimport com.pulumi.alicloud.ebs.DiskReplicaPair;\nimport com.pulumi.alicloud.ebs.DiskReplicaPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetRegions = EbsFunctions.getRegions(GetRegionsArgs.builder()\n .regionId(default_.regions()[0].id())\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(defaultGetRegions.regions()[0].zones()[0].zoneId())\n .category(\"cloud_essd\")\n .deleteAutoSnapshot(true)\n .deleteWithInstance(true)\n .description(name)\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\"),\n Map.entry(\"controlledBy\", \"ear\")\n ))\n .build());\n\n var destination = new EcsDisk(\"destination\", EcsDiskArgs.builder()\n .zoneId(defaultGetRegions.regions()[0].zones()[1].zoneId())\n .category(\"cloud_essd\")\n .deleteAutoSnapshot(true)\n .deleteWithInstance(true)\n .description(StdFunctions.format(FormatArgs.builder()\n .input(\"%s-destination\")\n .args(name)\n .build()).result())\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\"),\n Map.entry(\"controlledBy\", \"ear\")\n ))\n .build());\n\n var defaultDiskReplicaPair = new DiskReplicaPair(\"defaultDiskReplicaPair\", DiskReplicaPairArgs.builder()\n .destinationDiskId(destination.id())\n .destinationRegionId(default_.regions()[0].id())\n .paymentType(\"POSTPAY\")\n .destinationZoneId(destination.zoneId())\n .sourceZoneId(defaultEcsDisk.zoneId())\n .diskId(defaultEcsDisk.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${defaultGetRegions.regions[0].zones[0].zoneId}\n category: cloud_essd\n deleteAutoSnapshot: 'true'\n deleteWithInstance: 'true'\n description: ${name}\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n For: example\n controlledBy: ear\n destination:\n type: alicloud:ecs:EcsDisk\n properties:\n zoneId: ${defaultGetRegions.regions[0].zones[1].zoneId}\n category: cloud_essd\n deleteAutoSnapshot: 'true'\n deleteWithInstance: 'true'\n description:\n fn::invoke:\n function: std:format\n arguments:\n input: '%s-destination'\n args:\n - ${name}\n return: result\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n For: example\n controlledBy: ear\n defaultDiskReplicaPair:\n type: alicloud:ebs:DiskReplicaPair\n name: default\n properties:\n destinationDiskId: ${destination.id}\n destinationRegionId: ${default.regions[0].id}\n paymentType: POSTPAY\n destinationZoneId: ${destination.zoneId}\n sourceZoneId: ${defaultEcsDisk.zoneId}\n diskId: ${defaultEcsDisk.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetRegions:\n fn::invoke:\n function: alicloud:ebs:getRegions\n arguments:\n regionId: ${default.regions[0].id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nElastic Block Storage(EBS) Disk Replica Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/diskReplicaPair:DiskReplicaPair example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "integer",
@@ -149087,7 +151716,7 @@
}
},
"alicloud:ebs/enterpriseSnapshotPolicy:EnterpriseSnapshotPolicy": {
- "description": "Provides a EBS Enterprise Snapshot Policy resource. enterprise snapshot policy.\n\nFor information about EBS Enterprise Snapshot Policy and how to use it, see [What is Enterprise Snapshot Policy](https://next.api.aliyun.com/api/ebs/2021-07-30/CreateEnterpriseSnapshotPolicy).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultJkW46o = new alicloud.ecs.EcsDisk(\"defaultJkW46o\", {\n category: \"cloud_essd\",\n description: \"esp-attachment-test\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n size: 20,\n diskName: name,\n});\nconst defaultPE3jjR = new alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", {\n status: \"DISABLED\",\n desc: \"DESC\",\n schedule: {\n cronExpression: \"0 0 0 1 * ?\",\n },\n enterpriseSnapshotPolicyName: name,\n targetType: \"DISK\",\n retainRule: {\n timeInterval: 120,\n timeUnit: \"DAYS\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_jk_w46o = alicloud.ecs.EcsDisk(\"defaultJkW46o\",\n category=\"cloud_essd\",\n description=\"esp-attachment-test\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n size=20,\n disk_name=name)\ndefault_pe3jj_r = alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\",\n status=\"DISABLED\",\n desc=\"DESC\",\n schedule={\n \"cron_expression\": \"0 0 0 1 * ?\",\n },\n enterprise_snapshot_policy_name=name,\n target_type=\"DISK\",\n retain_rule={\n \"time_interval\": 120,\n \"time_unit\": \"DAYS\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultJkW46o = new AliCloud.Ecs.EcsDisk(\"defaultJkW46o\", new()\n {\n Category = \"cloud_essd\",\n Description = \"esp-attachment-test\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n Size = 20,\n DiskName = name,\n });\n\n var defaultPE3jjR = new AliCloud.Ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", new()\n {\n Status = \"DISABLED\",\n Desc = \"DESC\",\n Schedule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyScheduleArgs\n {\n CronExpression = \"0 0 0 1 * ?\",\n },\n EnterpriseSnapshotPolicyName = name,\n TargetType = \"DISK\",\n RetainRule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyRetainRuleArgs\n {\n TimeInterval = 120,\n TimeUnit = \"DAYS\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEcsDisk(ctx, \"defaultJkW46o\", \u0026ecs.EcsDiskArgs{\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDescription: pulumi.String(\"esp-attachment-test\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t\tDiskName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewEnterpriseSnapshotPolicy(ctx, \"defaultPE3jjR\", \u0026ebs.EnterpriseSnapshotPolicyArgs{\n\t\t\tStatus: pulumi.String(\"DISABLED\"),\n\t\t\tDesc: pulumi.String(\"DESC\"),\n\t\t\tSchedule: \u0026ebs.EnterpriseSnapshotPolicyScheduleArgs{\n\t\t\t\tCronExpression: pulumi.String(\"0 0 0 1 * ?\"),\n\t\t\t},\n\t\t\tEnterpriseSnapshotPolicyName: pulumi.String(name),\n\t\t\tTargetType: pulumi.String(\"DISK\"),\n\t\t\tRetainRule: \u0026ebs.EnterpriseSnapshotPolicyRetainRuleArgs{\n\t\t\t\tTimeInterval: pulumi.Int(120),\n\t\t\t\tTimeUnit: pulumi.String(\"DAYS\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicy;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyScheduleArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyRetainRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultJkW46o = new EcsDisk(\"defaultJkW46o\", EcsDiskArgs.builder()\n .category(\"cloud_essd\")\n .description(\"esp-attachment-test\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .size(20)\n .diskName(name)\n .build());\n\n var defaultPE3jjR = new EnterpriseSnapshotPolicy(\"defaultPE3jjR\", EnterpriseSnapshotPolicyArgs.builder()\n .status(\"DISABLED\")\n .desc(\"DESC\")\n .schedule(EnterpriseSnapshotPolicyScheduleArgs.builder()\n .cronExpression(\"0 0 0 1 * ?\")\n .build())\n .enterpriseSnapshotPolicyName(name)\n .targetType(\"DISK\")\n .retainRule(EnterpriseSnapshotPolicyRetainRuleArgs.builder()\n .timeInterval(120)\n .timeUnit(\"DAYS\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultJkW46o:\n type: alicloud:ecs:EcsDisk\n properties:\n category: cloud_essd\n description: esp-attachment-test\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n size: '20'\n diskName: ${name}\n defaultPE3jjR:\n type: alicloud:ebs:EnterpriseSnapshotPolicy\n properties:\n status: DISABLED\n desc: DESC\n schedule:\n cronExpression: 0 0 0 1 * ?\n enterpriseSnapshotPolicyName: ${name}\n targetType: DISK\n retainRule:\n timeInterval: '120'\n timeUnit: DAYS\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEBS Enterprise Snapshot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/enterpriseSnapshotPolicy:EnterpriseSnapshotPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a EBS Enterprise Snapshot Policy resource. enterprise snapshot policy.\n\nFor information about EBS Enterprise Snapshot Policy and how to use it, see [What is Enterprise Snapshot Policy](https://next.api.aliyun.com/api/ebs/2021-07-30/CreateEnterpriseSnapshotPolicy).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultJkW46o = new alicloud.ecs.EcsDisk(\"defaultJkW46o\", {\n category: \"cloud_essd\",\n description: \"esp-attachment-test\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n size: 20,\n diskName: name,\n});\nconst defaultPE3jjR = new alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", {\n status: \"DISABLED\",\n desc: \"DESC\",\n schedule: {\n cronExpression: \"0 0 0 1 * ?\",\n },\n enterpriseSnapshotPolicyName: name,\n targetType: \"DISK\",\n retainRule: {\n timeInterval: 120,\n timeUnit: \"DAYS\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_jk_w46o = alicloud.ecs.EcsDisk(\"defaultJkW46o\",\n category=\"cloud_essd\",\n description=\"esp-attachment-test\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n size=20,\n disk_name=name)\ndefault_pe3jj_r = alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\",\n status=\"DISABLED\",\n desc=\"DESC\",\n schedule={\n \"cron_expression\": \"0 0 0 1 * ?\",\n },\n enterprise_snapshot_policy_name=name,\n target_type=\"DISK\",\n retain_rule={\n \"time_interval\": 120,\n \"time_unit\": \"DAYS\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultJkW46o = new AliCloud.Ecs.EcsDisk(\"defaultJkW46o\", new()\n {\n Category = \"cloud_essd\",\n Description = \"esp-attachment-test\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n Size = 20,\n DiskName = name,\n });\n\n var defaultPE3jjR = new AliCloud.Ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", new()\n {\n Status = \"DISABLED\",\n Desc = \"DESC\",\n Schedule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyScheduleArgs\n {\n CronExpression = \"0 0 0 1 * ?\",\n },\n EnterpriseSnapshotPolicyName = name,\n TargetType = \"DISK\",\n RetainRule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyRetainRuleArgs\n {\n TimeInterval = 120,\n TimeUnit = \"DAYS\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEcsDisk(ctx, \"defaultJkW46o\", \u0026ecs.EcsDiskArgs{\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDescription: pulumi.String(\"esp-attachment-test\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t\tDiskName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewEnterpriseSnapshotPolicy(ctx, \"defaultPE3jjR\", \u0026ebs.EnterpriseSnapshotPolicyArgs{\n\t\t\tStatus: pulumi.String(\"DISABLED\"),\n\t\t\tDesc: pulumi.String(\"DESC\"),\n\t\t\tSchedule: \u0026ebs.EnterpriseSnapshotPolicyScheduleArgs{\n\t\t\t\tCronExpression: pulumi.String(\"0 0 0 1 * ?\"),\n\t\t\t},\n\t\t\tEnterpriseSnapshotPolicyName: pulumi.String(name),\n\t\t\tTargetType: pulumi.String(\"DISK\"),\n\t\t\tRetainRule: \u0026ebs.EnterpriseSnapshotPolicyRetainRuleArgs{\n\t\t\t\tTimeInterval: pulumi.Int(120),\n\t\t\t\tTimeUnit: pulumi.String(\"DAYS\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicy;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyScheduleArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyRetainRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultJkW46o = new EcsDisk(\"defaultJkW46o\", EcsDiskArgs.builder()\n .category(\"cloud_essd\")\n .description(\"esp-attachment-test\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .size(20)\n .diskName(name)\n .build());\n\n var defaultPE3jjR = new EnterpriseSnapshotPolicy(\"defaultPE3jjR\", EnterpriseSnapshotPolicyArgs.builder()\n .status(\"DISABLED\")\n .desc(\"DESC\")\n .schedule(EnterpriseSnapshotPolicyScheduleArgs.builder()\n .cronExpression(\"0 0 0 1 * ?\")\n .build())\n .enterpriseSnapshotPolicyName(name)\n .targetType(\"DISK\")\n .retainRule(EnterpriseSnapshotPolicyRetainRuleArgs.builder()\n .timeInterval(120)\n .timeUnit(\"DAYS\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultJkW46o:\n type: alicloud:ecs:EcsDisk\n properties:\n category: cloud_essd\n description: esp-attachment-test\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n size: '20'\n diskName: ${name}\n defaultPE3jjR:\n type: alicloud:ebs:EnterpriseSnapshotPolicy\n properties:\n status: DISABLED\n desc: DESC\n schedule:\n cronExpression: 0 0 0 1 * ?\n enterpriseSnapshotPolicyName: ${name}\n targetType: DISK\n retainRule:\n timeInterval: '120'\n timeUnit: DAYS\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEBS Enterprise Snapshot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/enterpriseSnapshotPolicy:EnterpriseSnapshotPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -149270,7 +151899,7 @@
}
},
"alicloud:ebs/enterpriseSnapshotPolicyAttachment:EnterpriseSnapshotPolicyAttachment": {
- "description": "Provides a EBS Enterprise Snapshot Policy Attachment resource. Enterprise-level snapshot policy cloud disk binding relationship.\n\nFor information about EBS Enterprise Snapshot Policy Attachment and how to use it, see [What is Enterprise Snapshot Policy Attachment](https://next.api.aliyun.com/api/ebs/2021-07-30/BindEnterpriseSnapshotPolicy).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultJkW46o = new alicloud.ecs.EcsDisk(\"defaultJkW46o\", {\n category: \"cloud_essd\",\n description: \"esp-attachment-test\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n size: 20,\n diskName: name,\n});\nconst defaultPE3jjR = new alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", {\n status: \"DISABLED\",\n desc: \"DESC\",\n schedule: {\n cronExpression: \"0 0 0 1 * ?\",\n },\n enterpriseSnapshotPolicyName: name,\n targetType: \"DISK\",\n retainRule: {\n timeInterval: 120,\n timeUnit: \"DAYS\",\n },\n});\nconst _default = new alicloud.ebs.EnterpriseSnapshotPolicyAttachment(\"default\", {\n policyId: defaultPE3jjR.id,\n diskId: defaultJkW46o.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_jk_w46o = alicloud.ecs.EcsDisk(\"defaultJkW46o\",\n category=\"cloud_essd\",\n description=\"esp-attachment-test\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n size=20,\n disk_name=name)\ndefault_pe3jj_r = alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\",\n status=\"DISABLED\",\n desc=\"DESC\",\n schedule={\n \"cron_expression\": \"0 0 0 1 * ?\",\n },\n enterprise_snapshot_policy_name=name,\n target_type=\"DISK\",\n retain_rule={\n \"time_interval\": 120,\n \"time_unit\": \"DAYS\",\n })\ndefault = alicloud.ebs.EnterpriseSnapshotPolicyAttachment(\"default\",\n policy_id=default_pe3jj_r.id,\n disk_id=default_jk_w46o.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultJkW46o = new AliCloud.Ecs.EcsDisk(\"defaultJkW46o\", new()\n {\n Category = \"cloud_essd\",\n Description = \"esp-attachment-test\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n Size = 20,\n DiskName = name,\n });\n\n var defaultPE3jjR = new AliCloud.Ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", new()\n {\n Status = \"DISABLED\",\n Desc = \"DESC\",\n Schedule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyScheduleArgs\n {\n CronExpression = \"0 0 0 1 * ?\",\n },\n EnterpriseSnapshotPolicyName = name,\n TargetType = \"DISK\",\n RetainRule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyRetainRuleArgs\n {\n TimeInterval = 120,\n TimeUnit = \"DAYS\",\n },\n });\n\n var @default = new AliCloud.Ebs.EnterpriseSnapshotPolicyAttachment(\"default\", new()\n {\n PolicyId = defaultPE3jjR.Id,\n DiskId = defaultJkW46o.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultJkW46o, err := ecs.NewEcsDisk(ctx, \"defaultJkW46o\", \u0026ecs.EcsDiskArgs{\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDescription: pulumi.String(\"esp-attachment-test\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t\tDiskName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPE3jjR, err := ebs.NewEnterpriseSnapshotPolicy(ctx, \"defaultPE3jjR\", \u0026ebs.EnterpriseSnapshotPolicyArgs{\n\t\t\tStatus: pulumi.String(\"DISABLED\"),\n\t\t\tDesc: pulumi.String(\"DESC\"),\n\t\t\tSchedule: \u0026ebs.EnterpriseSnapshotPolicyScheduleArgs{\n\t\t\t\tCronExpression: pulumi.String(\"0 0 0 1 * ?\"),\n\t\t\t},\n\t\t\tEnterpriseSnapshotPolicyName: pulumi.String(name),\n\t\t\tTargetType: pulumi.String(\"DISK\"),\n\t\t\tRetainRule: \u0026ebs.EnterpriseSnapshotPolicyRetainRuleArgs{\n\t\t\t\tTimeInterval: pulumi.Int(120),\n\t\t\t\tTimeUnit: pulumi.String(\"DAYS\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewEnterpriseSnapshotPolicyAttachment(ctx, \"default\", \u0026ebs.EnterpriseSnapshotPolicyAttachmentArgs{\n\t\t\tPolicyId: defaultPE3jjR.ID(),\n\t\t\tDiskId: defaultJkW46o.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicy;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyScheduleArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyRetainRuleArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyAttachment;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultJkW46o = new EcsDisk(\"defaultJkW46o\", EcsDiskArgs.builder()\n .category(\"cloud_essd\")\n .description(\"esp-attachment-test\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .size(20)\n .diskName(name)\n .build());\n\n var defaultPE3jjR = new EnterpriseSnapshotPolicy(\"defaultPE3jjR\", EnterpriseSnapshotPolicyArgs.builder()\n .status(\"DISABLED\")\n .desc(\"DESC\")\n .schedule(EnterpriseSnapshotPolicyScheduleArgs.builder()\n .cronExpression(\"0 0 0 1 * ?\")\n .build())\n .enterpriseSnapshotPolicyName(name)\n .targetType(\"DISK\")\n .retainRule(EnterpriseSnapshotPolicyRetainRuleArgs.builder()\n .timeInterval(120)\n .timeUnit(\"DAYS\")\n .build())\n .build());\n\n var default_ = new EnterpriseSnapshotPolicyAttachment(\"default\", EnterpriseSnapshotPolicyAttachmentArgs.builder()\n .policyId(defaultPE3jjR.id())\n .diskId(defaultJkW46o.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultJkW46o:\n type: alicloud:ecs:EcsDisk\n properties:\n category: cloud_essd\n description: esp-attachment-test\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n size: '20'\n diskName: ${name}\n defaultPE3jjR:\n type: alicloud:ebs:EnterpriseSnapshotPolicy\n properties:\n status: DISABLED\n desc: DESC\n schedule:\n cronExpression: 0 0 0 1 * ?\n enterpriseSnapshotPolicyName: ${name}\n targetType: DISK\n retainRule:\n timeInterval: '120'\n timeUnit: DAYS\n default:\n type: alicloud:ebs:EnterpriseSnapshotPolicyAttachment\n properties:\n policyId: ${defaultPE3jjR.id}\n diskId: ${defaultJkW46o.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEBS Enterprise Snapshot Policy Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/enterpriseSnapshotPolicyAttachment:EnterpriseSnapshotPolicyAttachment example \u003cpolicy_id\u003e:\u003cdisk_id\u003e\n```\n\n",
+ "description": "Provides a EBS Enterprise Snapshot Policy Attachment resource. Enterprise-level snapshot policy cloud disk binding relationship.\n\nFor information about EBS Enterprise Snapshot Policy Attachment and how to use it, see [What is Enterprise Snapshot Policy Attachment](https://next.api.aliyun.com/api/ebs/2021-07-30/BindEnterpriseSnapshotPolicy).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultJkW46o = new alicloud.ecs.EcsDisk(\"defaultJkW46o\", {\n category: \"cloud_essd\",\n description: \"esp-attachment-test\",\n zoneId: \"cn-hangzhou-i\",\n performanceLevel: \"PL1\",\n size: 20,\n diskName: name,\n});\nconst defaultPE3jjR = new alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", {\n status: \"DISABLED\",\n desc: \"DESC\",\n schedule: {\n cronExpression: \"0 0 0 1 * ?\",\n },\n enterpriseSnapshotPolicyName: name,\n targetType: \"DISK\",\n retainRule: {\n timeInterval: 120,\n timeUnit: \"DAYS\",\n },\n});\nconst _default = new alicloud.ebs.EnterpriseSnapshotPolicyAttachment(\"default\", {\n policyId: defaultPE3jjR.id,\n diskId: defaultJkW46o.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_jk_w46o = alicloud.ecs.EcsDisk(\"defaultJkW46o\",\n category=\"cloud_essd\",\n description=\"esp-attachment-test\",\n zone_id=\"cn-hangzhou-i\",\n performance_level=\"PL1\",\n size=20,\n disk_name=name)\ndefault_pe3jj_r = alicloud.ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\",\n status=\"DISABLED\",\n desc=\"DESC\",\n schedule={\n \"cron_expression\": \"0 0 0 1 * ?\",\n },\n enterprise_snapshot_policy_name=name,\n target_type=\"DISK\",\n retain_rule={\n \"time_interval\": 120,\n \"time_unit\": \"DAYS\",\n })\ndefault = alicloud.ebs.EnterpriseSnapshotPolicyAttachment(\"default\",\n policy_id=default_pe3jj_r.id,\n disk_id=default_jk_w46o.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultJkW46o = new AliCloud.Ecs.EcsDisk(\"defaultJkW46o\", new()\n {\n Category = \"cloud_essd\",\n Description = \"esp-attachment-test\",\n ZoneId = \"cn-hangzhou-i\",\n PerformanceLevel = \"PL1\",\n Size = 20,\n DiskName = name,\n });\n\n var defaultPE3jjR = new AliCloud.Ebs.EnterpriseSnapshotPolicy(\"defaultPE3jjR\", new()\n {\n Status = \"DISABLED\",\n Desc = \"DESC\",\n Schedule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyScheduleArgs\n {\n CronExpression = \"0 0 0 1 * ?\",\n },\n EnterpriseSnapshotPolicyName = name,\n TargetType = \"DISK\",\n RetainRule = new AliCloud.Ebs.Inputs.EnterpriseSnapshotPolicyRetainRuleArgs\n {\n TimeInterval = 120,\n TimeUnit = \"DAYS\",\n },\n });\n\n var @default = new AliCloud.Ebs.EnterpriseSnapshotPolicyAttachment(\"default\", new()\n {\n PolicyId = defaultPE3jjR.Id,\n DiskId = defaultJkW46o.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultJkW46o, err := ecs.NewEcsDisk(ctx, \"defaultJkW46o\", \u0026ecs.EcsDiskArgs{\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tDescription: pulumi.String(\"esp-attachment-test\"),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-i\"),\n\t\t\tPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t\tDiskName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultPE3jjR, err := ebs.NewEnterpriseSnapshotPolicy(ctx, \"defaultPE3jjR\", \u0026ebs.EnterpriseSnapshotPolicyArgs{\n\t\t\tStatus: pulumi.String(\"DISABLED\"),\n\t\t\tDesc: pulumi.String(\"DESC\"),\n\t\t\tSchedule: \u0026ebs.EnterpriseSnapshotPolicyScheduleArgs{\n\t\t\t\tCronExpression: pulumi.String(\"0 0 0 1 * ?\"),\n\t\t\t},\n\t\t\tEnterpriseSnapshotPolicyName: pulumi.String(name),\n\t\t\tTargetType: pulumi.String(\"DISK\"),\n\t\t\tRetainRule: \u0026ebs.EnterpriseSnapshotPolicyRetainRuleArgs{\n\t\t\t\tTimeInterval: pulumi.Int(120),\n\t\t\t\tTimeUnit: pulumi.String(\"DAYS\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewEnterpriseSnapshotPolicyAttachment(ctx, \"default\", \u0026ebs.EnterpriseSnapshotPolicyAttachmentArgs{\n\t\t\tPolicyId: defaultPE3jjR.ID(),\n\t\t\tDiskId: defaultJkW46o.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicy;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyScheduleArgs;\nimport com.pulumi.alicloud.ebs.inputs.EnterpriseSnapshotPolicyRetainRuleArgs;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyAttachment;\nimport com.pulumi.alicloud.ebs.EnterpriseSnapshotPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultJkW46o = new EcsDisk(\"defaultJkW46o\", EcsDiskArgs.builder()\n .category(\"cloud_essd\")\n .description(\"esp-attachment-test\")\n .zoneId(\"cn-hangzhou-i\")\n .performanceLevel(\"PL1\")\n .size(20)\n .diskName(name)\n .build());\n\n var defaultPE3jjR = new EnterpriseSnapshotPolicy(\"defaultPE3jjR\", EnterpriseSnapshotPolicyArgs.builder()\n .status(\"DISABLED\")\n .desc(\"DESC\")\n .schedule(EnterpriseSnapshotPolicyScheduleArgs.builder()\n .cronExpression(\"0 0 0 1 * ?\")\n .build())\n .enterpriseSnapshotPolicyName(name)\n .targetType(\"DISK\")\n .retainRule(EnterpriseSnapshotPolicyRetainRuleArgs.builder()\n .timeInterval(120)\n .timeUnit(\"DAYS\")\n .build())\n .build());\n\n var default_ = new EnterpriseSnapshotPolicyAttachment(\"default\", EnterpriseSnapshotPolicyAttachmentArgs.builder()\n .policyId(defaultPE3jjR.id())\n .diskId(defaultJkW46o.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultJkW46o:\n type: alicloud:ecs:EcsDisk\n properties:\n category: cloud_essd\n description: esp-attachment-test\n zoneId: cn-hangzhou-i\n performanceLevel: PL1\n size: '20'\n diskName: ${name}\n defaultPE3jjR:\n type: alicloud:ebs:EnterpriseSnapshotPolicy\n properties:\n status: DISABLED\n desc: DESC\n schedule:\n cronExpression: 0 0 0 1 * ?\n enterpriseSnapshotPolicyName: ${name}\n targetType: DISK\n retainRule:\n timeInterval: '120'\n timeUnit: DAYS\n default:\n type: alicloud:ebs:EnterpriseSnapshotPolicyAttachment\n properties:\n policyId: ${defaultPE3jjR.id}\n diskId: ${defaultJkW46o.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEBS Enterprise Snapshot Policy Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/enterpriseSnapshotPolicyAttachment:EnterpriseSnapshotPolicyAttachment example \u003cpolicy_id\u003e:\u003cdisk_id\u003e\n```\n\n",
"properties": {
"diskId": {
"type": "string",
@@ -149318,7 +151947,7 @@
}
},
"alicloud:ebs/replicaGroupDrill:ReplicaGroupDrill": {
- "description": "Provides a EBS Replica Group Drill resource. \n\nFor information about Elastic Block Storage(EBS) Replica Group Drill and how to use it, see [What is Replica Group Drill](https://next.api.alibabacloud.com/document/ebs/2021-07-30/StartReplicaGroupDrill).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ebs.ReplicaGroupDrill(\"default\", {groupId: \"pg-m1H9aaOUIGsDUwgZ\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ebs.ReplicaGroupDrill(\"default\", group_id=\"pg-m1H9aaOUIGsDUwgZ\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ebs.ReplicaGroupDrill(\"default\", new()\n {\n GroupId = \"pg-m1H9aaOUIGsDUwgZ\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ebs.NewReplicaGroupDrill(ctx, \"default\", \u0026ebs.ReplicaGroupDrillArgs{\n\t\t\tGroupId: pulumi.String(\"pg-m1H9aaOUIGsDUwgZ\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.ReplicaGroupDrill;\nimport com.pulumi.alicloud.ebs.ReplicaGroupDrillArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ReplicaGroupDrill(\"default\", ReplicaGroupDrillArgs.builder()\n .groupId(\"pg-m1H9aaOUIGsDUwgZ\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ebs:ReplicaGroupDrill\n properties:\n groupId: pg-m1H9aaOUIGsDUwgZ\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEBS Replica Group Drill can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/replicaGroupDrill:ReplicaGroupDrill example \u003cgroup_id\u003e:\u003creplica_group_drill_id\u003e\n```\n\n",
+ "description": "Provides a EBS Replica Group Drill resource. \n\nFor information about Elastic Block Storage(EBS) Replica Group Drill and how to use it, see [What is Replica Group Drill](https://next.api.alibabacloud.com/document/ebs/2021-07-30/StartReplicaGroupDrill).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ebs.ReplicaGroupDrill(\"default\", {groupId: \"pg-m1H9aaOUIGsDUwgZ\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ebs.ReplicaGroupDrill(\"default\", group_id=\"pg-m1H9aaOUIGsDUwgZ\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ebs.ReplicaGroupDrill(\"default\", new()\n {\n GroupId = \"pg-m1H9aaOUIGsDUwgZ\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ebs.NewReplicaGroupDrill(ctx, \"default\", \u0026ebs.ReplicaGroupDrillArgs{\n\t\t\tGroupId: pulumi.String(\"pg-m1H9aaOUIGsDUwgZ\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.ReplicaGroupDrill;\nimport com.pulumi.alicloud.ebs.ReplicaGroupDrillArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ReplicaGroupDrill(\"default\", ReplicaGroupDrillArgs.builder()\n .groupId(\"pg-m1H9aaOUIGsDUwgZ\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ebs:ReplicaGroupDrill\n properties:\n groupId: pg-m1H9aaOUIGsDUwgZ\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEBS Replica Group Drill can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/replicaGroupDrill:ReplicaGroupDrill example \u003cgroup_id\u003e:\u003creplica_group_drill_id\u003e\n```\n\n",
"properties": {
"groupId": {
"type": "string",
@@ -149369,7 +151998,7 @@
}
},
"alicloud:ebs/replicaPairDrill:ReplicaPairDrill": {
- "description": "Provides a EBS Replica Pair Drill resource. \n\nFor information about Elastic Block Storage(EBS) Replica Pair Drill and how to use it, see [What is Replica Pair Drill](https://next.api.alibabacloud.com/document/ebs/2021-07-30/StartPairDrill).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ebs.ReplicaPairDrill(\"default\", {pairId: \"pair-cn-wwo3kjfq5001\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ebs.ReplicaPairDrill(\"default\", pair_id=\"pair-cn-wwo3kjfq5001\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ebs.ReplicaPairDrill(\"default\", new()\n {\n PairId = \"pair-cn-wwo3kjfq5001\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ebs.NewReplicaPairDrill(ctx, \"default\", \u0026ebs.ReplicaPairDrillArgs{\n\t\t\tPairId: pulumi.String(\"pair-cn-wwo3kjfq5001\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.ReplicaPairDrill;\nimport com.pulumi.alicloud.ebs.ReplicaPairDrillArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ReplicaPairDrill(\"default\", ReplicaPairDrillArgs.builder()\n .pairId(\"pair-cn-wwo3kjfq5001\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ebs:ReplicaPairDrill\n properties:\n pairId: pair-cn-wwo3kjfq5001\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEBS Replica Pair Drill can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/replicaPairDrill:ReplicaPairDrill example \u003cpair_id\u003e:\u003creplica_pair_drill_id\u003e\n```\n\n",
+ "description": "Provides a EBS Replica Pair Drill resource. \n\nFor information about Elastic Block Storage(EBS) Replica Pair Drill and how to use it, see [What is Replica Pair Drill](https://next.api.alibabacloud.com/document/ebs/2021-07-30/StartPairDrill).\n\n\u003e **NOTE:** Available since v1.215.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ebs.ReplicaPairDrill(\"default\", {pairId: \"pair-cn-wwo3kjfq5001\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ebs.ReplicaPairDrill(\"default\", pair_id=\"pair-cn-wwo3kjfq5001\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ebs.ReplicaPairDrill(\"default\", new()\n {\n PairId = \"pair-cn-wwo3kjfq5001\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ebs.NewReplicaPairDrill(ctx, \"default\", \u0026ebs.ReplicaPairDrillArgs{\n\t\t\tPairId: pulumi.String(\"pair-cn-wwo3kjfq5001\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ebs.ReplicaPairDrill;\nimport com.pulumi.alicloud.ebs.ReplicaPairDrillArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new ReplicaPairDrill(\"default\", ReplicaPairDrillArgs.builder()\n .pairId(\"pair-cn-wwo3kjfq5001\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ebs:ReplicaPairDrill\n properties:\n pairId: pair-cn-wwo3kjfq5001\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEBS Replica Pair Drill can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/replicaPairDrill:ReplicaPairDrill example \u003cpair_id\u003e:\u003creplica_pair_drill_id\u003e\n```\n\n",
"properties": {
"pairId": {
"type": "string",
@@ -149420,7 +152049,7 @@
}
},
"alicloud:ebs/solutionInstance:SolutionInstance": {
- "description": "Provides a EBS Solution Instance resource. \n\nFor information about EBS Solution Instance and how to use it, see [What is Solution Instance](https://www.alibabacloud.com/help/en/).\n\n\u003e **NOTE:** Available since v1.216.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst zoneId = config.get(\"zoneId\") || \"cn-shanghai-l\";\nconst regionId = config.get(\"regionId\") || \"cn-shanghai\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultSolutionInstance = new alicloud.ebs.SolutionInstance(\"default\", {\n solutionInstanceName: name,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n description: \"description\",\n solutionId: \"mysql\",\n parameters: [\n {\n parameterKey: \"zoneId\",\n parameterValue: zoneId,\n },\n {\n parameterKey: \"ecsType\",\n parameterValue: \"ecs.c6.large\",\n },\n {\n parameterKey: \"ecsImageId\",\n parameterValue: \"CentOS_7\",\n },\n {\n parameterKey: \"internetMaxBandwidthOut\",\n parameterValue: \"100\",\n },\n {\n parameterKey: \"internetChargeType\",\n parameterValue: \"PayByTraffic\",\n },\n {\n parameterKey: \"ecsPassword\",\n parameterValue: \"Ebs12345\",\n },\n {\n parameterKey: \"sysDiskType\",\n parameterValue: \"cloud_essd\",\n },\n {\n parameterKey: \"sysDiskPerformance\",\n parameterValue: \"PL0\",\n },\n {\n parameterKey: \"sysDiskSize\",\n parameterValue: \"40\",\n },\n {\n parameterKey: \"dataDiskType\",\n parameterValue: \"cloud_essd\",\n },\n {\n parameterKey: \"dataDiskPerformance\",\n parameterValue: \"PL0\",\n },\n {\n parameterKey: \"dataDiskSize\",\n parameterValue: \"40\",\n },\n {\n parameterKey: \"mysqlVersion\",\n parameterValue: \"MySQL80\",\n },\n {\n parameterKey: \"mysqlUser\",\n parameterValue: \"root\",\n },\n {\n parameterKey: \"mysqlPassword\",\n parameterValue: \"Ebs12345\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nzone_id = config.get(\"zoneId\")\nif zone_id is None:\n zone_id = \"cn-shanghai-l\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-shanghai\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_solution_instance = alicloud.ebs.SolutionInstance(\"default\",\n solution_instance_name=name,\n resource_group_id=default.ids[0],\n description=\"description\",\n solution_id=\"mysql\",\n parameters=[\n {\n \"parameter_key\": \"zoneId\",\n \"parameter_value\": zone_id,\n },\n {\n \"parameter_key\": \"ecsType\",\n \"parameter_value\": \"ecs.c6.large\",\n },\n {\n \"parameter_key\": \"ecsImageId\",\n \"parameter_value\": \"CentOS_7\",\n },\n {\n \"parameter_key\": \"internetMaxBandwidthOut\",\n \"parameter_value\": \"100\",\n },\n {\n \"parameter_key\": \"internetChargeType\",\n \"parameter_value\": \"PayByTraffic\",\n },\n {\n \"parameter_key\": \"ecsPassword\",\n \"parameter_value\": \"Ebs12345\",\n },\n {\n \"parameter_key\": \"sysDiskType\",\n \"parameter_value\": \"cloud_essd\",\n },\n {\n \"parameter_key\": \"sysDiskPerformance\",\n \"parameter_value\": \"PL0\",\n },\n {\n \"parameter_key\": \"sysDiskSize\",\n \"parameter_value\": \"40\",\n },\n {\n \"parameter_key\": \"dataDiskType\",\n \"parameter_value\": \"cloud_essd\",\n },\n {\n \"parameter_key\": \"dataDiskPerformance\",\n \"parameter_value\": \"PL0\",\n },\n {\n \"parameter_key\": \"dataDiskSize\",\n \"parameter_value\": \"40\",\n },\n {\n \"parameter_key\": \"mysqlVersion\",\n \"parameter_value\": \"MySQL80\",\n },\n {\n \"parameter_key\": \"mysqlUser\",\n \"parameter_value\": \"root\",\n },\n {\n \"parameter_key\": \"mysqlPassword\",\n \"parameter_value\": \"Ebs12345\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var zoneId = config.Get(\"zoneId\") ?? \"cn-shanghai-l\";\n var regionId = config.Get(\"regionId\") ?? \"cn-shanghai\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultSolutionInstance = new AliCloud.Ebs.SolutionInstance(\"default\", new()\n {\n SolutionInstanceName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n Description = \"description\",\n SolutionId = \"mysql\",\n Parameters = new[]\n {\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"zoneId\",\n ParameterValue = zoneId,\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsType\",\n ParameterValue = \"ecs.c6.large\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsImageId\",\n ParameterValue = \"CentOS_7\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"internetMaxBandwidthOut\",\n ParameterValue = \"100\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"internetChargeType\",\n ParameterValue = \"PayByTraffic\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsPassword\",\n ParameterValue = \"Ebs12345\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskType\",\n ParameterValue = \"cloud_essd\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskPerformance\",\n ParameterValue = \"PL0\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskSize\",\n ParameterValue = \"40\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskType\",\n ParameterValue = \"cloud_essd\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskPerformance\",\n ParameterValue = \"PL0\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskSize\",\n ParameterValue = \"40\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlVersion\",\n ParameterValue = \"MySQL80\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlUser\",\n ParameterValue = \"root\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlPassword\",\n ParameterValue = \"Ebs12345\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tzoneId := \"cn-shanghai-l\"\n\t\tif param := cfg.Get(\"zoneId\"); param != \"\" {\n\t\t\tzoneId = param\n\t\t}\n\t\tregionId := \"cn-shanghai\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewSolutionInstance(ctx, \"default\", \u0026ebs.SolutionInstanceArgs{\n\t\t\tSolutionInstanceName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tSolutionId: pulumi.String(\"mysql\"),\n\t\t\tParameters: ebs.SolutionInstanceParameterArray{\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"zoneId\"),\n\t\t\t\t\tParameterValue: pulumi.String(zoneId),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"ecs.c6.large\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsImageId\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"CentOS_7\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"internetMaxBandwidthOut\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"100\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"internetChargeType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PayByTraffic\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsPassword\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"Ebs12345\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"cloud_essd\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskPerformance\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PL0\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskSize\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"40\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"cloud_essd\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskPerformance\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PL0\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskSize\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"40\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlVersion\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"MySQL80\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlUser\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"root\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlPassword\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"Ebs12345\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ebs.SolutionInstance;\nimport com.pulumi.alicloud.ebs.SolutionInstanceArgs;\nimport com.pulumi.alicloud.ebs.inputs.SolutionInstanceParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var zoneId = config.get(\"zoneId\").orElse(\"cn-shanghai-l\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-shanghai\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultSolutionInstance = new SolutionInstance(\"defaultSolutionInstance\", SolutionInstanceArgs.builder()\n .solutionInstanceName(name)\n .resourceGroupId(default_.ids()[0])\n .description(\"description\")\n .solutionId(\"mysql\")\n .parameters( \n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"zoneId\")\n .parameterValue(zoneId)\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsType\")\n .parameterValue(\"ecs.c6.large\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsImageId\")\n .parameterValue(\"CentOS_7\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"internetMaxBandwidthOut\")\n .parameterValue(\"100\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"internetChargeType\")\n .parameterValue(\"PayByTraffic\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsPassword\")\n .parameterValue(\"Ebs12345\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskType\")\n .parameterValue(\"cloud_essd\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskPerformance\")\n .parameterValue(\"PL0\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskSize\")\n .parameterValue(\"40\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskType\")\n .parameterValue(\"cloud_essd\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskPerformance\")\n .parameterValue(\"PL0\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskSize\")\n .parameterValue(\"40\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlVersion\")\n .parameterValue(\"MySQL80\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlUser\")\n .parameterValue(\"root\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlPassword\")\n .parameterValue(\"Ebs12345\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n zoneId:\n type: string\n default: cn-shanghai-l\n regionId:\n type: string\n default: cn-shanghai\nresources:\n defaultSolutionInstance:\n type: alicloud:ebs:SolutionInstance\n name: default\n properties:\n solutionInstanceName: ${name}\n resourceGroupId: ${default.ids[0]}\n description: description\n solutionId: mysql\n parameters:\n - parameterKey: zoneId\n parameterValue: ${zoneId}\n - parameterKey: ecsType\n parameterValue: ecs.c6.large\n - parameterKey: ecsImageId\n parameterValue: CentOS_7\n - parameterKey: internetMaxBandwidthOut\n parameterValue: '100'\n - parameterKey: internetChargeType\n parameterValue: PayByTraffic\n - parameterKey: ecsPassword\n parameterValue: Ebs12345\n - parameterKey: sysDiskType\n parameterValue: cloud_essd\n - parameterKey: sysDiskPerformance\n parameterValue: PL0\n - parameterKey: sysDiskSize\n parameterValue: '40'\n - parameterKey: dataDiskType\n parameterValue: cloud_essd\n - parameterKey: dataDiskPerformance\n parameterValue: PL0\n - parameterKey: dataDiskSize\n parameterValue: '40'\n - parameterKey: mysqlVersion\n parameterValue: MySQL80\n - parameterKey: mysqlUser\n parameterValue: root\n - parameterKey: mysqlPassword\n parameterValue: Ebs12345\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEBS Solution Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/solutionInstance:SolutionInstance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a EBS Solution Instance resource. \n\nFor information about EBS Solution Instance and how to use it, see [What is Solution Instance](https://www.alibabacloud.com/help/en/).\n\n\u003e **NOTE:** Available since v1.216.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst zoneId = config.get(\"zoneId\") || \"cn-shanghai-l\";\nconst regionId = config.get(\"regionId\") || \"cn-shanghai\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst defaultSolutionInstance = new alicloud.ebs.SolutionInstance(\"default\", {\n solutionInstanceName: name,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n description: \"description\",\n solutionId: \"mysql\",\n parameters: [\n {\n parameterKey: \"zoneId\",\n parameterValue: zoneId,\n },\n {\n parameterKey: \"ecsType\",\n parameterValue: \"ecs.c6.large\",\n },\n {\n parameterKey: \"ecsImageId\",\n parameterValue: \"CentOS_7\",\n },\n {\n parameterKey: \"internetMaxBandwidthOut\",\n parameterValue: \"100\",\n },\n {\n parameterKey: \"internetChargeType\",\n parameterValue: \"PayByTraffic\",\n },\n {\n parameterKey: \"ecsPassword\",\n parameterValue: \"Ebs12345\",\n },\n {\n parameterKey: \"sysDiskType\",\n parameterValue: \"cloud_essd\",\n },\n {\n parameterKey: \"sysDiskPerformance\",\n parameterValue: \"PL0\",\n },\n {\n parameterKey: \"sysDiskSize\",\n parameterValue: \"40\",\n },\n {\n parameterKey: \"dataDiskType\",\n parameterValue: \"cloud_essd\",\n },\n {\n parameterKey: \"dataDiskPerformance\",\n parameterValue: \"PL0\",\n },\n {\n parameterKey: \"dataDiskSize\",\n parameterValue: \"40\",\n },\n {\n parameterKey: \"mysqlVersion\",\n parameterValue: \"MySQL80\",\n },\n {\n parameterKey: \"mysqlUser\",\n parameterValue: \"root\",\n },\n {\n parameterKey: \"mysqlPassword\",\n parameterValue: \"Ebs12345\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\nzone_id = config.get(\"zoneId\")\nif zone_id is None:\n zone_id = \"cn-shanghai-l\"\nregion_id = config.get(\"regionId\")\nif region_id is None:\n region_id = \"cn-shanghai\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ndefault_solution_instance = alicloud.ebs.SolutionInstance(\"default\",\n solution_instance_name=name,\n resource_group_id=default.ids[0],\n description=\"description\",\n solution_id=\"mysql\",\n parameters=[\n {\n \"parameter_key\": \"zoneId\",\n \"parameter_value\": zone_id,\n },\n {\n \"parameter_key\": \"ecsType\",\n \"parameter_value\": \"ecs.c6.large\",\n },\n {\n \"parameter_key\": \"ecsImageId\",\n \"parameter_value\": \"CentOS_7\",\n },\n {\n \"parameter_key\": \"internetMaxBandwidthOut\",\n \"parameter_value\": \"100\",\n },\n {\n \"parameter_key\": \"internetChargeType\",\n \"parameter_value\": \"PayByTraffic\",\n },\n {\n \"parameter_key\": \"ecsPassword\",\n \"parameter_value\": \"Ebs12345\",\n },\n {\n \"parameter_key\": \"sysDiskType\",\n \"parameter_value\": \"cloud_essd\",\n },\n {\n \"parameter_key\": \"sysDiskPerformance\",\n \"parameter_value\": \"PL0\",\n },\n {\n \"parameter_key\": \"sysDiskSize\",\n \"parameter_value\": \"40\",\n },\n {\n \"parameter_key\": \"dataDiskType\",\n \"parameter_value\": \"cloud_essd\",\n },\n {\n \"parameter_key\": \"dataDiskPerformance\",\n \"parameter_value\": \"PL0\",\n },\n {\n \"parameter_key\": \"dataDiskSize\",\n \"parameter_value\": \"40\",\n },\n {\n \"parameter_key\": \"mysqlVersion\",\n \"parameter_value\": \"MySQL80\",\n },\n {\n \"parameter_key\": \"mysqlUser\",\n \"parameter_value\": \"root\",\n },\n {\n \"parameter_key\": \"mysqlPassword\",\n \"parameter_value\": \"Ebs12345\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var zoneId = config.Get(\"zoneId\") ?? \"cn-shanghai-l\";\n var regionId = config.Get(\"regionId\") ?? \"cn-shanghai\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultSolutionInstance = new AliCloud.Ebs.SolutionInstance(\"default\", new()\n {\n SolutionInstanceName = name,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n Description = \"description\",\n SolutionId = \"mysql\",\n Parameters = new[]\n {\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"zoneId\",\n ParameterValue = zoneId,\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsType\",\n ParameterValue = \"ecs.c6.large\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsImageId\",\n ParameterValue = \"CentOS_7\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"internetMaxBandwidthOut\",\n ParameterValue = \"100\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"internetChargeType\",\n ParameterValue = \"PayByTraffic\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"ecsPassword\",\n ParameterValue = \"Ebs12345\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskType\",\n ParameterValue = \"cloud_essd\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskPerformance\",\n ParameterValue = \"PL0\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"sysDiskSize\",\n ParameterValue = \"40\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskType\",\n ParameterValue = \"cloud_essd\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskPerformance\",\n ParameterValue = \"PL0\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"dataDiskSize\",\n ParameterValue = \"40\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlVersion\",\n ParameterValue = \"MySQL80\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlUser\",\n ParameterValue = \"root\",\n },\n new AliCloud.Ebs.Inputs.SolutionInstanceParameterArgs\n {\n ParameterKey = \"mysqlPassword\",\n ParameterValue = \"Ebs12345\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ebs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tzoneId := \"cn-shanghai-l\"\n\t\tif param := cfg.Get(\"zoneId\"); param != \"\" {\n\t\t\tzoneId = param\n\t\t}\n\t\tregionId := \"cn-shanghai\"\n\t\tif param := cfg.Get(\"regionId\"); param != \"\" {\n\t\t\tregionId = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ebs.NewSolutionInstance(ctx, \"default\", \u0026ebs.SolutionInstanceArgs{\n\t\t\tSolutionInstanceName: pulumi.String(name),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tSolutionId: pulumi.String(\"mysql\"),\n\t\t\tParameters: ebs.SolutionInstanceParameterArray{\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"zoneId\"),\n\t\t\t\t\tParameterValue: pulumi.String(zoneId),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"ecs.c6.large\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsImageId\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"CentOS_7\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"internetMaxBandwidthOut\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"100\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"internetChargeType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PayByTraffic\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"ecsPassword\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"Ebs12345\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"cloud_essd\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskPerformance\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PL0\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"sysDiskSize\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"40\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskType\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"cloud_essd\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskPerformance\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"PL0\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"dataDiskSize\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"40\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlVersion\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"MySQL80\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlUser\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"root\"),\n\t\t\t\t},\n\t\t\t\t\u0026ebs.SolutionInstanceParameterArgs{\n\t\t\t\t\tParameterKey: pulumi.String(\"mysqlPassword\"),\n\t\t\t\t\tParameterValue: pulumi.String(\"Ebs12345\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ebs.SolutionInstance;\nimport com.pulumi.alicloud.ebs.SolutionInstanceArgs;\nimport com.pulumi.alicloud.ebs.inputs.SolutionInstanceParameterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var zoneId = config.get(\"zoneId\").orElse(\"cn-shanghai-l\");\n final var regionId = config.get(\"regionId\").orElse(\"cn-shanghai\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultSolutionInstance = new SolutionInstance(\"defaultSolutionInstance\", SolutionInstanceArgs.builder()\n .solutionInstanceName(name)\n .resourceGroupId(default_.ids()[0])\n .description(\"description\")\n .solutionId(\"mysql\")\n .parameters( \n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"zoneId\")\n .parameterValue(zoneId)\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsType\")\n .parameterValue(\"ecs.c6.large\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsImageId\")\n .parameterValue(\"CentOS_7\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"internetMaxBandwidthOut\")\n .parameterValue(\"100\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"internetChargeType\")\n .parameterValue(\"PayByTraffic\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"ecsPassword\")\n .parameterValue(\"Ebs12345\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskType\")\n .parameterValue(\"cloud_essd\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskPerformance\")\n .parameterValue(\"PL0\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"sysDiskSize\")\n .parameterValue(\"40\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskType\")\n .parameterValue(\"cloud_essd\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskPerformance\")\n .parameterValue(\"PL0\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"dataDiskSize\")\n .parameterValue(\"40\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlVersion\")\n .parameterValue(\"MySQL80\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlUser\")\n .parameterValue(\"root\")\n .build(),\n SolutionInstanceParameterArgs.builder()\n .parameterKey(\"mysqlPassword\")\n .parameterValue(\"Ebs12345\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\n zoneId:\n type: string\n default: cn-shanghai-l\n regionId:\n type: string\n default: cn-shanghai\nresources:\n defaultSolutionInstance:\n type: alicloud:ebs:SolutionInstance\n name: default\n properties:\n solutionInstanceName: ${name}\n resourceGroupId: ${default.ids[0]}\n description: description\n solutionId: mysql\n parameters:\n - parameterKey: zoneId\n parameterValue: ${zoneId}\n - parameterKey: ecsType\n parameterValue: ecs.c6.large\n - parameterKey: ecsImageId\n parameterValue: CentOS_7\n - parameterKey: internetMaxBandwidthOut\n parameterValue: '100'\n - parameterKey: internetChargeType\n parameterValue: PayByTraffic\n - parameterKey: ecsPassword\n parameterValue: Ebs12345\n - parameterKey: sysDiskType\n parameterValue: cloud_essd\n - parameterKey: sysDiskPerformance\n parameterValue: PL0\n - parameterKey: sysDiskSize\n parameterValue: '40'\n - parameterKey: dataDiskType\n parameterValue: cloud_essd\n - parameterKey: dataDiskPerformance\n parameterValue: PL0\n - parameterKey: dataDiskSize\n parameterValue: '40'\n - parameterKey: mysqlVersion\n parameterValue: MySQL80\n - parameterKey: mysqlUser\n parameterValue: root\n - parameterKey: mysqlPassword\n parameterValue: Ebs12345\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEBS Solution Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ebs/solutionInstance:SolutionInstance example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -149530,7 +152159,7 @@
}
},
"alicloud:eci/containerGroup:ContainerGroup": {
- "description": "Provides ECI Container Group resource.\n\nFor information about ECI Container Group and how to use it, see [What is Container Group](https://www.alibabacloud.com/help/en/elastic-container-instance/latest/api-eci-2018-08-08-createcontainergroup).\n\n\u003e **NOTE:** Available since v1.111.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultContainerGroup = new alicloud.eci.ContainerGroup(\"default\", {\n containerGroupName: name,\n cpu: 8,\n memory: 16,\n restartPolicy: \"OnFailure\",\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n autoCreateEip: true,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n containers: [{\n image: \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n name: \"nginx\",\n workingDir: \"/tmp/nginx\",\n imagePullPolicy: \"IfNotPresent\",\n commands: [\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n ],\n volumeMounts: [{\n mountPath: \"/tmp/example\",\n readOnly: false,\n name: \"empty1\",\n }],\n ports: [{\n port: 80,\n protocol: \"TCP\",\n }],\n environmentVars: [{\n key: \"name\",\n value: \"nginx\",\n }],\n livenessProbes: [{\n periodSeconds: 5,\n initialDelaySeconds: 5,\n successThreshold: 1,\n failureThreshold: 3,\n timeoutSeconds: 1,\n execs: [{\n commands: [\"cat /tmp/healthy\"],\n }],\n }],\n readinessProbes: [{\n periodSeconds: 5,\n initialDelaySeconds: 5,\n successThreshold: 1,\n failureThreshold: 3,\n timeoutSeconds: 1,\n execs: [{\n commands: [\"cat /tmp/healthy\"],\n }],\n }],\n }],\n initContainers: [{\n name: \"init-busybox\",\n image: \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n imagePullPolicy: \"IfNotPresent\",\n commands: [\"echo\"],\n args: [\"hello initcontainer\"],\n }],\n volumes: [\n {\n name: \"empty1\",\n type: \"EmptyDirVolume\",\n },\n {\n name: \"empty2\",\n type: \"EmptyDirVolume\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_container_group = alicloud.eci.ContainerGroup(\"default\",\n container_group_name=name,\n cpu=8,\n memory=16,\n restart_policy=\"OnFailure\",\n security_group_id=default_security_group.id,\n vswitch_id=default_switch.id,\n auto_create_eip=True,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n containers=[{\n \"image\": \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n \"name\": \"nginx\",\n \"working_dir\": \"/tmp/nginx\",\n \"image_pull_policy\": \"IfNotPresent\",\n \"commands\": [\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n ],\n \"volume_mounts\": [{\n \"mount_path\": \"/tmp/example\",\n \"read_only\": False,\n \"name\": \"empty1\",\n }],\n \"ports\": [{\n \"port\": 80,\n \"protocol\": \"TCP\",\n }],\n \"environment_vars\": [{\n \"key\": \"name\",\n \"value\": \"nginx\",\n }],\n \"liveness_probes\": [{\n \"period_seconds\": 5,\n \"initial_delay_seconds\": 5,\n \"success_threshold\": 1,\n \"failure_threshold\": 3,\n \"timeout_seconds\": 1,\n \"execs\": [{\n \"commands\": [\"cat /tmp/healthy\"],\n }],\n }],\n \"readiness_probes\": [{\n \"period_seconds\": 5,\n \"initial_delay_seconds\": 5,\n \"success_threshold\": 1,\n \"failure_threshold\": 3,\n \"timeout_seconds\": 1,\n \"execs\": [{\n \"commands\": [\"cat /tmp/healthy\"],\n }],\n }],\n }],\n init_containers=[{\n \"name\": \"init-busybox\",\n \"image\": \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n \"image_pull_policy\": \"IfNotPresent\",\n \"commands\": [\"echo\"],\n \"args\": [\"hello initcontainer\"],\n }],\n volumes=[\n {\n \"name\": \"empty1\",\n \"type\": \"EmptyDirVolume\",\n },\n {\n \"name\": \"empty2\",\n \"type\": \"EmptyDirVolume\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultContainerGroup = new AliCloud.Eci.ContainerGroup(\"default\", new()\n {\n ContainerGroupName = name,\n Cpu = 8,\n Memory = 16,\n RestartPolicy = \"OnFailure\",\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n AutoCreateEip = true,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n Containers = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerArgs\n {\n Image = \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n Name = \"nginx\",\n WorkingDir = \"/tmp/nginx\",\n ImagePullPolicy = \"IfNotPresent\",\n Commands = new[]\n {\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n },\n VolumeMounts = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerVolumeMountArgs\n {\n MountPath = \"/tmp/example\",\n ReadOnly = false,\n Name = \"empty1\",\n },\n },\n Ports = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerPortArgs\n {\n Port = 80,\n Protocol = \"TCP\",\n },\n },\n EnvironmentVars = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerEnvironmentVarArgs\n {\n Key = \"name\",\n Value = \"nginx\",\n },\n },\n LivenessProbes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeArgs\n {\n PeriodSeconds = 5,\n InitialDelaySeconds = 5,\n SuccessThreshold = 1,\n FailureThreshold = 3,\n TimeoutSeconds = 1,\n Execs = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeExecArgs\n {\n Commands = new[]\n {\n \"cat /tmp/healthy\",\n },\n },\n },\n },\n },\n ReadinessProbes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeArgs\n {\n PeriodSeconds = 5,\n InitialDelaySeconds = 5,\n SuccessThreshold = 1,\n FailureThreshold = 3,\n TimeoutSeconds = 1,\n Execs = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeExecArgs\n {\n Commands = new[]\n {\n \"cat /tmp/healthy\",\n },\n },\n },\n },\n },\n },\n },\n InitContainers = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupInitContainerArgs\n {\n Name = \"init-busybox\",\n Image = \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n ImagePullPolicy = \"IfNotPresent\",\n Commands = new[]\n {\n \"echo\",\n },\n Args = new[]\n {\n \"hello initcontainer\",\n },\n },\n },\n Volumes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs\n {\n Name = \"empty1\",\n Type = \"EmptyDirVolume\",\n },\n new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs\n {\n Name = \"empty2\",\n Type = \"EmptyDirVolume\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewContainerGroup(ctx, \"default\", \u0026eci.ContainerGroupArgs{\n\t\t\tContainerGroupName: pulumi.String(name),\n\t\t\tCpu: pulumi.Float64(8),\n\t\t\tMemory: pulumi.Float64(16),\n\t\t\tRestartPolicy: pulumi.String(\"OnFailure\"),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tAutoCreateEip: pulumi.Bool(true),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tContainers: eci.ContainerGroupContainerArray{\n\t\t\t\t\u0026eci.ContainerGroupContainerArgs{\n\t\t\t\t\tImage: pulumi.String(\"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\"),\n\t\t\t\t\tName: pulumi.String(\"nginx\"),\n\t\t\t\t\tWorkingDir: pulumi.String(\"/tmp/nginx\"),\n\t\t\t\t\tImagePullPolicy: pulumi.String(\"IfNotPresent\"),\n\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"/bin/sh\"),\n\t\t\t\t\t\tpulumi.String(\"-c\"),\n\t\t\t\t\t\tpulumi.String(\"sleep 9999\"),\n\t\t\t\t\t},\n\t\t\t\t\tVolumeMounts: eci.ContainerGroupContainerVolumeMountArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerVolumeMountArgs{\n\t\t\t\t\t\t\tMountPath: pulumi.String(\"/tmp/example\"),\n\t\t\t\t\t\t\tReadOnly: pulumi.Bool(false),\n\t\t\t\t\t\t\tName: pulumi.String(\"empty1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tPorts: eci.ContainerGroupContainerPortArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerPortArgs{\n\t\t\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tEnvironmentVars: eci.ContainerGroupContainerEnvironmentVarArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerEnvironmentVarArgs{\n\t\t\t\t\t\t\tKey: pulumi.String(\"name\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"nginx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tLivenessProbes: eci.ContainerGroupContainerLivenessProbeArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerLivenessProbeArgs{\n\t\t\t\t\t\t\tPeriodSeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tInitialDelaySeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tSuccessThreshold: pulumi.Int(1),\n\t\t\t\t\t\t\tFailureThreshold: pulumi.Int(3),\n\t\t\t\t\t\t\tTimeoutSeconds: pulumi.Int(1),\n\t\t\t\t\t\t\tExecs: eci.ContainerGroupContainerLivenessProbeExecArray{\n\t\t\t\t\t\t\t\t\u0026eci.ContainerGroupContainerLivenessProbeExecArgs{\n\t\t\t\t\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"cat /tmp/healthy\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tReadinessProbes: eci.ContainerGroupContainerReadinessProbeArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerReadinessProbeArgs{\n\t\t\t\t\t\t\tPeriodSeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tInitialDelaySeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tSuccessThreshold: pulumi.Int(1),\n\t\t\t\t\t\t\tFailureThreshold: pulumi.Int(3),\n\t\t\t\t\t\t\tTimeoutSeconds: pulumi.Int(1),\n\t\t\t\t\t\t\tExecs: eci.ContainerGroupContainerReadinessProbeExecArray{\n\t\t\t\t\t\t\t\t\u0026eci.ContainerGroupContainerReadinessProbeExecArgs{\n\t\t\t\t\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"cat /tmp/healthy\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tInitContainers: eci.ContainerGroupInitContainerArray{\n\t\t\t\t\u0026eci.ContainerGroupInitContainerArgs{\n\t\t\t\t\tName: pulumi.String(\"init-busybox\"),\n\t\t\t\t\tImage: pulumi.String(\"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\"),\n\t\t\t\t\tImagePullPolicy: pulumi.String(\"IfNotPresent\"),\n\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"echo\"),\n\t\t\t\t\t},\n\t\t\t\t\tArgs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"hello initcontainer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tVolumes: eci.ContainerGroupVolumeArray{\n\t\t\t\t\u0026eci.ContainerGroupVolumeArgs{\n\t\t\t\t\tName: pulumi.String(\"empty1\"),\n\t\t\t\t\tType: pulumi.String(\"EmptyDirVolume\"),\n\t\t\t\t},\n\t\t\t\t\u0026eci.ContainerGroupVolumeArgs{\n\t\t\t\t\tName: pulumi.String(\"empty2\"),\n\t\t\t\t\tType: pulumi.String(\"EmptyDirVolume\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.eci.ContainerGroup;\nimport com.pulumi.alicloud.eci.ContainerGroupArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupContainerArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupInitContainerArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupVolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultContainerGroup = new ContainerGroup(\"defaultContainerGroup\", ContainerGroupArgs.builder()\n .containerGroupName(name)\n .cpu(8.0)\n .memory(16.0)\n .restartPolicy(\"OnFailure\")\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .autoCreateEip(true)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .containers(ContainerGroupContainerArgs.builder()\n .image(\"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\")\n .name(\"nginx\")\n .workingDir(\"/tmp/nginx\")\n .imagePullPolicy(\"IfNotPresent\")\n .commands( \n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\")\n .volumeMounts(ContainerGroupContainerVolumeMountArgs.builder()\n .mountPath(\"/tmp/example\")\n .readOnly(false)\n .name(\"empty1\")\n .build())\n .ports(ContainerGroupContainerPortArgs.builder()\n .port(80)\n .protocol(\"TCP\")\n .build())\n .environmentVars(ContainerGroupContainerEnvironmentVarArgs.builder()\n .key(\"name\")\n .value(\"nginx\")\n .build())\n .livenessProbes(ContainerGroupContainerLivenessProbeArgs.builder()\n .periodSeconds(5)\n .initialDelaySeconds(5)\n .successThreshold(1)\n .failureThreshold(3)\n .timeoutSeconds(1)\n .execs(ContainerGroupContainerLivenessProbeExecArgs.builder()\n .commands(\"cat /tmp/healthy\")\n .build())\n .build())\n .readinessProbes(ContainerGroupContainerReadinessProbeArgs.builder()\n .periodSeconds(5)\n .initialDelaySeconds(5)\n .successThreshold(1)\n .failureThreshold(3)\n .timeoutSeconds(1)\n .execs(ContainerGroupContainerReadinessProbeExecArgs.builder()\n .commands(\"cat /tmp/healthy\")\n .build())\n .build())\n .build())\n .initContainers(ContainerGroupInitContainerArgs.builder()\n .name(\"init-busybox\")\n .image(\"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\")\n .imagePullPolicy(\"IfNotPresent\")\n .commands(\"echo\")\n .args(\"hello initcontainer\")\n .build())\n .volumes( \n ContainerGroupVolumeArgs.builder()\n .name(\"empty1\")\n .type(\"EmptyDirVolume\")\n .build(),\n ContainerGroupVolumeArgs.builder()\n .name(\"empty2\")\n .type(\"EmptyDirVolume\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultContainerGroup:\n type: alicloud:eci:ContainerGroup\n name: default\n properties:\n containerGroupName: ${name}\n cpu: 8\n memory: 16\n restartPolicy: OnFailure\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n autoCreateEip: true\n tags:\n Created: TF\n For: example\n containers:\n - image: registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\n name: nginx\n workingDir: /tmp/nginx\n imagePullPolicy: IfNotPresent\n commands:\n - /bin/sh\n - -c\n - sleep 9999\n volumeMounts:\n - mountPath: /tmp/example\n readOnly: false\n name: empty1\n ports:\n - port: 80\n protocol: TCP\n environmentVars:\n - key: name\n value: nginx\n livenessProbes:\n - periodSeconds: '5'\n initialDelaySeconds: '5'\n successThreshold: '1'\n failureThreshold: '3'\n timeoutSeconds: '1'\n execs:\n - commands:\n - cat /tmp/healthy\n readinessProbes:\n - periodSeconds: '5'\n initialDelaySeconds: '5'\n successThreshold: '1'\n failureThreshold: '3'\n timeoutSeconds: '1'\n execs:\n - commands:\n - cat /tmp/healthy\n initContainers:\n - name: init-busybox\n image: registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\n imagePullPolicy: IfNotPresent\n commands:\n - echo\n args:\n - hello initcontainer\n volumes:\n - name: empty1\n type: EmptyDirVolume\n - name: empty2\n type: EmptyDirVolume\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECI Container Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/containerGroup:ContainerGroup example \u003ccontainer_group_id\u003e\n```\n\n",
+ "description": "Provides ECI Container Group resource.\n\nFor information about ECI Container Group and how to use it, see [What is Container Group](https://www.alibabacloud.com/help/en/elastic-container-instance/latest/api-eci-2018-08-08-createcontainergroup).\n\n\u003e **NOTE:** Available since v1.111.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultContainerGroup = new alicloud.eci.ContainerGroup(\"default\", {\n containerGroupName: name,\n cpu: 8,\n memory: 16,\n restartPolicy: \"OnFailure\",\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n autoCreateEip: true,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n containers: [{\n image: \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n name: \"nginx\",\n workingDir: \"/tmp/nginx\",\n imagePullPolicy: \"IfNotPresent\",\n commands: [\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n ],\n volumeMounts: [{\n mountPath: \"/tmp/example\",\n readOnly: false,\n name: \"empty1\",\n }],\n ports: [{\n port: 80,\n protocol: \"TCP\",\n }],\n environmentVars: [{\n key: \"name\",\n value: \"nginx\",\n }],\n livenessProbes: [{\n periodSeconds: 5,\n initialDelaySeconds: 5,\n successThreshold: 1,\n failureThreshold: 3,\n timeoutSeconds: 1,\n execs: [{\n commands: [\"cat /tmp/healthy\"],\n }],\n }],\n readinessProbes: [{\n periodSeconds: 5,\n initialDelaySeconds: 5,\n successThreshold: 1,\n failureThreshold: 3,\n timeoutSeconds: 1,\n execs: [{\n commands: [\"cat /tmp/healthy\"],\n }],\n }],\n }],\n initContainers: [{\n name: \"init-busybox\",\n image: \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n imagePullPolicy: \"IfNotPresent\",\n commands: [\"echo\"],\n args: [\"hello initcontainer\"],\n }],\n volumes: [\n {\n name: \"empty1\",\n type: \"EmptyDirVolume\",\n },\n {\n name: \"empty2\",\n type: \"EmptyDirVolume\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_container_group = alicloud.eci.ContainerGroup(\"default\",\n container_group_name=name,\n cpu=8,\n memory=16,\n restart_policy=\"OnFailure\",\n security_group_id=default_security_group.id,\n vswitch_id=default_switch.id,\n auto_create_eip=True,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n containers=[{\n \"image\": \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n \"name\": \"nginx\",\n \"working_dir\": \"/tmp/nginx\",\n \"image_pull_policy\": \"IfNotPresent\",\n \"commands\": [\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n ],\n \"volume_mounts\": [{\n \"mount_path\": \"/tmp/example\",\n \"read_only\": False,\n \"name\": \"empty1\",\n }],\n \"ports\": [{\n \"port\": 80,\n \"protocol\": \"TCP\",\n }],\n \"environment_vars\": [{\n \"key\": \"name\",\n \"value\": \"nginx\",\n }],\n \"liveness_probes\": [{\n \"period_seconds\": 5,\n \"initial_delay_seconds\": 5,\n \"success_threshold\": 1,\n \"failure_threshold\": 3,\n \"timeout_seconds\": 1,\n \"execs\": [{\n \"commands\": [\"cat /tmp/healthy\"],\n }],\n }],\n \"readiness_probes\": [{\n \"period_seconds\": 5,\n \"initial_delay_seconds\": 5,\n \"success_threshold\": 1,\n \"failure_threshold\": 3,\n \"timeout_seconds\": 1,\n \"execs\": [{\n \"commands\": [\"cat /tmp/healthy\"],\n }],\n }],\n }],\n init_containers=[{\n \"name\": \"init-busybox\",\n \"image\": \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n \"image_pull_policy\": \"IfNotPresent\",\n \"commands\": [\"echo\"],\n \"args\": [\"hello initcontainer\"],\n }],\n volumes=[\n {\n \"name\": \"empty1\",\n \"type\": \"EmptyDirVolume\",\n },\n {\n \"name\": \"empty2\",\n \"type\": \"EmptyDirVolume\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultContainerGroup = new AliCloud.Eci.ContainerGroup(\"default\", new()\n {\n ContainerGroupName = name,\n Cpu = 8,\n Memory = 16,\n RestartPolicy = \"OnFailure\",\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n AutoCreateEip = true,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n Containers = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerArgs\n {\n Image = \"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\",\n Name = \"nginx\",\n WorkingDir = \"/tmp/nginx\",\n ImagePullPolicy = \"IfNotPresent\",\n Commands = new[]\n {\n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\",\n },\n VolumeMounts = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerVolumeMountArgs\n {\n MountPath = \"/tmp/example\",\n ReadOnly = false,\n Name = \"empty1\",\n },\n },\n Ports = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerPortArgs\n {\n Port = 80,\n Protocol = \"TCP\",\n },\n },\n EnvironmentVars = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerEnvironmentVarArgs\n {\n Key = \"name\",\n Value = \"nginx\",\n },\n },\n LivenessProbes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeArgs\n {\n PeriodSeconds = 5,\n InitialDelaySeconds = 5,\n SuccessThreshold = 1,\n FailureThreshold = 3,\n TimeoutSeconds = 1,\n Execs = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerLivenessProbeExecArgs\n {\n Commands = new[]\n {\n \"cat /tmp/healthy\",\n },\n },\n },\n },\n },\n ReadinessProbes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeArgs\n {\n PeriodSeconds = 5,\n InitialDelaySeconds = 5,\n SuccessThreshold = 1,\n FailureThreshold = 3,\n TimeoutSeconds = 1,\n Execs = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupContainerReadinessProbeExecArgs\n {\n Commands = new[]\n {\n \"cat /tmp/healthy\",\n },\n },\n },\n },\n },\n },\n },\n InitContainers = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupInitContainerArgs\n {\n Name = \"init-busybox\",\n Image = \"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\",\n ImagePullPolicy = \"IfNotPresent\",\n Commands = new[]\n {\n \"echo\",\n },\n Args = new[]\n {\n \"hello initcontainer\",\n },\n },\n },\n Volumes = new[]\n {\n new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs\n {\n Name = \"empty1\",\n Type = \"EmptyDirVolume\",\n },\n new AliCloud.Eci.Inputs.ContainerGroupVolumeArgs\n {\n Name = \"empty2\",\n Type = \"EmptyDirVolume\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewContainerGroup(ctx, \"default\", \u0026eci.ContainerGroupArgs{\n\t\t\tContainerGroupName: pulumi.String(name),\n\t\t\tCpu: pulumi.Float64(8),\n\t\t\tMemory: pulumi.Float64(16),\n\t\t\tRestartPolicy: pulumi.String(\"OnFailure\"),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tAutoCreateEip: pulumi.Bool(true),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tContainers: eci.ContainerGroupContainerArray{\n\t\t\t\t\u0026eci.ContainerGroupContainerArgs{\n\t\t\t\t\tImage: pulumi.String(\"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\"),\n\t\t\t\t\tName: pulumi.String(\"nginx\"),\n\t\t\t\t\tWorkingDir: pulumi.String(\"/tmp/nginx\"),\n\t\t\t\t\tImagePullPolicy: pulumi.String(\"IfNotPresent\"),\n\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"/bin/sh\"),\n\t\t\t\t\t\tpulumi.String(\"-c\"),\n\t\t\t\t\t\tpulumi.String(\"sleep 9999\"),\n\t\t\t\t\t},\n\t\t\t\t\tVolumeMounts: eci.ContainerGroupContainerVolumeMountArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerVolumeMountArgs{\n\t\t\t\t\t\t\tMountPath: pulumi.String(\"/tmp/example\"),\n\t\t\t\t\t\t\tReadOnly: pulumi.Bool(false),\n\t\t\t\t\t\t\tName: pulumi.String(\"empty1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tPorts: eci.ContainerGroupContainerPortArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerPortArgs{\n\t\t\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tEnvironmentVars: eci.ContainerGroupContainerEnvironmentVarArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerEnvironmentVarArgs{\n\t\t\t\t\t\t\tKey: pulumi.String(\"name\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"nginx\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tLivenessProbes: eci.ContainerGroupContainerLivenessProbeArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerLivenessProbeArgs{\n\t\t\t\t\t\t\tPeriodSeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tInitialDelaySeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tSuccessThreshold: pulumi.Int(1),\n\t\t\t\t\t\t\tFailureThreshold: pulumi.Int(3),\n\t\t\t\t\t\t\tTimeoutSeconds: pulumi.Int(1),\n\t\t\t\t\t\t\tExecs: eci.ContainerGroupContainerLivenessProbeExecArray{\n\t\t\t\t\t\t\t\t\u0026eci.ContainerGroupContainerLivenessProbeExecArgs{\n\t\t\t\t\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"cat /tmp/healthy\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tReadinessProbes: eci.ContainerGroupContainerReadinessProbeArray{\n\t\t\t\t\t\t\u0026eci.ContainerGroupContainerReadinessProbeArgs{\n\t\t\t\t\t\t\tPeriodSeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tInitialDelaySeconds: pulumi.Int(5),\n\t\t\t\t\t\t\tSuccessThreshold: pulumi.Int(1),\n\t\t\t\t\t\t\tFailureThreshold: pulumi.Int(3),\n\t\t\t\t\t\t\tTimeoutSeconds: pulumi.Int(1),\n\t\t\t\t\t\t\tExecs: eci.ContainerGroupContainerReadinessProbeExecArray{\n\t\t\t\t\t\t\t\t\u0026eci.ContainerGroupContainerReadinessProbeExecArgs{\n\t\t\t\t\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"cat /tmp/healthy\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tInitContainers: eci.ContainerGroupInitContainerArray{\n\t\t\t\t\u0026eci.ContainerGroupInitContainerArgs{\n\t\t\t\t\tName: pulumi.String(\"init-busybox\"),\n\t\t\t\t\tImage: pulumi.String(\"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\"),\n\t\t\t\t\tImagePullPolicy: pulumi.String(\"IfNotPresent\"),\n\t\t\t\t\tCommands: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"echo\"),\n\t\t\t\t\t},\n\t\t\t\t\tArgs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"hello initcontainer\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tVolumes: eci.ContainerGroupVolumeArray{\n\t\t\t\t\u0026eci.ContainerGroupVolumeArgs{\n\t\t\t\t\tName: pulumi.String(\"empty1\"),\n\t\t\t\t\tType: pulumi.String(\"EmptyDirVolume\"),\n\t\t\t\t},\n\t\t\t\t\u0026eci.ContainerGroupVolumeArgs{\n\t\t\t\t\tName: pulumi.String(\"empty2\"),\n\t\t\t\t\tType: pulumi.String(\"EmptyDirVolume\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.eci.ContainerGroup;\nimport com.pulumi.alicloud.eci.ContainerGroupArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupContainerArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupInitContainerArgs;\nimport com.pulumi.alicloud.eci.inputs.ContainerGroupVolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultContainerGroup = new ContainerGroup(\"defaultContainerGroup\", ContainerGroupArgs.builder()\n .containerGroupName(name)\n .cpu(8.0)\n .memory(16.0)\n .restartPolicy(\"OnFailure\")\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .autoCreateEip(true)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .containers(ContainerGroupContainerArgs.builder()\n .image(\"registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\")\n .name(\"nginx\")\n .workingDir(\"/tmp/nginx\")\n .imagePullPolicy(\"IfNotPresent\")\n .commands( \n \"/bin/sh\",\n \"-c\",\n \"sleep 9999\")\n .volumeMounts(ContainerGroupContainerVolumeMountArgs.builder()\n .mountPath(\"/tmp/example\")\n .readOnly(false)\n .name(\"empty1\")\n .build())\n .ports(ContainerGroupContainerPortArgs.builder()\n .port(80)\n .protocol(\"TCP\")\n .build())\n .environmentVars(ContainerGroupContainerEnvironmentVarArgs.builder()\n .key(\"name\")\n .value(\"nginx\")\n .build())\n .livenessProbes(ContainerGroupContainerLivenessProbeArgs.builder()\n .periodSeconds(5)\n .initialDelaySeconds(5)\n .successThreshold(1)\n .failureThreshold(3)\n .timeoutSeconds(1)\n .execs(ContainerGroupContainerLivenessProbeExecArgs.builder()\n .commands(\"cat /tmp/healthy\")\n .build())\n .build())\n .readinessProbes(ContainerGroupContainerReadinessProbeArgs.builder()\n .periodSeconds(5)\n .initialDelaySeconds(5)\n .successThreshold(1)\n .failureThreshold(3)\n .timeoutSeconds(1)\n .execs(ContainerGroupContainerReadinessProbeExecArgs.builder()\n .commands(\"cat /tmp/healthy\")\n .build())\n .build())\n .build())\n .initContainers(ContainerGroupInitContainerArgs.builder()\n .name(\"init-busybox\")\n .image(\"registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\")\n .imagePullPolicy(\"IfNotPresent\")\n .commands(\"echo\")\n .args(\"hello initcontainer\")\n .build())\n .volumes( \n ContainerGroupVolumeArgs.builder()\n .name(\"empty1\")\n .type(\"EmptyDirVolume\")\n .build(),\n ContainerGroupVolumeArgs.builder()\n .name(\"empty2\")\n .type(\"EmptyDirVolume\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultContainerGroup:\n type: alicloud:eci:ContainerGroup\n name: default\n properties:\n containerGroupName: ${name}\n cpu: 8\n memory: 16\n restartPolicy: OnFailure\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n autoCreateEip: true\n tags:\n Created: TF\n For: example\n containers:\n - image: registry.cn-beijing.aliyuncs.com/eci_open/nginx:alpine\n name: nginx\n workingDir: /tmp/nginx\n imagePullPolicy: IfNotPresent\n commands:\n - /bin/sh\n - -c\n - sleep 9999\n volumeMounts:\n - mountPath: /tmp/example\n readOnly: false\n name: empty1\n ports:\n - port: 80\n protocol: TCP\n environmentVars:\n - key: name\n value: nginx\n livenessProbes:\n - periodSeconds: '5'\n initialDelaySeconds: '5'\n successThreshold: '1'\n failureThreshold: '3'\n timeoutSeconds: '1'\n execs:\n - commands:\n - cat /tmp/healthy\n readinessProbes:\n - periodSeconds: '5'\n initialDelaySeconds: '5'\n successThreshold: '1'\n failureThreshold: '3'\n timeoutSeconds: '1'\n execs:\n - commands:\n - cat /tmp/healthy\n initContainers:\n - name: init-busybox\n image: registry.cn-beijing.aliyuncs.com/eci_open/busybox:1.30\n imagePullPolicy: IfNotPresent\n commands:\n - echo\n args:\n - hello initcontainer\n volumes:\n - name: empty1\n type: EmptyDirVolume\n - name: empty2\n type: EmptyDirVolume\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECI Container Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/containerGroup:ContainerGroup example \u003ccontainer_group_id\u003e\n```\n\n",
"properties": {
"acrRegistryInfos": {
"type": "array",
@@ -150043,7 +152672,7 @@
}
},
"alicloud:eci/imageCache:ImageCache": {
- "description": "An ECI Image Cache can help user to solve the time-consuming problem of image pull. For information about Alicloud ECI Image Cache and how to use it, see [What is Resource Alicloud ECI Image Cache](https://www.alibabacloud.com/help/doc-detail/146891.htm).\n\n\u003e **NOTE:** Available since v1.89.0.\n\n\u003e **NOTE:** Each image cache corresponds to a snapshot, and the user does not delete the snapshot directly, otherwise the cache will fail.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {\n isp: \"BGP\",\n addressName: name,\n netmode: \"public\",\n bandwidth: \"1\",\n securityProtectionTypes: [\"AntiDDoS_Enhanced\"],\n paymentType: \"PayAsYouGo\",\n});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultImageCache = new alicloud.eci.ImageCache(\"default\", {\n imageCacheName: name,\n images: [defaultGetRegions.then(defaultGetRegions =\u003e `registry-vpc.${defaultGetRegions.regions?.[0]?.id}.aliyuncs.com/eci_open/nginx:alpine`)],\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n eipInstanceId: defaultEipAddress.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\",\n isp=\"BGP\",\n address_name=name,\n netmode=\"public\",\n bandwidth=\"1\",\n security_protection_types=[\"AntiDDoS_Enhanced\"],\n payment_type=\"PayAsYouGo\")\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_image_cache = alicloud.eci.ImageCache(\"default\",\n image_cache_name=name,\n images=[f\"registry-vpc.{default_get_regions.regions[0].id}.aliyuncs.com/eci_open/nginx:alpine\"],\n security_group_id=default_security_group.id,\n vswitch_id=default_switch.id,\n eip_instance_id=default_eip_address.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n Isp = \"BGP\",\n AddressName = name,\n Netmode = \"public\",\n Bandwidth = \"1\",\n SecurityProtectionTypes = new[]\n {\n \"AntiDDoS_Enhanced\",\n },\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultImageCache = new AliCloud.Eci.ImageCache(\"default\", new()\n {\n ImageCacheName = name,\n Images = new[]\n {\n $\"registry-vpc.{defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}.aliyuncs.com/eci_open/nginx:alpine\",\n },\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n EipInstanceId = defaultEipAddress.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t\tBandwidth: pulumi.String(\"1\"),\n\t\t\tSecurityProtectionTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"AntiDDoS_Enhanced\"),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewImageCache(ctx, \"default\", \u0026eci.ImageCacheArgs{\n\t\t\tImageCacheName: pulumi.String(name),\n\t\t\tImages: pulumi.StringArray{\n\t\t\t\tpulumi.Sprintf(\"registry-vpc.%v.aliyuncs.com/eci_open/nginx:alpine\", defaultGetRegions.Regions[0].Id),\n\t\t\t},\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tEipInstanceId: defaultEipAddress.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.eci.ImageCache;\nimport com.pulumi.alicloud.eci.ImageCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .isp(\"BGP\")\n .addressName(name)\n .netmode(\"public\")\n .bandwidth(\"1\")\n .securityProtectionTypes(\"AntiDDoS_Enhanced\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultImageCache = new ImageCache(\"defaultImageCache\", ImageCacheArgs.builder()\n .imageCacheName(name)\n .images(String.format(\"registry-vpc.%s.aliyuncs.com/eci_open/nginx:alpine\", defaultGetRegions.regions()[0].id()))\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .eipInstanceId(defaultEipAddress.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n isp: BGP\n addressName: ${name}\n netmode: public\n bandwidth: '1'\n securityProtectionTypes:\n - AntiDDoS_Enhanced\n paymentType: PayAsYouGo\n defaultImageCache:\n type: alicloud:eci:ImageCache\n name: default\n properties:\n imageCacheName: ${name}\n images:\n - registry-vpc.${defaultGetRegions.regions[0].id}.aliyuncs.com/eci_open/nginx:alpine\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n eipInstanceId: ${defaultEipAddress.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECI Image Cache can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/imageCache:ImageCache example abc123456\n```\n\n",
+ "description": "An ECI Image Cache can help user to solve the time-consuming problem of image pull. For information about Alicloud ECI Image Cache and how to use it, see [What is Resource Alicloud ECI Image Cache](https://www.alibabacloud.com/help/doc-detail/146891.htm).\n\n\u003e **NOTE:** Available since v1.89.0.\n\n\u003e **NOTE:** Each image cache corresponds to a snapshot, and the user does not delete the snapshot directly, otherwise the cache will fail.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {\n isp: \"BGP\",\n addressName: name,\n netmode: \"public\",\n bandwidth: \"1\",\n securityProtectionTypes: [\"AntiDDoS_Enhanced\"],\n paymentType: \"PayAsYouGo\",\n});\nconst defaultGetRegions = alicloud.getRegions({\n current: true,\n});\nconst defaultImageCache = new alicloud.eci.ImageCache(\"default\", {\n imageCacheName: name,\n images: [defaultGetRegions.then(defaultGetRegions =\u003e `registry-vpc.${defaultGetRegions.regions?.[0]?.id}.aliyuncs.com/eci_open/nginx:alpine`)],\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n eipInstanceId: defaultEipAddress.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\",\n isp=\"BGP\",\n address_name=name,\n netmode=\"public\",\n bandwidth=\"1\",\n security_protection_types=[\"AntiDDoS_Enhanced\"],\n payment_type=\"PayAsYouGo\")\ndefault_get_regions = alicloud.get_regions(current=True)\ndefault_image_cache = alicloud.eci.ImageCache(\"default\",\n image_cache_name=name,\n images=[f\"registry-vpc.{default_get_regions.regions[0].id}.aliyuncs.com/eci_open/nginx:alpine\"],\n security_group_id=default_security_group.id,\n vswitch_id=default_switch.id,\n eip_instance_id=default_eip_address.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n Isp = \"BGP\",\n AddressName = name,\n Netmode = \"public\",\n Bandwidth = \"1\",\n SecurityProtectionTypes = new[]\n {\n \"AntiDDoS_Enhanced\",\n },\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultGetRegions = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultImageCache = new AliCloud.Eci.ImageCache(\"default\", new()\n {\n ImageCacheName = name,\n Images = new[]\n {\n $\"registry-vpc.{defaultGetRegions.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)}.aliyuncs.com/eci_open/nginx:alpine\",\n },\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n EipInstanceId = defaultEipAddress.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t\tBandwidth: pulumi.String(\"1\"),\n\t\t\tSecurityProtectionTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"AntiDDoS_Enhanced\"),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetRegions, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewImageCache(ctx, \"default\", \u0026eci.ImageCacheArgs{\n\t\t\tImageCacheName: pulumi.String(name),\n\t\t\tImages: pulumi.StringArray{\n\t\t\t\tpulumi.Sprintf(\"registry-vpc.%v.aliyuncs.com/eci_open/nginx:alpine\", defaultGetRegions.Regions[0].Id),\n\t\t\t},\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tEipInstanceId: defaultEipAddress.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.eci.ImageCache;\nimport com.pulumi.alicloud.eci.ImageCacheArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .isp(\"BGP\")\n .addressName(name)\n .netmode(\"public\")\n .bandwidth(\"1\")\n .securityProtectionTypes(\"AntiDDoS_Enhanced\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultImageCache = new ImageCache(\"defaultImageCache\", ImageCacheArgs.builder()\n .imageCacheName(name)\n .images(String.format(\"registry-vpc.%s.aliyuncs.com/eci_open/nginx:alpine\", defaultGetRegions.regions()[0].id()))\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .eipInstanceId(defaultEipAddress.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n isp: BGP\n addressName: ${name}\n netmode: public\n bandwidth: '1'\n securityProtectionTypes:\n - AntiDDoS_Enhanced\n paymentType: PayAsYouGo\n defaultImageCache:\n type: alicloud:eci:ImageCache\n name: default\n properties:\n imageCacheName: ${name}\n images:\n - registry-vpc.${defaultGetRegions.regions[0].id}.aliyuncs.com/eci_open/nginx:alpine\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n eipInstanceId: ${defaultEipAddress.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n defaultGetRegions:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECI Image Cache can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/imageCache:ImageCache example abc123456\n```\n\n",
"properties": {
"containerGroupId": {
"type": "string",
@@ -150410,7 +153039,7 @@
}
},
"alicloud:eci/virtualNode:VirtualNode": {
- "description": "Provides a ECI Virtual Node resource.\n\nFor information about ECI Virtual Node and how to use it, see [What is Virtual Node](https://www.alibabacloud.com/help/en/doc-detail/89129.html).\n\n\u003e **NOTE:** Available since v1.145.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {\n isp: \"BGP\",\n addressName: name,\n netmode: \"public\",\n bandwidth: \"1\",\n securityProtectionTypes: [\"AntiDDoS_Enhanced\"],\n paymentType: \"PayAsYouGo\",\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultVirtualNode = new alicloud.eci.VirtualNode(\"default\", {\n securityGroupId: defaultSecurityGroup.id,\n virtualNodeName: name,\n vswitchId: defaultSwitch.id,\n enablePublicNetwork: false,\n eipInstanceId: defaultEipAddress.id,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n kubeConfig: \"kube_config\",\n tags: {\n Created: \"TF\",\n },\n taints: [{\n effect: \"NoSchedule\",\n key: \"TF\",\n value: \"example\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\",\n isp=\"BGP\",\n address_name=name,\n netmode=\"public\",\n bandwidth=\"1\",\n security_protection_types=[\"AntiDDoS_Enhanced\"],\n payment_type=\"PayAsYouGo\")\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_virtual_node = alicloud.eci.VirtualNode(\"default\",\n security_group_id=default_security_group.id,\n virtual_node_name=name,\n vswitch_id=default_switch.id,\n enable_public_network=False,\n eip_instance_id=default_eip_address.id,\n resource_group_id=default_get_resource_groups.groups[0].id,\n kube_config=\"kube_config\",\n tags={\n \"Created\": \"TF\",\n },\n taints=[{\n \"effect\": \"NoSchedule\",\n \"key\": \"TF\",\n \"value\": \"example\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n Isp = \"BGP\",\n AddressName = name,\n Netmode = \"public\",\n Bandwidth = \"1\",\n SecurityProtectionTypes = new[]\n {\n \"AntiDDoS_Enhanced\",\n },\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultVirtualNode = new AliCloud.Eci.VirtualNode(\"default\", new()\n {\n SecurityGroupId = defaultSecurityGroup.Id,\n VirtualNodeName = name,\n VswitchId = defaultSwitch.Id,\n EnablePublicNetwork = false,\n EipInstanceId = defaultEipAddress.Id,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n KubeConfig = \"kube_config\",\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n Taints = new[]\n {\n new AliCloud.Eci.Inputs.VirtualNodeTaintArgs\n {\n Effect = \"NoSchedule\",\n Key = \"TF\",\n Value = \"example\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t\tBandwidth: pulumi.String(\"1\"),\n\t\t\tSecurityProtectionTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"AntiDDoS_Enhanced\"),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewVirtualNode(ctx, \"default\", \u0026eci.VirtualNodeArgs{\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVirtualNodeName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tEnablePublicNetwork: pulumi.Bool(false),\n\t\t\tEipInstanceId: defaultEipAddress.ID(),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tKubeConfig: pulumi.String(\"kube_config\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tTaints: eci.VirtualNodeTaintArray{\n\t\t\t\t\u0026eci.VirtualNodeTaintArgs{\n\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\tKey: pulumi.String(\"TF\"),\n\t\t\t\t\tValue: pulumi.String(\"example\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.eci.VirtualNode;\nimport com.pulumi.alicloud.eci.VirtualNodeArgs;\nimport com.pulumi.alicloud.eci.inputs.VirtualNodeTaintArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .isp(\"BGP\")\n .addressName(name)\n .netmode(\"public\")\n .bandwidth(\"1\")\n .securityProtectionTypes(\"AntiDDoS_Enhanced\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultVirtualNode = new VirtualNode(\"defaultVirtualNode\", VirtualNodeArgs.builder()\n .securityGroupId(defaultSecurityGroup.id())\n .virtualNodeName(name)\n .vswitchId(defaultSwitch.id())\n .enablePublicNetwork(false)\n .eipInstanceId(defaultEipAddress.id())\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .kubeConfig(\"kube_config\")\n .tags(Map.of(\"Created\", \"TF\"))\n .taints(VirtualNodeTaintArgs.builder()\n .effect(\"NoSchedule\")\n .key(\"TF\")\n .value(\"example\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n isp: BGP\n addressName: ${name}\n netmode: public\n bandwidth: '1'\n securityProtectionTypes:\n - AntiDDoS_Enhanced\n paymentType: PayAsYouGo\n defaultVirtualNode:\n type: alicloud:eci:VirtualNode\n name: default\n properties:\n securityGroupId: ${defaultSecurityGroup.id}\n virtualNodeName: ${name}\n vswitchId: ${defaultSwitch.id}\n enablePublicNetwork: false\n eipInstanceId: ${defaultEipAddress.id}\n resourceGroupId: ${defaultGetResourceGroups.groups[0].id}\n kubeConfig: kube_config\n tags:\n Created: TF\n taints:\n - effect: NoSchedule\n key: TF\n value: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECI Virtual Node can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/virtualNode:VirtualNode example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECI Virtual Node resource.\n\nFor information about ECI Virtual Node and how to use it, see [What is Virtual Node](https://www.alibabacloud.com/help/en/doc-detail/89129.html).\n\n\u003e **NOTE:** Available since v1.145.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.eci.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.0.0.0/8\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.1.0.0/16\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneIds?.[0]),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultEipAddress = new alicloud.ecs.EipAddress(\"default\", {\n isp: \"BGP\",\n addressName: name,\n netmode: \"public\",\n bandwidth: \"1\",\n securityProtectionTypes: [\"AntiDDoS_Enhanced\"],\n paymentType: \"PayAsYouGo\",\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultVirtualNode = new alicloud.eci.VirtualNode(\"default\", {\n securityGroupId: defaultSecurityGroup.id,\n virtualNodeName: name,\n vswitchId: defaultSwitch.id,\n enablePublicNetwork: false,\n eipInstanceId: defaultEipAddress.id,\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.groups?.[0]?.id),\n kubeConfig: \"kube_config\",\n tags: {\n Created: \"TF\",\n },\n taints: [{\n effect: \"NoSchedule\",\n key: \"TF\",\n value: \"example\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.eci.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.0.0.0/8\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.1.0.0/16\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].zone_ids[0])\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_eip_address = alicloud.ecs.EipAddress(\"default\",\n isp=\"BGP\",\n address_name=name,\n netmode=\"public\",\n bandwidth=\"1\",\n security_protection_types=[\"AntiDDoS_Enhanced\"],\n payment_type=\"PayAsYouGo\")\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_virtual_node = alicloud.eci.VirtualNode(\"default\",\n security_group_id=default_security_group.id,\n virtual_node_name=name,\n vswitch_id=default_switch.id,\n enable_public_network=False,\n eip_instance_id=default_eip_address.id,\n resource_group_id=default_get_resource_groups.groups[0].id,\n kube_config=\"kube_config\",\n tags={\n \"Created\": \"TF\",\n },\n taints=[{\n \"effect\": \"NoSchedule\",\n \"key\": \"TF\",\n \"value\": \"example\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.Eci.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.0.0.0/8\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.1.0.0/16\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneIds[0])),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEipAddress = new AliCloud.Ecs.EipAddress(\"default\", new()\n {\n Isp = \"BGP\",\n AddressName = name,\n Netmode = \"public\",\n Bandwidth = \"1\",\n SecurityProtectionTypes = new[]\n {\n \"AntiDDoS_Enhanced\",\n },\n PaymentType = \"PayAsYouGo\",\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultVirtualNode = new AliCloud.Eci.VirtualNode(\"default\", new()\n {\n SecurityGroupId = defaultSecurityGroup.Id,\n VirtualNodeName = name,\n VswitchId = defaultSwitch.Id,\n EnablePublicNetwork = false,\n EipInstanceId = defaultEipAddress.Id,\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id),\n KubeConfig = \"kube_config\",\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n Taints = new[]\n {\n new AliCloud.Eci.Inputs.VirtualNodeTaintArgs\n {\n Effect = \"NoSchedule\",\n Key = \"TF\",\n Value = \"example\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eci\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eci.GetZones(ctx, \u0026eci.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/8\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.1.0.0/16\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneIds[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEipAddress, err := ecs.NewEipAddress(ctx, \"default\", \u0026ecs.EipAddressArgs{\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tAddressName: pulumi.String(name),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t\tBandwidth: pulumi.String(\"1\"),\n\t\t\tSecurityProtectionTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"AntiDDoS_Enhanced\"),\n\t\t\t},\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eci.NewVirtualNode(ctx, \"default\", \u0026eci.VirtualNodeArgs{\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tVirtualNodeName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tEnablePublicNetwork: pulumi.Bool(false),\n\t\t\tEipInstanceId: defaultEipAddress.ID(),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Groups[0].Id),\n\t\t\tKubeConfig: pulumi.String(\"kube_config\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t\tTaints: eci.VirtualNodeTaintArray{\n\t\t\t\t\u0026eci.VirtualNodeTaintArgs{\n\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\tKey: pulumi.String(\"TF\"),\n\t\t\t\t\tValue: pulumi.String(\"example\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eci.EciFunctions;\nimport com.pulumi.alicloud.eci.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.eci.VirtualNode;\nimport com.pulumi.alicloud.eci.VirtualNodeArgs;\nimport com.pulumi.alicloud.eci.inputs.VirtualNodeTaintArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = EciFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.0.0.0/8\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.1.0.0/16\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].zoneIds()[0])\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEipAddress = new EipAddress(\"defaultEipAddress\", EipAddressArgs.builder()\n .isp(\"BGP\")\n .addressName(name)\n .netmode(\"public\")\n .bandwidth(\"1\")\n .securityProtectionTypes(\"AntiDDoS_Enhanced\")\n .paymentType(\"PayAsYouGo\")\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultVirtualNode = new VirtualNode(\"defaultVirtualNode\", VirtualNodeArgs.builder()\n .securityGroupId(defaultSecurityGroup.id())\n .virtualNodeName(name)\n .vswitchId(defaultSwitch.id())\n .enablePublicNetwork(false)\n .eipInstanceId(defaultEipAddress.id())\n .resourceGroupId(defaultGetResourceGroups.groups()[0].id())\n .kubeConfig(\"kube_config\")\n .tags(Map.of(\"Created\", \"TF\"))\n .taints(VirtualNodeTaintArgs.builder()\n .effect(\"NoSchedule\")\n .key(\"TF\")\n .value(\"example\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.0.0.0/8\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.1.0.0/16\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].zoneIds[0]}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEipAddress:\n type: alicloud:ecs:EipAddress\n name: default\n properties:\n isp: BGP\n addressName: ${name}\n netmode: public\n bandwidth: '1'\n securityProtectionTypes:\n - AntiDDoS_Enhanced\n paymentType: PayAsYouGo\n defaultVirtualNode:\n type: alicloud:eci:VirtualNode\n name: default\n properties:\n securityGroupId: ${defaultSecurityGroup.id}\n virtualNodeName: ${name}\n vswitchId: ${defaultSwitch.id}\n enablePublicNetwork: false\n eipInstanceId: ${defaultEipAddress.id}\n resourceGroupId: ${defaultGetResourceGroups.groups[0].id}\n kubeConfig: kube_config\n tags:\n Created: TF\n taints:\n - effect: NoSchedule\n key: TF\n value: example\nvariables:\n default:\n fn::invoke:\n function: alicloud:eci:getZones\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECI Virtual Node can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eci/virtualNode:VirtualNode example \u003cid\u003e\n```\n\n",
"properties": {
"eipInstanceId": {
"type": "string",
@@ -150598,7 +153227,7 @@
}
},
"alicloud:ecp/instance:Instance": {
- "description": "Provides a Elastic Cloud Phone (ECP) Instance resource.\n\nFor information about Elastic Cloud Phone (ECP) Instance and how to use it, see [What is Instance](https://next.api.aliyun.com/document/cloudphone/2020-12-30/RunInstances).\n\n\u003e **NOTE:** Available since v1.158.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.ecp.getZones({});\nconst defaultGetInstanceTypes = alicloud.ecp.getInstanceTypes({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneId),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n});\nconst defaultKeyPair = new alicloud.ecp.KeyPair(\"default\", {\n keyPairName: `${name}-${defaultInteger.result}`,\n publicKeyBody: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\nconst defaultInstance = new alicloud.ecp.Instance(\"default\", {\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.instanceType),\n imageId: \"android-image-release5501072_a11_20240530.raw\",\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n keyPairName: defaultKeyPair.keyPairName,\n vncPassword: \"Ecp123\",\n paymentType: \"PayAsYouGo\",\n instanceName: name,\n description: name,\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecp.get_zones()\ndefault_get_instance_types = alicloud.ecp.get_instance_types()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].zone_id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id)\ndefault_key_pair = alicloud.ecp.KeyPair(\"default\",\n key_pair_name=f\"{name}-{default_integer['result']}\",\n public_key_body=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\ndefault_instance = alicloud.ecp.Instance(\"default\",\n instance_type=default_get_instance_types.instance_types[0].instance_type,\n image_id=\"android-image-release5501072_a11_20240530.raw\",\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n key_pair_name=default_key_pair.key_pair_name,\n vnc_password=\"Ecp123\",\n payment_type=\"PayAsYouGo\",\n instance_name=name,\n description=name,\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Ecp.GetZones.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecp.GetInstanceTypes.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneId)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultKeyPair = new AliCloud.Ecp.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n PublicKeyBody = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n var defaultInstance = new AliCloud.Ecp.Instance(\"default\", new()\n {\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.InstanceType),\n ImageId = \"android-image-release5501072_a11_20240530.raw\",\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n KeyPairName = defaultKeyPair.KeyPairName,\n VncPassword = \"Ecp123\",\n PaymentType = \"PayAsYouGo\",\n InstanceName = name,\n Description = name,\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecp\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ecp.GetZones(ctx, \u0026ecp.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecp.GetInstanceTypes(ctx, \u0026ecp.GetInstanceTypesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.192.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKeyPair, err := ecp.NewKeyPair(ctx, \"default\", \u0026ecp.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPublicKeyBody: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecp.NewInstance(ctx, \"default\", \u0026ecp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].InstanceType),\n\t\t\tImageId: pulumi.String(\"android-image-release5501072_a11_20240530.raw\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tKeyPairName: defaultKeyPair.KeyPairName,\n\t\t\tVncPassword: pulumi.String(\"Ecp123\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecp.EcpFunctions;\nimport com.pulumi.alicloud.ecp.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecp.inputs.GetInstanceTypesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecp.KeyPair;\nimport com.pulumi.alicloud.ecp.KeyPairArgs;\nimport com.pulumi.alicloud.ecp.Instance;\nimport com.pulumi.alicloud.ecp.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EcpFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcpFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].zoneId())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .publicKeyBody(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].instanceType())\n .imageId(\"android-image-release5501072_a11_20240530.raw\")\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .keyPairName(defaultKeyPair.keyPairName())\n .vncPassword(\"Ecp123\")\n .paymentType(\"PayAsYouGo\")\n .instanceName(name)\n .description(name)\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 192.168.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.192.0/24\n zoneId: ${default.zones[0].zoneId}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n defaultKeyPair:\n type: alicloud:ecp:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n publicKeyBody: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n defaultInstance:\n type: alicloud:ecp:Instance\n name: default\n properties:\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].instanceType}\n imageId: android-image-release5501072_a11_20240530.raw\n vswitchId: ${defaultSwitch.id}\n securityGroupId: ${defaultSecurityGroup.id}\n keyPairName: ${defaultKeyPair.keyPairName}\n vncPassword: Ecp123\n paymentType: PayAsYouGo\n instanceName: ${name}\n description: ${name}\n force: 'true'\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecp:getZones\n arguments: {}\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecp:getInstanceTypes\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nElastic Cloud Phone (ECP) Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecp/instance:Instance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Elastic Cloud Phone (ECP) Instance resource.\n\nFor information about Elastic Cloud Phone (ECP) Instance and how to use it, see [What is Instance](https://next.api.aliyun.com/document/cloudphone/2020-12-30/RunInstances).\n\n\u003e **NOTE:** Available since v1.158.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.ecp.getZones({});\nconst defaultGetInstanceTypes = alicloud.ecp.getInstanceTypes({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.zoneId),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n});\nconst defaultKeyPair = new alicloud.ecp.KeyPair(\"default\", {\n keyPairName: `${name}-${defaultInteger.result}`,\n publicKeyBody: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\nconst defaultInstance = new alicloud.ecp.Instance(\"default\", {\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.instanceType),\n imageId: \"android-image-release5501072_a11_20240530.raw\",\n vswitchId: defaultSwitch.id,\n securityGroupId: defaultSecurityGroup.id,\n keyPairName: defaultKeyPair.keyPairName,\n vncPassword: \"Ecp123\",\n paymentType: \"PayAsYouGo\",\n instanceName: name,\n description: name,\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecp.get_zones()\ndefault_get_instance_types = alicloud.ecp.get_instance_types()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].zone_id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id)\ndefault_key_pair = alicloud.ecp.KeyPair(\"default\",\n key_pair_name=f\"{name}-{default_integer['result']}\",\n public_key_body=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\ndefault_instance = alicloud.ecp.Instance(\"default\",\n instance_type=default_get_instance_types.instance_types[0].instance_type,\n image_id=\"android-image-release5501072_a11_20240530.raw\",\n vswitch_id=default_switch.id,\n security_group_id=default_security_group.id,\n key_pair_name=default_key_pair.key_pair_name,\n vnc_password=\"Ecp123\",\n payment_type=\"PayAsYouGo\",\n instance_name=name,\n description=name,\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Ecp.GetZones.Invoke();\n\n var defaultGetInstanceTypes = AliCloud.Ecp.GetInstanceTypes.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.ZoneId)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultKeyPair = new AliCloud.Ecp.KeyPair(\"default\", new()\n {\n KeyPairName = $\"{name}-{defaultInteger.Result}\",\n PublicKeyBody = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n var defaultInstance = new AliCloud.Ecp.Instance(\"default\", new()\n {\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.InstanceType),\n ImageId = \"android-image-release5501072_a11_20240530.raw\",\n VswitchId = defaultSwitch.Id,\n SecurityGroupId = defaultSecurityGroup.Id,\n KeyPairName = defaultKeyPair.KeyPairName,\n VncPassword = \"Ecp123\",\n PaymentType = \"PayAsYouGo\",\n InstanceName = name,\n Description = name,\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecp\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := ecp.GetZones(ctx, \u0026ecp.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecp.GetInstanceTypes(ctx, \u0026ecp.GetInstanceTypesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"192.168.192.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].ZoneId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultKeyPair, err := ecp.NewKeyPair(ctx, \"default\", \u0026ecp.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tPublicKeyBody: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecp.NewInstance(ctx, \"default\", \u0026ecp.InstanceArgs{\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].InstanceType),\n\t\t\tImageId: pulumi.String(\"android-image-release5501072_a11_20240530.raw\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tKeyPairName: defaultKeyPair.KeyPairName,\n\t\t\tVncPassword: pulumi.String(\"Ecp123\"),\n\t\t\tPaymentType: pulumi.String(\"PayAsYouGo\"),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tForce: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecp.EcpFunctions;\nimport com.pulumi.alicloud.ecp.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecp.inputs.GetInstanceTypesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecp.KeyPair;\nimport com.pulumi.alicloud.ecp.KeyPairArgs;\nimport com.pulumi.alicloud.ecp.Instance;\nimport com.pulumi.alicloud.ecp.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EcpFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n final var defaultGetInstanceTypes = EcpFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].zoneId())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultKeyPair = new KeyPair(\"defaultKeyPair\", KeyPairArgs.builder()\n .keyPairName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .publicKeyBody(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].instanceType())\n .imageId(\"android-image-release5501072_a11_20240530.raw\")\n .vswitchId(defaultSwitch.id())\n .securityGroupId(defaultSecurityGroup.id())\n .keyPairName(defaultKeyPair.keyPairName())\n .vncPassword(\"Ecp123\")\n .paymentType(\"PayAsYouGo\")\n .instanceName(name)\n .description(name)\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 192.168.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n cidrBlock: 192.168.192.0/24\n zoneId: ${default.zones[0].zoneId}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}-${defaultInteger.result}\n vpcId: ${defaultNetwork.id}\n defaultKeyPair:\n type: alicloud:ecp:KeyPair\n name: default\n properties:\n keyPairName: ${name}-${defaultInteger.result}\n publicKeyBody: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n defaultInstance:\n type: alicloud:ecp:Instance\n name: default\n properties:\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].instanceType}\n imageId: android-image-release5501072_a11_20240530.raw\n vswitchId: ${defaultSwitch.id}\n securityGroupId: ${defaultSecurityGroup.id}\n keyPairName: ${defaultKeyPair.keyPairName}\n vncPassword: Ecp123\n paymentType: PayAsYouGo\n instanceName: ${name}\n description: ${name}\n force: 'true'\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecp:getZones\n arguments: {}\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecp:getInstanceTypes\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nElastic Cloud Phone (ECP) Instance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecp/instance:Instance example \u003cid\u003e\n```\n\n",
"properties": {
"autoPay": {
"type": "boolean",
@@ -150846,7 +153475,7 @@
}
},
"alicloud:ecp/keyPair:KeyPair": {
- "description": "Provides a Elastic Cloud Phone (ECP) Key Pair resource.\n\nFor information about Elastic Cloud Phone (ECP) Key Pair and how to use it, see [What is Key Pair](https://next.api.aliyun.com/document/cloudphone/2020-12-30/ImportImage).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecp.KeyPair(\"example\", {\n keyPairName: \"my-KeyPair\",\n publicKeyBody: \"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecp.KeyPair(\"example\",\n key_pair_name=\"my-KeyPair\",\n public_key_body=\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecp.KeyPair(\"example\", new()\n {\n KeyPairName = \"my-KeyPair\",\n PublicKeyBody = \"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecp.NewKeyPair(ctx, \"example\", \u0026ecp.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"my-KeyPair\"),\n\t\t\tPublicKeyBody: pulumi.String(\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecp.KeyPair;\nimport com.pulumi.alicloud.ecp.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new KeyPair(\"example\", KeyPairArgs.builder()\n .keyPairName(\"my-KeyPair\")\n .publicKeyBody(\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecp:KeyPair\n properties:\n keyPairName: my-KeyPair\n publicKeyBody: ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nElastic Cloud Phone (ECP) Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecp/keyPair:KeyPair example \u003ckey_pair_name\u003e\n```\n\n",
+ "description": "Provides a Elastic Cloud Phone (ECP) Key Pair resource.\n\nFor information about Elastic Cloud Phone (ECP) Key Pair and how to use it, see [What is Key Pair](https://next.api.aliyun.com/document/cloudphone/2020-12-30/ImportImage).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecp.KeyPair(\"example\", {\n keyPairName: \"my-KeyPair\",\n publicKeyBody: \"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecp.KeyPair(\"example\",\n key_pair_name=\"my-KeyPair\",\n public_key_body=\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecp.KeyPair(\"example\", new()\n {\n KeyPairName = \"my-KeyPair\",\n PublicKeyBody = \"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecp\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecp.NewKeyPair(ctx, \"example\", \u0026ecp.KeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"my-KeyPair\"),\n\t\t\tPublicKeyBody: pulumi.String(\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecp.KeyPair;\nimport com.pulumi.alicloud.ecp.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new KeyPair(\"example\", KeyPairArgs.builder()\n .keyPairName(\"my-KeyPair\")\n .publicKeyBody(\"ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecp:KeyPair\n properties:\n keyPairName: my-KeyPair\n publicKeyBody: ssh-rsa AAAAxxxxxxxxxxtyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nElastic Cloud Phone (ECP) Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecp/keyPair:KeyPair example \u003ckey_pair_name\u003e\n```\n\n",
"properties": {
"keyPairName": {
"type": "string",
@@ -150893,7 +153522,7 @@
}
},
"alicloud:ecs/activation:Activation": {
- "description": "Provides a ECS Activation resource.\n\nFor information about ECS Activation and how to use it, see [What is Activation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createactivation#doc-api-Ecs-CreateActivation).\n\n\u003e **NOTE:** Available since v1.177.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.Activation(\"example\", {\n description: \"terraform-example\",\n instanceCount: 10,\n instanceName: \"terraform-example\",\n ipAddressRange: \"0.0.0.0/0\",\n timeToLiveInHours: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.Activation(\"example\",\n description=\"terraform-example\",\n instance_count=10,\n instance_name=\"terraform-example\",\n ip_address_range=\"0.0.0.0/0\",\n time_to_live_in_hours=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.Activation(\"example\", new()\n {\n Description = \"terraform-example\",\n InstanceCount = 10,\n InstanceName = \"terraform-example\",\n IpAddressRange = \"0.0.0.0/0\",\n TimeToLiveInHours = 4,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewActivation(ctx, \"example\", \u0026ecs.ActivationArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceCount: pulumi.Int(10),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tIpAddressRange: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tTimeToLiveInHours: pulumi.Int(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Activation;\nimport com.pulumi.alicloud.ecs.ActivationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Activation(\"example\", ActivationArgs.builder()\n .description(\"terraform-example\")\n .instanceCount(10)\n .instanceName(\"terraform-example\")\n .ipAddressRange(\"0.0.0.0/0\")\n .timeToLiveInHours(4)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:Activation\n properties:\n description: terraform-example\n instanceCount: 10\n instanceName: terraform-example\n ipAddressRange: 0.0.0.0/0\n timeToLiveInHours: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Activation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/activation:Activation example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Activation resource.\n\nFor information about ECS Activation and how to use it, see [What is Activation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createactivation#doc-api-Ecs-CreateActivation).\n\n\u003e **NOTE:** Available since v1.177.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.Activation(\"example\", {\n description: \"terraform-example\",\n instanceCount: 10,\n instanceName: \"terraform-example\",\n ipAddressRange: \"0.0.0.0/0\",\n timeToLiveInHours: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.Activation(\"example\",\n description=\"terraform-example\",\n instance_count=10,\n instance_name=\"terraform-example\",\n ip_address_range=\"0.0.0.0/0\",\n time_to_live_in_hours=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.Activation(\"example\", new()\n {\n Description = \"terraform-example\",\n InstanceCount = 10,\n InstanceName = \"terraform-example\",\n IpAddressRange = \"0.0.0.0/0\",\n TimeToLiveInHours = 4,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewActivation(ctx, \"example\", \u0026ecs.ActivationArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceCount: pulumi.Int(10),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tIpAddressRange: pulumi.String(\"0.0.0.0/0\"),\n\t\t\tTimeToLiveInHours: pulumi.Int(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Activation;\nimport com.pulumi.alicloud.ecs.ActivationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Activation(\"example\", ActivationArgs.builder()\n .description(\"terraform-example\")\n .instanceCount(10)\n .instanceName(\"terraform-example\")\n .ipAddressRange(\"0.0.0.0/0\")\n .timeToLiveInHours(4)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:Activation\n properties:\n description: terraform-example\n instanceCount: 10\n instanceName: terraform-example\n ipAddressRange: 0.0.0.0/0\n timeToLiveInHours: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Activation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/activation:Activation example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -150981,7 +153610,7 @@
}
},
"alicloud:ecs/autoProvisioningGroup:AutoProvisioningGroup": {
- "description": "Provides a ECS auto provisioning group resource which is a solution that uses preemptive instances and\u003cspan pulumi-lang-nodejs=\" payAsYouGo \" pulumi-lang-dotnet=\" PayAsYouGo \" pulumi-lang-go=\" payAsYouGo \" pulumi-lang-python=\" pay_as_you_go \" pulumi-lang-yaml=\" payAsYouGo \" pulumi-lang-java=\" payAsYouGo \"\u003e pay_as_you_go \u003c/span\u003einstances to rapidly deploy clusters.\n\n\u003e **NOTE:** Available in 1.79.0+\n\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"auto_provisioning_group\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst template = new alicloud.ecs.EcsLaunchTemplate(\"template\", {\n launchTemplateName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: \"ecs.n1.tiny\",\n securityGroupId: defaultSecurityGroup.id,\n});\nconst defaultAutoProvisioningGroup = new alicloud.ecs.AutoProvisioningGroup(\"default\", {\n launchTemplateId: template.id,\n totalTargetCapacity: \"4\",\n payAsYouGoTargetCapacity: \"1\",\n spotTargetCapacity: \"2\",\n launchTemplateConfigs: [{\n instanceType: \"ecs.n1.small\",\n vswitchId: defaultSwitch.id,\n weightedCapacity: \"2\",\n maxPrice: \"2\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"auto_provisioning_group\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ntemplate = alicloud.ecs.EcsLaunchTemplate(\"template\",\n launch_template_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=\"ecs.n1.tiny\",\n security_group_id=default_security_group.id)\ndefault_auto_provisioning_group = alicloud.ecs.AutoProvisioningGroup(\"default\",\n launch_template_id=template.id,\n total_target_capacity=\"4\",\n pay_as_you_go_target_capacity=\"1\",\n spot_target_capacity=\"2\",\n launch_template_configs=[{\n \"instance_type\": \"ecs.n1.small\",\n \"vswitch_id\": default_switch.id,\n \"weighted_capacity\": \"2\",\n \"max_price\": \"2\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"auto_provisioning_group\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var template = new AliCloud.Ecs.EcsLaunchTemplate(\"template\", new()\n {\n LaunchTemplateName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = \"ecs.n1.tiny\",\n SecurityGroupId = defaultSecurityGroup.Id,\n });\n\n var defaultAutoProvisioningGroup = new AliCloud.Ecs.AutoProvisioningGroup(\"default\", new()\n {\n LaunchTemplateId = template.Id,\n TotalTargetCapacity = \"4\",\n PayAsYouGoTargetCapacity = \"1\",\n SpotTargetCapacity = \"2\",\n LaunchTemplateConfigs = new[]\n {\n new AliCloud.Ecs.Inputs.AutoProvisioningGroupLaunchTemplateConfigArgs\n {\n InstanceType = \"ecs.n1.small\",\n VswitchId = defaultSwitch.Id,\n WeightedCapacity = \"2\",\n MaxPrice = \"2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"auto_provisioning_group\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttemplate, err := ecs.NewEcsLaunchTemplate(ctx, \"template\", \u0026ecs.EcsLaunchTemplateArgs{\n\t\t\tLaunchTemplateName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(\"ecs.n1.tiny\"),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewAutoProvisioningGroup(ctx, \"default\", \u0026ecs.AutoProvisioningGroupArgs{\n\t\t\tLaunchTemplateId: template.ID(),\n\t\t\tTotalTargetCapacity: pulumi.String(\"4\"),\n\t\t\tPayAsYouGoTargetCapacity: pulumi.String(\"1\"),\n\t\t\tSpotTargetCapacity: pulumi.String(\"2\"),\n\t\t\tLaunchTemplateConfigs: ecs.AutoProvisioningGroupLaunchTemplateConfigArray{\n\t\t\t\t\u0026ecs.AutoProvisioningGroupLaunchTemplateConfigArgs{\n\t\t\t\t\tInstanceType: pulumi.String(\"ecs.n1.small\"),\n\t\t\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\t\t\tWeightedCapacity: pulumi.String(\"2\"),\n\t\t\t\t\tMaxPrice: pulumi.String(\"2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplate;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.AutoProvisioningGroup;\nimport com.pulumi.alicloud.ecs.AutoProvisioningGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.AutoProvisioningGroupLaunchTemplateConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"auto_provisioning_group\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var template = new EcsLaunchTemplate(\"template\", EcsLaunchTemplateArgs.builder()\n .launchTemplateName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(\"ecs.n1.tiny\")\n .securityGroupId(defaultSecurityGroup.id())\n .build());\n\n var defaultAutoProvisioningGroup = new AutoProvisioningGroup(\"defaultAutoProvisioningGroup\", AutoProvisioningGroupArgs.builder()\n .launchTemplateId(template.id())\n .totalTargetCapacity(\"4\")\n .payAsYouGoTargetCapacity(\"1\")\n .spotTargetCapacity(\"2\")\n .launchTemplateConfigs(AutoProvisioningGroupLaunchTemplateConfigArgs.builder()\n .instanceType(\"ecs.n1.small\")\n .vswitchId(defaultSwitch.id())\n .weightedCapacity(\"2\")\n .maxPrice(\"2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: auto_provisioning_group\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultAutoProvisioningGroup:\n type: alicloud:ecs:AutoProvisioningGroup\n name: default\n properties:\n launchTemplateId: ${template.id}\n totalTargetCapacity: '4'\n payAsYouGoTargetCapacity: '1'\n spotTargetCapacity: '2'\n launchTemplateConfigs:\n - instanceType: ecs.n1.small\n vswitchId: ${defaultSwitch.id}\n weightedCapacity: '2'\n maxPrice: '2'\n template:\n type: alicloud:ecs:EcsLaunchTemplate\n properties:\n launchTemplateName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ecs.n1.tiny\n securityGroupId: ${defaultSecurityGroup.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS auto provisioning group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/autoProvisioningGroup:AutoProvisioningGroup example asg-abc123456\n```\n\n",
+ "description": "Provides a ECS auto provisioning group resource which is a solution that uses preemptive instances and\u003cspan pulumi-lang-nodejs=\" payAsYouGo \" pulumi-lang-dotnet=\" PayAsYouGo \" pulumi-lang-go=\" payAsYouGo \" pulumi-lang-python=\" pay_as_you_go \" pulumi-lang-yaml=\" payAsYouGo \" pulumi-lang-java=\" payAsYouGo \"\u003e pay_as_you_go \u003c/span\u003einstances to rapidly deploy clusters.\n\n\u003e **NOTE:** Available in 1.79.0+\n\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"auto_provisioning_group\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst template = new alicloud.ecs.EcsLaunchTemplate(\"template\", {\n launchTemplateName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: \"ecs.n1.tiny\",\n securityGroupId: defaultSecurityGroup.id,\n});\nconst defaultAutoProvisioningGroup = new alicloud.ecs.AutoProvisioningGroup(\"default\", {\n launchTemplateId: template.id,\n totalTargetCapacity: \"4\",\n payAsYouGoTargetCapacity: \"1\",\n spotTargetCapacity: \"2\",\n launchTemplateConfigs: [{\n instanceType: \"ecs.n1.small\",\n vswitchId: defaultSwitch.id,\n weightedCapacity: \"2\",\n maxPrice: \"2\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"auto_provisioning_group\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ntemplate = alicloud.ecs.EcsLaunchTemplate(\"template\",\n launch_template_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=\"ecs.n1.tiny\",\n security_group_id=default_security_group.id)\ndefault_auto_provisioning_group = alicloud.ecs.AutoProvisioningGroup(\"default\",\n launch_template_id=template.id,\n total_target_capacity=\"4\",\n pay_as_you_go_target_capacity=\"1\",\n spot_target_capacity=\"2\",\n launch_template_configs=[{\n \"instance_type\": \"ecs.n1.small\",\n \"vswitch_id\": default_switch.id,\n \"weighted_capacity\": \"2\",\n \"max_price\": \"2\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"auto_provisioning_group\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var template = new AliCloud.Ecs.EcsLaunchTemplate(\"template\", new()\n {\n LaunchTemplateName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = \"ecs.n1.tiny\",\n SecurityGroupId = defaultSecurityGroup.Id,\n });\n\n var defaultAutoProvisioningGroup = new AliCloud.Ecs.AutoProvisioningGroup(\"default\", new()\n {\n LaunchTemplateId = template.Id,\n TotalTargetCapacity = \"4\",\n PayAsYouGoTargetCapacity = \"1\",\n SpotTargetCapacity = \"2\",\n LaunchTemplateConfigs = new[]\n {\n new AliCloud.Ecs.Inputs.AutoProvisioningGroupLaunchTemplateConfigArgs\n {\n InstanceType = \"ecs.n1.small\",\n VswitchId = defaultSwitch.Id,\n WeightedCapacity = \"2\",\n MaxPrice = \"2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"auto_provisioning_group\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttemplate, err := ecs.NewEcsLaunchTemplate(ctx, \"template\", \u0026ecs.EcsLaunchTemplateArgs{\n\t\t\tLaunchTemplateName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(\"ecs.n1.tiny\"),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewAutoProvisioningGroup(ctx, \"default\", \u0026ecs.AutoProvisioningGroupArgs{\n\t\t\tLaunchTemplateId: template.ID(),\n\t\t\tTotalTargetCapacity: pulumi.String(\"4\"),\n\t\t\tPayAsYouGoTargetCapacity: pulumi.String(\"1\"),\n\t\t\tSpotTargetCapacity: pulumi.String(\"2\"),\n\t\t\tLaunchTemplateConfigs: ecs.AutoProvisioningGroupLaunchTemplateConfigArray{\n\t\t\t\t\u0026ecs.AutoProvisioningGroupLaunchTemplateConfigArgs{\n\t\t\t\t\tInstanceType: pulumi.String(\"ecs.n1.small\"),\n\t\t\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\t\t\tWeightedCapacity: pulumi.String(\"2\"),\n\t\t\t\t\tMaxPrice: pulumi.String(\"2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplate;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.AutoProvisioningGroup;\nimport com.pulumi.alicloud.ecs.AutoProvisioningGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.AutoProvisioningGroupLaunchTemplateConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"auto_provisioning_group\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var template = new EcsLaunchTemplate(\"template\", EcsLaunchTemplateArgs.builder()\n .launchTemplateName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(\"ecs.n1.tiny\")\n .securityGroupId(defaultSecurityGroup.id())\n .build());\n\n var defaultAutoProvisioningGroup = new AutoProvisioningGroup(\"defaultAutoProvisioningGroup\", AutoProvisioningGroupArgs.builder()\n .launchTemplateId(template.id())\n .totalTargetCapacity(\"4\")\n .payAsYouGoTargetCapacity(\"1\")\n .spotTargetCapacity(\"2\")\n .launchTemplateConfigs(AutoProvisioningGroupLaunchTemplateConfigArgs.builder()\n .instanceType(\"ecs.n1.small\")\n .vswitchId(defaultSwitch.id())\n .weightedCapacity(\"2\")\n .maxPrice(\"2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: auto_provisioning_group\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultAutoProvisioningGroup:\n type: alicloud:ecs:AutoProvisioningGroup\n name: default\n properties:\n launchTemplateId: ${template.id}\n totalTargetCapacity: '4'\n payAsYouGoTargetCapacity: '1'\n spotTargetCapacity: '2'\n launchTemplateConfigs:\n - instanceType: ecs.n1.small\n vswitchId: ${defaultSwitch.id}\n weightedCapacity: '2'\n maxPrice: '2'\n template:\n type: alicloud:ecs:EcsLaunchTemplate\n properties:\n launchTemplateName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ecs.n1.tiny\n securityGroupId: ${defaultSecurityGroup.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS auto provisioning group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/autoProvisioningGroup:AutoProvisioningGroup example asg-abc123456\n```\n\n",
"properties": {
"autoProvisioningGroupName": {
"type": "string",
@@ -151283,7 +153912,7 @@
}
},
"alicloud:ecs/autoSnapshotPolicy:AutoSnapshotPolicy": {
- "description": "Provides a ECS Auto Snapshot Policy resource.\n\nFor information about ECS Auto Snapshot Policy and how to use it, see [What is Auto Snapshot Policy](https://www.alibabacloud.com/help/en/doc-detail/25527.htm).\n\n\u003e **NOTE:** Available since v1.117.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.AutoSnapshotPolicy(\"example\", {\n name: \"terraform-example\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.AutoSnapshotPolicy(\"example\",\n name=\"terraform-example\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.AutoSnapshotPolicy(\"example\", new()\n {\n Name = \"terraform-example\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewAutoSnapshotPolicy(ctx, \"example\", \u0026ecs.AutoSnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicy;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AutoSnapshotPolicy(\"example\", AutoSnapshotPolicyArgs.builder()\n .name(\"terraform-example\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:AutoSnapshotPolicy\n properties:\n name: terraform-example\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Auto Snapshot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/autoSnapshotPolicy:AutoSnapshotPolicy example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Auto Snapshot Policy resource.\n\nFor information about ECS Auto Snapshot Policy and how to use it, see [What is Auto Snapshot Policy](https://www.alibabacloud.com/help/en/doc-detail/25527.htm).\n\n\u003e **NOTE:** Available since v1.117.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.AutoSnapshotPolicy(\"example\", {\n name: \"terraform-example\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.AutoSnapshotPolicy(\"example\",\n name=\"terraform-example\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.AutoSnapshotPolicy(\"example\", new()\n {\n Name = \"terraform-example\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewAutoSnapshotPolicy(ctx, \"example\", \u0026ecs.AutoSnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicy;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AutoSnapshotPolicy(\"example\", AutoSnapshotPolicyArgs.builder()\n .name(\"terraform-example\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:AutoSnapshotPolicy\n properties:\n name: terraform-example\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Auto Snapshot Policy can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/autoSnapshotPolicy:AutoSnapshotPolicy example \u003cid\u003e\n```\n\n",
"properties": {
"autoSnapshotPolicyName": {
"type": "string",
@@ -151507,7 +154136,7 @@
}
},
"alicloud:ecs/capacityReservation:CapacityReservation": {
- "description": "Provides a Ecs Capacity Reservation resource.\n\nFor information about Ecs Capacity Reservation and how to use it, see [What is Capacity Reservation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createcapacityreservation).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.g5\",\n});\nconst defaultGetZones = _default.then(_default =\u003e alicloud.getZones({\n availableResourceCreation: \"Instance\",\n availableInstanceType: _default.ids?.[0],\n}));\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultCapacityReservation = new alicloud.ecs.CapacityReservation(\"default\", {\n description: \"terraform-example\",\n platform: \"linux\",\n capacityReservationName: \"terraform-example\",\n endTimeType: \"Unlimited\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n instanceAmount: 1,\n instanceType: _default.then(_default =\u003e _default.ids?.[0]),\n matchCriteria: \"Open\",\n tags: {\n Created: \"terraform-example\",\n },\n zoneIds: [defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id)],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.g5\")\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"Instance\",\n available_instance_type=default.ids[0])\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_capacity_reservation = alicloud.ecs.CapacityReservation(\"default\",\n description=\"terraform-example\",\n platform=\"linux\",\n capacity_reservation_name=\"terraform-example\",\n end_time_type=\"Unlimited\",\n resource_group_id=default_get_resource_groups.ids[0],\n instance_amount=1,\n instance_type=default.ids[0],\n match_criteria=\"Open\",\n tags={\n \"Created\": \"terraform-example\",\n },\n zone_ids=[default_get_zones.zones[0].id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.g5\",\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n AvailableInstanceType = @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultCapacityReservation = new AliCloud.Ecs.CapacityReservation(\"default\", new()\n {\n Description = \"terraform-example\",\n Platform = \"linux\",\n CapacityReservationName = \"terraform-example\",\n EndTimeType = \"Unlimited\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n InstanceAmount = 1,\n InstanceType = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0])),\n MatchCriteria = \"Open\",\n Tags = \n {\n { \"Created\", \"terraform-example\" },\n },\n ZoneIds = new[]\n {\n defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g5\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t\tAvailableInstanceType: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewCapacityReservation(ctx, \"default\", \u0026ecs.CapacityReservationArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tPlatform: pulumi.String(\"linux\"),\n\t\t\tCapacityReservationName: pulumi.String(\"terraform-example\"),\n\t\t\tEndTimeType: pulumi.String(\"Unlimited\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tInstanceType: pulumi.String(_default.Ids[0]),\n\t\t\tMatchCriteria: pulumi.String(\"Open\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"terraform-example\"),\n\t\t\t},\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.CapacityReservation;\nimport com.pulumi.alicloud.ecs.CapacityReservationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.g5\")\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .availableInstanceType(default_.ids()[0])\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultCapacityReservation = new CapacityReservation(\"defaultCapacityReservation\", CapacityReservationArgs.builder()\n .description(\"terraform-example\")\n .platform(\"linux\")\n .capacityReservationName(\"terraform-example\")\n .endTimeType(\"Unlimited\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .instanceAmount(1)\n .instanceType(default_.ids()[0])\n .matchCriteria(\"Open\")\n .tags(Map.of(\"Created\", \"terraform-example\"))\n .zoneIds(defaultGetZones.zones()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultCapacityReservation:\n type: alicloud:ecs:CapacityReservation\n name: default\n properties:\n description: terraform-example\n platform: linux\n capacityReservationName: terraform-example\n endTimeType: Unlimited\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n instanceAmount: 1\n instanceType: ${default.ids[0]}\n matchCriteria: Open\n tags:\n Created: terraform-example\n zoneIds:\n - ${defaultGetZones.zones[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.g5\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n availableInstanceType: ${default.ids[0]}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEcs Capacity Reservation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/capacityReservation:CapacityReservation example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Ecs Capacity Reservation resource.\n\nFor information about Ecs Capacity Reservation and how to use it, see [What is Capacity Reservation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createcapacityreservation).\n\n\u003e **NOTE:** Available since v1.195.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.g5\",\n});\nconst defaultGetZones = _default.then(_default =\u003e alicloud.getZones({\n availableResourceCreation: \"Instance\",\n availableInstanceType: _default.ids?.[0],\n}));\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultCapacityReservation = new alicloud.ecs.CapacityReservation(\"default\", {\n description: \"terraform-example\",\n platform: \"linux\",\n capacityReservationName: \"terraform-example\",\n endTimeType: \"Unlimited\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n instanceAmount: 1,\n instanceType: _default.then(_default =\u003e _default.ids?.[0]),\n matchCriteria: \"Open\",\n tags: {\n Created: \"terraform-example\",\n },\n zoneIds: [defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id)],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.g5\")\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"Instance\",\n available_instance_type=default.ids[0])\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_capacity_reservation = alicloud.ecs.CapacityReservation(\"default\",\n description=\"terraform-example\",\n platform=\"linux\",\n capacity_reservation_name=\"terraform-example\",\n end_time_type=\"Unlimited\",\n resource_group_id=default_get_resource_groups.ids[0],\n instance_amount=1,\n instance_type=default.ids[0],\n match_criteria=\"Open\",\n tags={\n \"Created\": \"terraform-example\",\n },\n zone_ids=[default_get_zones.zones[0].id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.g5\",\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n AvailableInstanceType = @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultCapacityReservation = new AliCloud.Ecs.CapacityReservation(\"default\", new()\n {\n Description = \"terraform-example\",\n Platform = \"linux\",\n CapacityReservationName = \"terraform-example\",\n EndTimeType = \"Unlimited\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n InstanceAmount = 1,\n InstanceType = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0])),\n MatchCriteria = \"Open\",\n Tags = \n {\n { \"Created\", \"terraform-example\" },\n },\n ZoneIds = new[]\n {\n defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g5\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t\tAvailableInstanceType: pulumi.StringRef(_default.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewCapacityReservation(ctx, \"default\", \u0026ecs.CapacityReservationArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tPlatform: pulumi.String(\"linux\"),\n\t\t\tCapacityReservationName: pulumi.String(\"terraform-example\"),\n\t\t\tEndTimeType: pulumi.String(\"Unlimited\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tInstanceType: pulumi.String(_default.Ids[0]),\n\t\t\tMatchCriteria: pulumi.String(\"Open\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"terraform-example\"),\n\t\t\t},\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.CapacityReservation;\nimport com.pulumi.alicloud.ecs.CapacityReservationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.g5\")\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .availableInstanceType(default_.ids()[0])\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultCapacityReservation = new CapacityReservation(\"defaultCapacityReservation\", CapacityReservationArgs.builder()\n .description(\"terraform-example\")\n .platform(\"linux\")\n .capacityReservationName(\"terraform-example\")\n .endTimeType(\"Unlimited\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .instanceAmount(1)\n .instanceType(default_.ids()[0])\n .matchCriteria(\"Open\")\n .tags(Map.of(\"Created\", \"terraform-example\"))\n .zoneIds(defaultGetZones.zones()[0].id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultCapacityReservation:\n type: alicloud:ecs:CapacityReservation\n name: default\n properties:\n description: terraform-example\n platform: linux\n capacityReservationName: terraform-example\n endTimeType: Unlimited\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n instanceAmount: 1\n instanceType: ${default.ids[0]}\n matchCriteria: Open\n tags:\n Created: terraform-example\n zoneIds:\n - ${defaultGetZones.zones[0].id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.g5\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n availableInstanceType: ${default.ids[0]}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEcs Capacity Reservation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/capacityReservation:CapacityReservation example \u003cid\u003e\n```\n\n",
"properties": {
"capacityReservationName": {
"type": "string",
@@ -151752,7 +154381,7 @@
}
},
"alicloud:ecs/command:Command": {
- "description": "Provides a ECS Command resource.\n\nFor information about ECS Command and how to use it, see [What is Command](https://www.alibabacloud.com/help/en/doc-detail/64844.htm).\n\n\u003e **NOTE:** Available in v1.116.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.Command(\"example\", {\n name: \"tf-testAcc\",\n commandContent: \"bHMK\",\n description: \"For Terraform Test\",\n type: \"RunShellScript\",\n workingDir: \"/root\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.Command(\"example\",\n name=\"tf-testAcc\",\n command_content=\"bHMK\",\n description=\"For Terraform Test\",\n type=\"RunShellScript\",\n working_dir=\"/root\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.Command(\"example\", new()\n {\n Name = \"tf-testAcc\",\n CommandContent = \"bHMK\",\n Description = \"For Terraform Test\",\n Type = \"RunShellScript\",\n WorkingDir = \"/root\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewCommand(ctx, \"example\", \u0026ecs.CommandArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc\"),\n\t\t\tCommandContent: pulumi.String(\"bHMK\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t\tType: pulumi.String(\"RunShellScript\"),\n\t\t\tWorkingDir: pulumi.String(\"/root\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Command;\nimport com.pulumi.alicloud.ecs.CommandArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Command(\"example\", CommandArgs.builder()\n .name(\"tf-testAcc\")\n .commandContent(\"bHMK\")\n .description(\"For Terraform Test\")\n .type(\"RunShellScript\")\n .workingDir(\"/root\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:Command\n properties:\n name: tf-testAcc\n commandContent: bHMK\n description: For Terraform Test\n type: RunShellScript\n workingDir: /root\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Command can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/command:Command example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Command resource.\n\nFor information about ECS Command and how to use it, see [What is Command](https://www.alibabacloud.com/help/en/doc-detail/64844.htm).\n\n\u003e **NOTE:** Available in v1.116.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.Command(\"example\", {\n name: \"tf-testAcc\",\n commandContent: \"bHMK\",\n description: \"For Terraform Test\",\n type: \"RunShellScript\",\n workingDir: \"/root\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.Command(\"example\",\n name=\"tf-testAcc\",\n command_content=\"bHMK\",\n description=\"For Terraform Test\",\n type=\"RunShellScript\",\n working_dir=\"/root\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.Command(\"example\", new()\n {\n Name = \"tf-testAcc\",\n CommandContent = \"bHMK\",\n Description = \"For Terraform Test\",\n Type = \"RunShellScript\",\n WorkingDir = \"/root\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewCommand(ctx, \"example\", \u0026ecs.CommandArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc\"),\n\t\t\tCommandContent: pulumi.String(\"bHMK\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t\tType: pulumi.String(\"RunShellScript\"),\n\t\t\tWorkingDir: pulumi.String(\"/root\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Command;\nimport com.pulumi.alicloud.ecs.CommandArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Command(\"example\", CommandArgs.builder()\n .name(\"tf-testAcc\")\n .commandContent(\"bHMK\")\n .description(\"For Terraform Test\")\n .type(\"RunShellScript\")\n .workingDir(\"/root\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:Command\n properties:\n name: tf-testAcc\n commandContent: bHMK\n description: For Terraform Test\n type: RunShellScript\n workingDir: /root\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Command can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/command:Command example \u003cid\u003e\n```\n\n",
"properties": {
"commandContent": {
"type": "string",
@@ -152300,7 +154929,7 @@
}
},
"alicloud:ecs/disk:Disk": {
- "description": "Provides a ECS disk resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsDisk \" pulumi-lang-dotnet=\" alicloud.ecs.EcsDisk \" pulumi-lang-go=\" ecs.EcsDisk \" pulumi-lang-python=\" ecs.EcsDisk \" pulumi-lang-yaml=\" alicloud.ecs.EcsDisk \" pulumi-lang-java=\" alicloud.ecs.EcsDisk \"\u003e alicloud.ecs.EcsDisk \u003c/span\u003efrom version 1.122.0.\n\n\u003e **NOTE:** One of \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`snapshotId`\" pulumi-lang-dotnet=\"`SnapshotId`\" pulumi-lang-go=\"`snapshotId`\" pulumi-lang-python=\"`snapshot_id`\" pulumi-lang-yaml=\"`snapshotId`\" pulumi-lang-java=\"`snapshotId`\"\u003e`snapshot_id`\u003c/span\u003e is required when specifying an ECS disk. If all of them be specified, \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e must more than the size of snapshot which \u003cspan pulumi-lang-nodejs=\"`snapshotId`\" pulumi-lang-dotnet=\"`SnapshotId`\" pulumi-lang-go=\"`snapshotId`\" pulumi-lang-python=\"`snapshot_id`\" pulumi-lang-yaml=\"`snapshotId`\" pulumi-lang-java=\"`snapshotId`\"\u003e`snapshot_id`\u003c/span\u003e represents. Currently, \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.Disk`\" pulumi-lang-dotnet=\"`alicloud.ecs.Disk`\" pulumi-lang-go=\"`ecs.Disk`\" pulumi-lang-python=\"`ecs.Disk`\" pulumi-lang-yaml=\"`alicloud.ecs.Disk`\" pulumi-lang-java=\"`alicloud.ecs.Disk`\"\u003e`alicloud.ecs.Disk`\u003c/span\u003e doesn't resize disk.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new ECS disk.\nconst ecsDisk = new alicloud.ecs.Disk(\"ecs_disk\", {\n availabilityZone: \"cn-beijing-b\",\n name: \"New-disk\",\n description: \"Hello ecs disk.\",\n category: \"cloud_efficiency\",\n size: 30,\n encrypted: true,\n kmsKeyId: \"2a6767f0-a16c-4679-a60f-13bf*****\",\n tags: {\n Name: \"TerraformTest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new ECS disk.\necs_disk = alicloud.ecs.Disk(\"ecs_disk\",\n availability_zone=\"cn-beijing-b\",\n name=\"New-disk\",\n description=\"Hello ecs disk.\",\n category=\"cloud_efficiency\",\n size=30,\n encrypted=True,\n kms_key_id=\"2a6767f0-a16c-4679-a60f-13bf*****\",\n tags={\n \"Name\": \"TerraformTest\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new ECS disk.\n var ecsDisk = new AliCloud.Ecs.Disk(\"ecs_disk\", new()\n {\n AvailabilityZone = \"cn-beijing-b\",\n Name = \"New-disk\",\n Description = \"Hello ecs disk.\",\n Category = \"cloud_efficiency\",\n Size = 30,\n Encrypted = true,\n KmsKeyId = \"2a6767f0-a16c-4679-a60f-13bf*****\",\n Tags = \n {\n { \"Name\", \"TerraformTest\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new ECS disk.\n\t\t_, err := ecs.NewDisk(ctx, \"ecs_disk\", \u0026ecs.DiskArgs{\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-b\"),\n\t\t\tName: pulumi.String(\"New-disk\"),\n\t\t\tDescription: pulumi.String(\"Hello ecs disk.\"),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tKmsKeyId: pulumi.String(\"2a6767f0-a16c-4679-a60f-13bf*****\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Disk;\nimport com.pulumi.alicloud.ecs.DiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new ECS disk.\n var ecsDisk = new Disk(\"ecsDisk\", DiskArgs.builder()\n .availabilityZone(\"cn-beijing-b\")\n .name(\"New-disk\")\n .description(\"Hello ecs disk.\")\n .category(\"cloud_efficiency\")\n .size(30)\n .encrypted(true)\n .kmsKeyId(\"2a6767f0-a16c-4679-a60f-13bf*****\")\n .tags(Map.of(\"Name\", \"TerraformTest\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new ECS disk.\n ecsDisk:\n type: alicloud:ecs:Disk\n name: ecs_disk\n properties:\n availabilityZone: cn-beijing-b\n name: New-disk\n description: Hello ecs disk.\n category: cloud_efficiency\n size: '30'\n encrypted: true\n kmsKeyId: 2a6767f0-a16c-4679-a60f-13bf*****\n tags:\n Name: TerraformTest\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nCloud disk can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/disk:Disk example d-abc12345678\n```\n\n",
+ "description": "Provides a ECS disk resource.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsDisk \" pulumi-lang-dotnet=\" alicloud.ecs.EcsDisk \" pulumi-lang-go=\" ecs.EcsDisk \" pulumi-lang-python=\" ecs.EcsDisk \" pulumi-lang-yaml=\" alicloud.ecs.EcsDisk \" pulumi-lang-java=\" alicloud.ecs.EcsDisk \"\u003e alicloud.ecs.EcsDisk \u003c/span\u003efrom version 1.122.0.\n\n\u003e **NOTE:** One of \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`snapshotId`\" pulumi-lang-dotnet=\"`SnapshotId`\" pulumi-lang-go=\"`snapshotId`\" pulumi-lang-python=\"`snapshot_id`\" pulumi-lang-yaml=\"`snapshotId`\" pulumi-lang-java=\"`snapshotId`\"\u003e`snapshot_id`\u003c/span\u003e is required when specifying an ECS disk. If all of them be specified, \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e must more than the size of snapshot which \u003cspan pulumi-lang-nodejs=\"`snapshotId`\" pulumi-lang-dotnet=\"`SnapshotId`\" pulumi-lang-go=\"`snapshotId`\" pulumi-lang-python=\"`snapshot_id`\" pulumi-lang-yaml=\"`snapshotId`\" pulumi-lang-java=\"`snapshotId`\"\u003e`snapshot_id`\u003c/span\u003e represents. Currently, \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.Disk`\" pulumi-lang-dotnet=\"`alicloud.ecs.Disk`\" pulumi-lang-go=\"`ecs.Disk`\" pulumi-lang-python=\"`ecs.Disk`\" pulumi-lang-yaml=\"`alicloud.ecs.Disk`\" pulumi-lang-java=\"`alicloud.ecs.Disk`\"\u003e`alicloud.ecs.Disk`\u003c/span\u003e doesn't resize disk.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new ECS disk.\nconst ecsDisk = new alicloud.ecs.Disk(\"ecs_disk\", {\n availabilityZone: \"cn-beijing-b\",\n name: \"New-disk\",\n description: \"Hello ecs disk.\",\n category: \"cloud_efficiency\",\n size: 30,\n encrypted: true,\n kmsKeyId: \"2a6767f0-a16c-4679-a60f-13bf*****\",\n tags: {\n Name: \"TerraformTest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new ECS disk.\necs_disk = alicloud.ecs.Disk(\"ecs_disk\",\n availability_zone=\"cn-beijing-b\",\n name=\"New-disk\",\n description=\"Hello ecs disk.\",\n category=\"cloud_efficiency\",\n size=30,\n encrypted=True,\n kms_key_id=\"2a6767f0-a16c-4679-a60f-13bf*****\",\n tags={\n \"Name\": \"TerraformTest\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new ECS disk.\n var ecsDisk = new AliCloud.Ecs.Disk(\"ecs_disk\", new()\n {\n AvailabilityZone = \"cn-beijing-b\",\n Name = \"New-disk\",\n Description = \"Hello ecs disk.\",\n Category = \"cloud_efficiency\",\n Size = 30,\n Encrypted = true,\n KmsKeyId = \"2a6767f0-a16c-4679-a60f-13bf*****\",\n Tags = \n {\n { \"Name\", \"TerraformTest\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new ECS disk.\n\t\t_, err := ecs.NewDisk(ctx, \"ecs_disk\", \u0026ecs.DiskArgs{\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-b\"),\n\t\t\tName: pulumi.String(\"New-disk\"),\n\t\t\tDescription: pulumi.String(\"Hello ecs disk.\"),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tKmsKeyId: pulumi.String(\"2a6767f0-a16c-4679-a60f-13bf*****\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Disk;\nimport com.pulumi.alicloud.ecs.DiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new ECS disk.\n var ecsDisk = new Disk(\"ecsDisk\", DiskArgs.builder()\n .availabilityZone(\"cn-beijing-b\")\n .name(\"New-disk\")\n .description(\"Hello ecs disk.\")\n .category(\"cloud_efficiency\")\n .size(30)\n .encrypted(true)\n .kmsKeyId(\"2a6767f0-a16c-4679-a60f-13bf*****\")\n .tags(Map.of(\"Name\", \"TerraformTest\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new ECS disk.\n ecsDisk:\n type: alicloud:ecs:Disk\n name: ecs_disk\n properties:\n availabilityZone: cn-beijing-b\n name: New-disk\n description: Hello ecs disk.\n category: cloud_efficiency\n size: '30'\n encrypted: true\n kmsKeyId: 2a6767f0-a16c-4679-a60f-13bf*****\n tags:\n Name: TerraformTest\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nCloud disk can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/disk:Disk example d-abc12345678\n```\n\n",
"properties": {
"advancedFeatures": {
"type": "string"
@@ -152669,7 +155298,7 @@
}
},
"alicloud:ecs/diskAttachment:DiskAttachment": {
- "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-dotnet=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-go=\" ecs.EcsDiskAttachment \" pulumi-lang-python=\" ecs.EcsDiskAttachment \" pulumi-lang-yaml=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-java=\" alicloud.ecs.EcsDiskAttachment \"\u003e alicloud.ecs.EcsDiskAttachment \u003c/span\u003efrom version 1.122.0.\n\nProvides an Alicloud ECS Disk Attachment as a resource, to attach and detach disks from ECS Instances.\n\n## Example Usage\n\nBasic usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new ECS disk-attachment and use it attach one disk to a new instance.\nconst ecsSg = new alicloud.ecs.SecurityGroup(\"ecs_sg\", {\n name: \"terraform-test-group\",\n description: \"New security group\",\n});\nconst ecsDisk = new alicloud.ecs.Disk(\"ecs_disk\", {\n availabilityZone: \"cn-beijing-a\",\n size: 50,\n tags: {\n Name: \"TerraformTest-disk\",\n },\n});\nconst ecsInstance = new alicloud.ecs.Instance(\"ecs_instance\", {\n imageId: \"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n instanceType: \"ecs.n4.small\",\n availabilityZone: \"cn-beijing-a\",\n securityGroups: [ecsSg.id],\n instanceName: \"Hello\",\n internetChargeType: \"PayByBandwidth\",\n tags: {\n Name: \"TerraformTest-instance\",\n },\n});\nconst ecsDiskAtt = new alicloud.ecs.DiskAttachment(\"ecs_disk_att\", {\n diskId: ecsDisk.id,\n instanceId: ecsInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new ECS disk-attachment and use it attach one disk to a new instance.\necs_sg = alicloud.ecs.SecurityGroup(\"ecs_sg\",\n name=\"terraform-test-group\",\n description=\"New security group\")\necs_disk = alicloud.ecs.Disk(\"ecs_disk\",\n availability_zone=\"cn-beijing-a\",\n size=50,\n tags={\n \"Name\": \"TerraformTest-disk\",\n })\necs_instance = alicloud.ecs.Instance(\"ecs_instance\",\n image_id=\"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n instance_type=\"ecs.n4.small\",\n availability_zone=\"cn-beijing-a\",\n security_groups=[ecs_sg.id],\n instance_name=\"Hello\",\n internet_charge_type=\"PayByBandwidth\",\n tags={\n \"Name\": \"TerraformTest-instance\",\n })\necs_disk_att = alicloud.ecs.DiskAttachment(\"ecs_disk_att\",\n disk_id=ecs_disk.id,\n instance_id=ecs_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new ECS disk-attachment and use it attach one disk to a new instance.\n var ecsSg = new AliCloud.Ecs.SecurityGroup(\"ecs_sg\", new()\n {\n Name = \"terraform-test-group\",\n Description = \"New security group\",\n });\n\n var ecsDisk = new AliCloud.Ecs.Disk(\"ecs_disk\", new()\n {\n AvailabilityZone = \"cn-beijing-a\",\n Size = 50,\n Tags = \n {\n { \"Name\", \"TerraformTest-disk\" },\n },\n });\n\n var ecsInstance = new AliCloud.Ecs.Instance(\"ecs_instance\", new()\n {\n ImageId = \"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n InstanceType = \"ecs.n4.small\",\n AvailabilityZone = \"cn-beijing-a\",\n SecurityGroups = new[]\n {\n ecsSg.Id,\n },\n InstanceName = \"Hello\",\n InternetChargeType = \"PayByBandwidth\",\n Tags = \n {\n { \"Name\", \"TerraformTest-instance\" },\n },\n });\n\n var ecsDiskAtt = new AliCloud.Ecs.DiskAttachment(\"ecs_disk_att\", new()\n {\n DiskId = ecsDisk.Id,\n InstanceId = ecsInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new ECS disk-attachment and use it attach one disk to a new instance.\n\t\tecsSg, err := ecs.NewSecurityGroup(ctx, \"ecs_sg\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-test-group\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tecsDisk, err := ecs.NewDisk(ctx, \"ecs_disk\", \u0026ecs.DiskArgs{\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-a\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest-disk\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tecsInstance, err := ecs.NewInstance(ctx, \"ecs_instance\", \u0026ecs.InstanceArgs{\n\t\t\tImageId: pulumi.String(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\"),\n\t\t\tInstanceType: pulumi.String(\"ecs.n4.small\"),\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-a\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tecsSg.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(\"Hello\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest-instance\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewDiskAttachment(ctx, \"ecs_disk_att\", \u0026ecs.DiskAttachmentArgs{\n\t\t\tDiskId: ecsDisk.ID(),\n\t\t\tInstanceId: ecsInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Disk;\nimport com.pulumi.alicloud.ecs.DiskArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.DiskAttachment;\nimport com.pulumi.alicloud.ecs.DiskAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new ECS disk-attachment and use it attach one disk to a new instance.\n var ecsSg = new SecurityGroup(\"ecsSg\", SecurityGroupArgs.builder()\n .name(\"terraform-test-group\")\n .description(\"New security group\")\n .build());\n\n var ecsDisk = new Disk(\"ecsDisk\", DiskArgs.builder()\n .availabilityZone(\"cn-beijing-a\")\n .size(50)\n .tags(Map.of(\"Name\", \"TerraformTest-disk\"))\n .build());\n\n var ecsInstance = new Instance(\"ecsInstance\", InstanceArgs.builder()\n .imageId(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\")\n .instanceType(\"ecs.n4.small\")\n .availabilityZone(\"cn-beijing-a\")\n .securityGroups(ecsSg.id())\n .instanceName(\"Hello\")\n .internetChargeType(\"PayByBandwidth\")\n .tags(Map.of(\"Name\", \"TerraformTest-instance\"))\n .build());\n\n var ecsDiskAtt = new DiskAttachment(\"ecsDiskAtt\", DiskAttachmentArgs.builder()\n .diskId(ecsDisk.id())\n .instanceId(ecsInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new ECS disk-attachment and use it attach one disk to a new instance.\n ecsSg:\n type: alicloud:ecs:SecurityGroup\n name: ecs_sg\n properties:\n name: terraform-test-group\n description: New security group\n ecsDisk:\n type: alicloud:ecs:Disk\n name: ecs_disk\n properties:\n availabilityZone: cn-beijing-a\n size: '50'\n tags:\n Name: TerraformTest-disk\n ecsInstance:\n type: alicloud:ecs:Instance\n name: ecs_instance\n properties:\n imageId: ubuntu_18_04_64_20G_alibase_20190624.vhd\n instanceType: ecs.n4.small\n availabilityZone: cn-beijing-a\n securityGroups:\n - ${ecsSg.id}\n instanceName: Hello\n internetChargeType: PayByBandwidth\n tags:\n Name: TerraformTest-instance\n ecsDiskAtt:\n type: alicloud:ecs:DiskAttachment\n name: ecs_disk_att\n properties:\n diskId: ${ecsDisk.id}\n instanceId: ${ecsInstance.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe disk attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/diskAttachment:DiskAttachment example d-abc12345678:i-abc12355\n```\n\n",
+ "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-dotnet=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-go=\" ecs.EcsDiskAttachment \" pulumi-lang-python=\" ecs.EcsDiskAttachment \" pulumi-lang-yaml=\" alicloud.ecs.EcsDiskAttachment \" pulumi-lang-java=\" alicloud.ecs.EcsDiskAttachment \"\u003e alicloud.ecs.EcsDiskAttachment \u003c/span\u003efrom version 1.122.0.\n\nProvides an Alicloud ECS Disk Attachment as a resource, to attach and detach disks from ECS Instances.\n\n## Example Usage\n\nBasic usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new ECS disk-attachment and use it attach one disk to a new instance.\nconst ecsSg = new alicloud.ecs.SecurityGroup(\"ecs_sg\", {\n name: \"terraform-test-group\",\n description: \"New security group\",\n});\nconst ecsDisk = new alicloud.ecs.Disk(\"ecs_disk\", {\n availabilityZone: \"cn-beijing-a\",\n size: 50,\n tags: {\n Name: \"TerraformTest-disk\",\n },\n});\nconst ecsInstance = new alicloud.ecs.Instance(\"ecs_instance\", {\n imageId: \"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n instanceType: \"ecs.n4.small\",\n availabilityZone: \"cn-beijing-a\",\n securityGroups: [ecsSg.id],\n instanceName: \"Hello\",\n internetChargeType: \"PayByBandwidth\",\n tags: {\n Name: \"TerraformTest-instance\",\n },\n});\nconst ecsDiskAtt = new alicloud.ecs.DiskAttachment(\"ecs_disk_att\", {\n diskId: ecsDisk.id,\n instanceId: ecsInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new ECS disk-attachment and use it attach one disk to a new instance.\necs_sg = alicloud.ecs.SecurityGroup(\"ecs_sg\",\n name=\"terraform-test-group\",\n description=\"New security group\")\necs_disk = alicloud.ecs.Disk(\"ecs_disk\",\n availability_zone=\"cn-beijing-a\",\n size=50,\n tags={\n \"Name\": \"TerraformTest-disk\",\n })\necs_instance = alicloud.ecs.Instance(\"ecs_instance\",\n image_id=\"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n instance_type=\"ecs.n4.small\",\n availability_zone=\"cn-beijing-a\",\n security_groups=[ecs_sg.id],\n instance_name=\"Hello\",\n internet_charge_type=\"PayByBandwidth\",\n tags={\n \"Name\": \"TerraformTest-instance\",\n })\necs_disk_att = alicloud.ecs.DiskAttachment(\"ecs_disk_att\",\n disk_id=ecs_disk.id,\n instance_id=ecs_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new ECS disk-attachment and use it attach one disk to a new instance.\n var ecsSg = new AliCloud.Ecs.SecurityGroup(\"ecs_sg\", new()\n {\n Name = \"terraform-test-group\",\n Description = \"New security group\",\n });\n\n var ecsDisk = new AliCloud.Ecs.Disk(\"ecs_disk\", new()\n {\n AvailabilityZone = \"cn-beijing-a\",\n Size = 50,\n Tags = \n {\n { \"Name\", \"TerraformTest-disk\" },\n },\n });\n\n var ecsInstance = new AliCloud.Ecs.Instance(\"ecs_instance\", new()\n {\n ImageId = \"ubuntu_18_04_64_20G_alibase_20190624.vhd\",\n InstanceType = \"ecs.n4.small\",\n AvailabilityZone = \"cn-beijing-a\",\n SecurityGroups = new[]\n {\n ecsSg.Id,\n },\n InstanceName = \"Hello\",\n InternetChargeType = \"PayByBandwidth\",\n Tags = \n {\n { \"Name\", \"TerraformTest-instance\" },\n },\n });\n\n var ecsDiskAtt = new AliCloud.Ecs.DiskAttachment(\"ecs_disk_att\", new()\n {\n DiskId = ecsDisk.Id,\n InstanceId = ecsInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new ECS disk-attachment and use it attach one disk to a new instance.\n\t\tecsSg, err := ecs.NewSecurityGroup(ctx, \"ecs_sg\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-test-group\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tecsDisk, err := ecs.NewDisk(ctx, \"ecs_disk\", \u0026ecs.DiskArgs{\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-a\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest-disk\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tecsInstance, err := ecs.NewInstance(ctx, \"ecs_instance\", \u0026ecs.InstanceArgs{\n\t\t\tImageId: pulumi.String(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\"),\n\t\t\tInstanceType: pulumi.String(\"ecs.n4.small\"),\n\t\t\tAvailabilityZone: pulumi.String(\"cn-beijing-a\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tecsSg.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(\"Hello\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"TerraformTest-instance\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewDiskAttachment(ctx, \"ecs_disk_att\", \u0026ecs.DiskAttachmentArgs{\n\t\t\tDiskId: ecsDisk.ID(),\n\t\t\tInstanceId: ecsInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Disk;\nimport com.pulumi.alicloud.ecs.DiskArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.DiskAttachment;\nimport com.pulumi.alicloud.ecs.DiskAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new ECS disk-attachment and use it attach one disk to a new instance.\n var ecsSg = new SecurityGroup(\"ecsSg\", SecurityGroupArgs.builder()\n .name(\"terraform-test-group\")\n .description(\"New security group\")\n .build());\n\n var ecsDisk = new Disk(\"ecsDisk\", DiskArgs.builder()\n .availabilityZone(\"cn-beijing-a\")\n .size(50)\n .tags(Map.of(\"Name\", \"TerraformTest-disk\"))\n .build());\n\n var ecsInstance = new Instance(\"ecsInstance\", InstanceArgs.builder()\n .imageId(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\")\n .instanceType(\"ecs.n4.small\")\n .availabilityZone(\"cn-beijing-a\")\n .securityGroups(ecsSg.id())\n .instanceName(\"Hello\")\n .internetChargeType(\"PayByBandwidth\")\n .tags(Map.of(\"Name\", \"TerraformTest-instance\"))\n .build());\n\n var ecsDiskAtt = new DiskAttachment(\"ecsDiskAtt\", DiskAttachmentArgs.builder()\n .diskId(ecsDisk.id())\n .instanceId(ecsInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new ECS disk-attachment and use it attach one disk to a new instance.\n ecsSg:\n type: alicloud:ecs:SecurityGroup\n name: ecs_sg\n properties:\n name: terraform-test-group\n description: New security group\n ecsDisk:\n type: alicloud:ecs:Disk\n name: ecs_disk\n properties:\n availabilityZone: cn-beijing-a\n size: '50'\n tags:\n Name: TerraformTest-disk\n ecsInstance:\n type: alicloud:ecs:Instance\n name: ecs_instance\n properties:\n imageId: ubuntu_18_04_64_20G_alibase_20190624.vhd\n instanceType: ecs.n4.small\n availabilityZone: cn-beijing-a\n securityGroups:\n - ${ecsSg.id}\n instanceName: Hello\n internetChargeType: PayByBandwidth\n tags:\n Name: TerraformTest-instance\n ecsDiskAtt:\n type: alicloud:ecs:DiskAttachment\n name: ecs_disk_att\n properties:\n diskId: ${ecsDisk.id}\n instanceId: ${ecsInstance.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nThe disk attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/diskAttachment:DiskAttachment example d-abc12345678:i-abc12355\n```\n\n",
"properties": {
"bootable": {
"type": "boolean"
@@ -152767,7 +155396,7 @@
}
},
"alicloud:ecs/ecsAutoSnapshotPolicyAttachment:EcsAutoSnapshotPolicyAttachment": {
- "description": "Provides a ECS Auto Snapshot Policy Attachment resource.\n\nFor information about ECS Auto Snapshot Policy Attachment and how to use it, see [What is Auto Snapshot Policy Attachment](https://www.alibabacloud.com/help/en/doc-detail/25531.htm).\n\n\u003e **NOTE:** Available in v1.122.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst exampleKey = new alicloud.kms.Key(\"example\", {\n description: \"terraform-example\",\n pendingWindowInDays: 7,\n status: \"Enabled\",\n});\nconst exampleAutoSnapshotPolicy = new alicloud.ecs.AutoSnapshotPolicy(\"example\", {\n name: \"terraform-example\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst exampleEcsDisk = new alicloud.ecs.EcsDisk(\"example\", {\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n diskName: \"terraform-example\",\n description: \"Hello ecs disk.\",\n category: \"cloud_efficiency\",\n size: 30,\n encrypted: true,\n kmsKeyId: exampleKey.id,\n tags: {\n Name: \"terraform-example\",\n },\n});\nconst exampleEcsAutoSnapshotPolicyAttachment = new alicloud.ecs.EcsAutoSnapshotPolicyAttachment(\"example\", {\n autoSnapshotPolicyId: exampleAutoSnapshotPolicy.id,\n diskId: exampleEcsDisk.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nexample_key = alicloud.kms.Key(\"example\",\n description=\"terraform-example\",\n pending_window_in_days=7,\n status=\"Enabled\")\nexample_auto_snapshot_policy = alicloud.ecs.AutoSnapshotPolicy(\"example\",\n name=\"terraform-example\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\nexample_ecs_disk = alicloud.ecs.EcsDisk(\"example\",\n zone_id=example.zones[0].id,\n disk_name=\"terraform-example\",\n description=\"Hello ecs disk.\",\n category=\"cloud_efficiency\",\n size=30,\n encrypted=True,\n kms_key_id=example_key.id,\n tags={\n \"Name\": \"terraform-example\",\n })\nexample_ecs_auto_snapshot_policy_attachment = alicloud.ecs.EcsAutoSnapshotPolicyAttachment(\"example\",\n auto_snapshot_policy_id=example_auto_snapshot_policy.id,\n disk_id=example_ecs_disk.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var exampleKey = new AliCloud.Kms.Key(\"example\", new()\n {\n Description = \"terraform-example\",\n PendingWindowInDays = 7,\n Status = \"Enabled\",\n });\n\n var exampleAutoSnapshotPolicy = new AliCloud.Ecs.AutoSnapshotPolicy(\"example\", new()\n {\n Name = \"terraform-example\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var exampleEcsDisk = new AliCloud.Ecs.EcsDisk(\"example\", new()\n {\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n DiskName = \"terraform-example\",\n Description = \"Hello ecs disk.\",\n Category = \"cloud_efficiency\",\n Size = 30,\n Encrypted = true,\n KmsKeyId = exampleKey.Id,\n Tags = \n {\n { \"Name\", \"terraform-example\" },\n },\n });\n\n var exampleEcsAutoSnapshotPolicyAttachment = new AliCloud.Ecs.EcsAutoSnapshotPolicyAttachment(\"example\", new()\n {\n AutoSnapshotPolicyId = exampleAutoSnapshotPolicy.Id,\n DiskId = exampleEcsDisk.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKey, err := kms.NewKey(ctx, \"example\", \u0026kms.KeyArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tPendingWindowInDays: pulumi.Int(7),\n\t\t\tStatus: pulumi.String(\"Enabled\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAutoSnapshotPolicy, err := ecs.NewAutoSnapshotPolicy(ctx, \"example\", \u0026ecs.AutoSnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEcsDisk, err := ecs.NewEcsDisk(ctx, \"example\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t\tDiskName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"Hello ecs disk.\"),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tKmsKeyId: exampleKey.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"terraform-example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsAutoSnapshotPolicyAttachment(ctx, \"example\", \u0026ecs.EcsAutoSnapshotPolicyAttachmentArgs{\n\t\t\tAutoSnapshotPolicyId: exampleAutoSnapshotPolicy.ID(),\n\t\t\tDiskId: exampleEcsDisk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.kms.Key;\nimport com.pulumi.alicloud.kms.KeyArgs;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicy;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsAutoSnapshotPolicyAttachment;\nimport com.pulumi.alicloud.ecs.EcsAutoSnapshotPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var exampleKey = new Key(\"exampleKey\", KeyArgs.builder()\n .description(\"terraform-example\")\n .pendingWindowInDays(7)\n .status(\"Enabled\")\n .build());\n\n var exampleAutoSnapshotPolicy = new AutoSnapshotPolicy(\"exampleAutoSnapshotPolicy\", AutoSnapshotPolicyArgs.builder()\n .name(\"terraform-example\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n var exampleEcsDisk = new EcsDisk(\"exampleEcsDisk\", EcsDiskArgs.builder()\n .zoneId(example.zones()[0].id())\n .diskName(\"terraform-example\")\n .description(\"Hello ecs disk.\")\n .category(\"cloud_efficiency\")\n .size(30)\n .encrypted(true)\n .kmsKeyId(exampleKey.id())\n .tags(Map.of(\"Name\", \"terraform-example\"))\n .build());\n\n var exampleEcsAutoSnapshotPolicyAttachment = new EcsAutoSnapshotPolicyAttachment(\"exampleEcsAutoSnapshotPolicyAttachment\", EcsAutoSnapshotPolicyAttachmentArgs.builder()\n .autoSnapshotPolicyId(exampleAutoSnapshotPolicy.id())\n .diskId(exampleEcsDisk.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleKey:\n type: alicloud:kms:Key\n name: example\n properties:\n description: terraform-example\n pendingWindowInDays: '7'\n status: Enabled\n exampleAutoSnapshotPolicy:\n type: alicloud:ecs:AutoSnapshotPolicy\n name: example\n properties:\n name: terraform-example\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n exampleEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: example\n properties:\n zoneId: ${example.zones[0].id}\n diskName: terraform-example\n description: Hello ecs disk.\n category: cloud_efficiency\n size: '30'\n encrypted: true\n kmsKeyId: ${exampleKey.id}\n tags:\n Name: terraform-example\n exampleEcsAutoSnapshotPolicyAttachment:\n type: alicloud:ecs:EcsAutoSnapshotPolicyAttachment\n name: example\n properties:\n autoSnapshotPolicyId: ${exampleAutoSnapshotPolicy.id}\n diskId: ${exampleEcsDisk.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Auto Snapshot Policy Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsAutoSnapshotPolicyAttachment:EcsAutoSnapshotPolicyAttachment example s-abcd12345:d-abcd12345\n```\n\n",
+ "description": "Provides a ECS Auto Snapshot Policy Attachment resource.\n\nFor information about ECS Auto Snapshot Policy Attachment and how to use it, see [What is Auto Snapshot Policy Attachment](https://www.alibabacloud.com/help/en/doc-detail/25531.htm).\n\n\u003e **NOTE:** Available in v1.122.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst exampleKey = new alicloud.kms.Key(\"example\", {\n description: \"terraform-example\",\n pendingWindowInDays: 7,\n status: \"Enabled\",\n});\nconst exampleAutoSnapshotPolicy = new alicloud.ecs.AutoSnapshotPolicy(\"example\", {\n name: \"terraform-example\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\nconst exampleEcsDisk = new alicloud.ecs.EcsDisk(\"example\", {\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n diskName: \"terraform-example\",\n description: \"Hello ecs disk.\",\n category: \"cloud_efficiency\",\n size: 30,\n encrypted: true,\n kmsKeyId: exampleKey.id,\n tags: {\n Name: \"terraform-example\",\n },\n});\nconst exampleEcsAutoSnapshotPolicyAttachment = new alicloud.ecs.EcsAutoSnapshotPolicyAttachment(\"example\", {\n autoSnapshotPolicyId: exampleAutoSnapshotPolicy.id,\n diskId: exampleEcsDisk.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones(available_resource_creation=\"VSwitch\")\nexample_key = alicloud.kms.Key(\"example\",\n description=\"terraform-example\",\n pending_window_in_days=7,\n status=\"Enabled\")\nexample_auto_snapshot_policy = alicloud.ecs.AutoSnapshotPolicy(\"example\",\n name=\"terraform-example\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\nexample_ecs_disk = alicloud.ecs.EcsDisk(\"example\",\n zone_id=example.zones[0].id,\n disk_name=\"terraform-example\",\n description=\"Hello ecs disk.\",\n category=\"cloud_efficiency\",\n size=30,\n encrypted=True,\n kms_key_id=example_key.id,\n tags={\n \"Name\": \"terraform-example\",\n })\nexample_ecs_auto_snapshot_policy_attachment = alicloud.ecs.EcsAutoSnapshotPolicyAttachment(\"example\",\n auto_snapshot_policy_id=example_auto_snapshot_policy.id,\n disk_id=example_ecs_disk.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var exampleKey = new AliCloud.Kms.Key(\"example\", new()\n {\n Description = \"terraform-example\",\n PendingWindowInDays = 7,\n Status = \"Enabled\",\n });\n\n var exampleAutoSnapshotPolicy = new AliCloud.Ecs.AutoSnapshotPolicy(\"example\", new()\n {\n Name = \"terraform-example\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n var exampleEcsDisk = new AliCloud.Ecs.EcsDisk(\"example\", new()\n {\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n DiskName = \"terraform-example\",\n Description = \"Hello ecs disk.\",\n Category = \"cloud_efficiency\",\n Size = 30,\n Encrypted = true,\n KmsKeyId = exampleKey.Id,\n Tags = \n {\n { \"Name\", \"terraform-example\" },\n },\n });\n\n var exampleEcsAutoSnapshotPolicyAttachment = new AliCloud.Ecs.EcsAutoSnapshotPolicyAttachment(\"example\", new()\n {\n AutoSnapshotPolicyId = exampleAutoSnapshotPolicy.Id,\n DiskId = exampleEcsDisk.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKey, err := kms.NewKey(ctx, \"example\", \u0026kms.KeyArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tPendingWindowInDays: pulumi.Int(7),\n\t\t\tStatus: pulumi.String(\"Enabled\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAutoSnapshotPolicy, err := ecs.NewAutoSnapshotPolicy(ctx, \"example\", \u0026ecs.AutoSnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEcsDisk, err := ecs.NewEcsDisk(ctx, \"example\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t\tDiskName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"Hello ecs disk.\"),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tKmsKeyId: exampleKey.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"terraform-example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsAutoSnapshotPolicyAttachment(ctx, \"example\", \u0026ecs.EcsAutoSnapshotPolicyAttachmentArgs{\n\t\t\tAutoSnapshotPolicyId: exampleAutoSnapshotPolicy.ID(),\n\t\t\tDiskId: exampleEcsDisk.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.kms.Key;\nimport com.pulumi.alicloud.kms.KeyArgs;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicy;\nimport com.pulumi.alicloud.ecs.AutoSnapshotPolicyArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsAutoSnapshotPolicyAttachment;\nimport com.pulumi.alicloud.ecs.EcsAutoSnapshotPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var exampleKey = new Key(\"exampleKey\", KeyArgs.builder()\n .description(\"terraform-example\")\n .pendingWindowInDays(7)\n .status(\"Enabled\")\n .build());\n\n var exampleAutoSnapshotPolicy = new AutoSnapshotPolicy(\"exampleAutoSnapshotPolicy\", AutoSnapshotPolicyArgs.builder()\n .name(\"terraform-example\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n var exampleEcsDisk = new EcsDisk(\"exampleEcsDisk\", EcsDiskArgs.builder()\n .zoneId(example.zones()[0].id())\n .diskName(\"terraform-example\")\n .description(\"Hello ecs disk.\")\n .category(\"cloud_efficiency\")\n .size(30)\n .encrypted(true)\n .kmsKeyId(exampleKey.id())\n .tags(Map.of(\"Name\", \"terraform-example\"))\n .build());\n\n var exampleEcsAutoSnapshotPolicyAttachment = new EcsAutoSnapshotPolicyAttachment(\"exampleEcsAutoSnapshotPolicyAttachment\", EcsAutoSnapshotPolicyAttachmentArgs.builder()\n .autoSnapshotPolicyId(exampleAutoSnapshotPolicy.id())\n .diskId(exampleEcsDisk.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleKey:\n type: alicloud:kms:Key\n name: example\n properties:\n description: terraform-example\n pendingWindowInDays: '7'\n status: Enabled\n exampleAutoSnapshotPolicy:\n type: alicloud:ecs:AutoSnapshotPolicy\n name: example\n properties:\n name: terraform-example\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n exampleEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: example\n properties:\n zoneId: ${example.zones[0].id}\n diskName: terraform-example\n description: Hello ecs disk.\n category: cloud_efficiency\n size: '30'\n encrypted: true\n kmsKeyId: ${exampleKey.id}\n tags:\n Name: terraform-example\n exampleEcsAutoSnapshotPolicyAttachment:\n type: alicloud:ecs:EcsAutoSnapshotPolicyAttachment\n name: example\n properties:\n autoSnapshotPolicyId: ${exampleAutoSnapshotPolicy.id}\n diskId: ${exampleEcsDisk.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Auto Snapshot Policy Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsAutoSnapshotPolicyAttachment:EcsAutoSnapshotPolicyAttachment example s-abcd12345:d-abcd12345\n```\n\n",
"properties": {
"autoSnapshotPolicyId": {
"type": "string",
@@ -152816,7 +155445,7 @@
}
},
"alicloud:ecs/ecsDedicatedHostCluster:EcsDedicatedHostCluster": {
- "description": "Provides a ECS Dedicated Host Cluster resource.\n\nFor information about ECS Dedicated Host Cluster and how to use it, see [What is Dedicated Host Cluster](https://www.alibabacloud.com/help/en/doc-detail/184667.html).\n\n\u003e **NOTE:** Available since v1.146.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({});\nconst exampleEcsDedicatedHostCluster = new alicloud.ecs.EcsDedicatedHostCluster(\"example\", {\n dedicatedHostClusterName: \"example_value\",\n description: \"example_value\",\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n tags: {\n Create: \"TF\",\n For: \"DDH_Cluster_Test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones()\nexample_ecs_dedicated_host_cluster = alicloud.ecs.EcsDedicatedHostCluster(\"example\",\n dedicated_host_cluster_name=\"example_value\",\n description=\"example_value\",\n zone_id=example.zones[0].id,\n tags={\n \"Create\": \"TF\",\n \"For\": \"DDH_Cluster_Test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke();\n\n var exampleEcsDedicatedHostCluster = new AliCloud.Ecs.EcsDedicatedHostCluster(\"example\", new()\n {\n DedicatedHostClusterName = \"example_value\",\n Description = \"example_value\",\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Tags = \n {\n { \"Create\", \"TF\" },\n { \"For\", \"DDH_Cluster_Test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsDedicatedHostCluster(ctx, \"example\", \u0026ecs.EcsDedicatedHostClusterArgs{\n\t\t\tDedicatedHostClusterName: pulumi.String(\"example_value\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Create\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"DDH_Cluster_Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsDedicatedHostCluster;\nimport com.pulumi.alicloud.ecs.EcsDedicatedHostClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var exampleEcsDedicatedHostCluster = new EcsDedicatedHostCluster(\"exampleEcsDedicatedHostCluster\", EcsDedicatedHostClusterArgs.builder()\n .dedicatedHostClusterName(\"example_value\")\n .description(\"example_value\")\n .zoneId(example.zones()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Create\", \"TF\"),\n Map.entry(\"For\", \"DDH_Cluster_Test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleEcsDedicatedHostCluster:\n type: alicloud:ecs:EcsDedicatedHostCluster\n name: example\n properties:\n dedicatedHostClusterName: example_value\n description: example_value\n zoneId: ${example.zones[0].id}\n tags:\n Create: TF\n For: DDH_Cluster_Test\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Dedicated Host Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDedicatedHostCluster:EcsDedicatedHostCluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Dedicated Host Cluster resource.\n\nFor information about ECS Dedicated Host Cluster and how to use it, see [What is Dedicated Host Cluster](https://www.alibabacloud.com/help/en/doc-detail/184667.html).\n\n\u003e **NOTE:** Available since v1.146.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = alicloud.getZones({});\nconst exampleEcsDedicatedHostCluster = new alicloud.ecs.EcsDedicatedHostCluster(\"example\", {\n dedicatedHostClusterName: \"example_value\",\n description: \"example_value\",\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n tags: {\n Create: \"TF\",\n For: \"DDH_Cluster_Test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.get_zones()\nexample_ecs_dedicated_host_cluster = alicloud.ecs.EcsDedicatedHostCluster(\"example\",\n dedicated_host_cluster_name=\"example_value\",\n description=\"example_value\",\n zone_id=example.zones[0].id,\n tags={\n \"Create\": \"TF\",\n \"For\": \"DDH_Cluster_Test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke();\n\n var exampleEcsDedicatedHostCluster = new AliCloud.Ecs.EcsDedicatedHostCluster(\"example\", new()\n {\n DedicatedHostClusterName = \"example_value\",\n Description = \"example_value\",\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Tags = \n {\n { \"Create\", \"TF\" },\n { \"For\", \"DDH_Cluster_Test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsDedicatedHostCluster(ctx, \"example\", \u0026ecs.EcsDedicatedHostClusterArgs{\n\t\t\tDedicatedHostClusterName: pulumi.String(\"example_value\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Create\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"DDH_Cluster_Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsDedicatedHostCluster;\nimport com.pulumi.alicloud.ecs.EcsDedicatedHostClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var exampleEcsDedicatedHostCluster = new EcsDedicatedHostCluster(\"exampleEcsDedicatedHostCluster\", EcsDedicatedHostClusterArgs.builder()\n .dedicatedHostClusterName(\"example_value\")\n .description(\"example_value\")\n .zoneId(example.zones()[0].id())\n .tags(Map.ofEntries(\n Map.entry(\"Create\", \"TF\"),\n Map.entry(\"For\", \"DDH_Cluster_Test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleEcsDedicatedHostCluster:\n type: alicloud:ecs:EcsDedicatedHostCluster\n name: example\n properties:\n dedicatedHostClusterName: example_value\n description: example_value\n zoneId: ${example.zones[0].id}\n tags:\n Create: TF\n For: DDH_Cluster_Test\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Dedicated Host Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDedicatedHostCluster:EcsDedicatedHostCluster example \u003cid\u003e\n```\n\n",
"properties": {
"dedicatedHostClusterName": {
"type": "string",
@@ -152906,7 +155535,7 @@
}
},
"alicloud:ecs/ecsDeploymentSet:EcsDeploymentSet": {
- "description": "Provides a ECS Deployment Set resource.\n\nFor information about ECS Deployment Set and how to use it, see [What is Deployment Set](https://www.alibabacloud.com/help/en/doc-detail/91269.htm).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ecs.EcsDeploymentSet(\"default\", {\n strategy: \"Availability\",\n deploymentSetName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecs.EcsDeploymentSet(\"default\",\n strategy=\"Availability\",\n deployment_set_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ecs.EcsDeploymentSet(\"default\", new()\n {\n Strategy = \"Availability\",\n DeploymentSetName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEcsDeploymentSet(ctx, \"default\", \u0026ecs.EcsDeploymentSetArgs{\n\t\t\tStrategy: pulumi.String(\"Availability\"),\n\t\t\tDeploymentSetName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDeploymentSet;\nimport com.pulumi.alicloud.ecs.EcsDeploymentSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new EcsDeploymentSet(\"default\", EcsDeploymentSetArgs.builder()\n .strategy(\"Availability\")\n .deploymentSetName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ecs:EcsDeploymentSet\n properties:\n strategy: Availability\n deploymentSetName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Deployment Set can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDeploymentSet:EcsDeploymentSet example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Deployment Set resource.\n\nFor information about ECS Deployment Set and how to use it, see [What is Deployment Set](https://www.alibabacloud.com/help/en/doc-detail/91269.htm).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ecs.EcsDeploymentSet(\"default\", {\n strategy: \"Availability\",\n deploymentSetName: name,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecs.EcsDeploymentSet(\"default\",\n strategy=\"Availability\",\n deployment_set_name=name,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ecs.EcsDeploymentSet(\"default\", new()\n {\n Strategy = \"Availability\",\n DeploymentSetName = name,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEcsDeploymentSet(ctx, \"default\", \u0026ecs.EcsDeploymentSetArgs{\n\t\t\tStrategy: pulumi.String(\"Availability\"),\n\t\t\tDeploymentSetName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsDeploymentSet;\nimport com.pulumi.alicloud.ecs.EcsDeploymentSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new EcsDeploymentSet(\"default\", EcsDeploymentSetArgs.builder()\n .strategy(\"Availability\")\n .deploymentSetName(name)\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ecs:EcsDeploymentSet\n properties:\n strategy: Availability\n deploymentSetName: ${name}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Deployment Set can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDeploymentSet:EcsDeploymentSet example \u003cid\u003e\n```\n\n",
"properties": {
"deploymentSetName": {
"type": "string",
@@ -153414,7 +156043,7 @@
}
},
"alicloud:ecs/ecsDiskAttachment:EcsDiskAttachment": {
- "description": "Provides an Alicloud ECS Disk Attachment as a resource, to attach and detach disks from ECS Instances.\n\nFor information about ECS Disk Attachment and how to use it, see [What is Disk Attachment](https://www.alibabacloud.com/help/en/doc-detail/25515.htm).\n\n\u003e **NOTE:** Available since v1.122.0.\n\n## Example Usage\n\nBasic usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"tf-example\",\n description: \"New security group\",\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n hostName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst disk = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: disk.then(disk =\u003e disk.zones?.[0]?.id),\n category: \"cloud_efficiency\",\n deleteAutoSnapshot: true,\n description: \"Test For Terraform\",\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n Environment: \"Acceptance-test\",\n },\n});\nconst defaultEcsDiskAttachment = new alicloud.ecs.EcsDiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"tf-example\",\n description=\"New security group\",\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n host_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndisk = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=disk.zones[0].id,\n category=\"cloud_efficiency\",\n delete_auto_snapshot=True,\n description=\"Test For Terraform\",\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"Environment\": \"Acceptance-test\",\n })\ndefault_ecs_disk_attachment = alicloud.ecs.EcsDiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"tf-example\",\n Description = \"New security group\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n HostName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var disk = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = disk.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Category = \"cloud_efficiency\",\n DeleteAutoSnapshot = true,\n Description = \"Test For Terraform\",\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"Environment\", \"Acceptance-test\" },\n },\n });\n\n var defaultEcsDiskAttachment = new AliCloud.Ecs.EcsDiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdisk, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(disk.Zones[0].Id),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Test For Terraform\"),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"Environment\": pulumi.String(\"Acceptance-test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsDiskAttachment(ctx, \"default\", \u0026ecs.EcsDiskAttachmentArgs{\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachment;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"tf-example\")\n .description(\"New security group\")\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .hostName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n final var disk = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(disk.zones()[0].id())\n .category(\"cloud_efficiency\")\n .deleteAutoSnapshot(true)\n .description(\"Test For Terraform\")\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"Environment\", \"Acceptance-test\")\n ))\n .build());\n\n var defaultEcsDiskAttachment = new EcsDiskAttachment(\"defaultEcsDiskAttachment\", EcsDiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n # Create a new ECS disk-attachment and use it attach one disk to a new instance.\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: tf-example\n description: New security group\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n hostName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${disk.zones[0].id}\n category: cloud_efficiency\n deleteAutoSnapshot: 'true'\n description: Test For Terraform\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n Environment: Acceptance-test\n defaultEcsDiskAttachment:\n type: alicloud:ecs:EcsDiskAttachment\n name: default\n properties:\n diskId: ${defaultEcsDisk.id}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n disk:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe disk attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDiskAttachment:EcsDiskAttachment example d-abc12345678:i-abc12355\n```\n\n",
+ "description": "Provides an Alicloud ECS Disk Attachment as a resource, to attach and detach disks from ECS Instances.\n\nFor information about ECS Disk Attachment and how to use it, see [What is Disk Attachment](https://www.alibabacloud.com/help/en/doc-detail/25515.htm).\n\n\u003e **NOTE:** Available since v1.122.0.\n\n## Example Usage\n\nBasic usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n instanceTypeFamily: \"ecs.sn1ne\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"10.4.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"tf-example\",\n description: \"New security group\",\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n hostName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst disk = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: disk.then(disk =\u003e disk.zones?.[0]?.id),\n category: \"cloud_efficiency\",\n deleteAutoSnapshot: true,\n description: \"Test For Terraform\",\n diskName: name,\n enableAutoSnapshot: true,\n encrypted: true,\n size: 500,\n tags: {\n Created: \"TF\",\n Environment: \"Acceptance-test\",\n },\n});\nconst defaultEcsDiskAttachment = new alicloud.ecs.EcsDiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n instance_type_family=\"ecs.sn1ne\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"10.4.0.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"tf-example\",\n description=\"New security group\",\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n host_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndisk = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=disk.zones[0].id,\n category=\"cloud_efficiency\",\n delete_auto_snapshot=True,\n description=\"Test For Terraform\",\n disk_name=name,\n enable_auto_snapshot=True,\n encrypted=True,\n size=500,\n tags={\n \"Created\": \"TF\",\n \"Environment\": \"Acceptance-test\",\n })\ndefault_ecs_disk_attachment = alicloud.ecs.EcsDiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"10.4.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"tf-example\",\n Description = \"New security group\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n HostName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var disk = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = disk.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n Category = \"cloud_efficiency\",\n DeleteAutoSnapshot = true,\n Description = \"Test For Terraform\",\n DiskName = name,\n EnableAutoSnapshot = true,\n Encrypted = true,\n Size = 500,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"Environment\", \"Acceptance-test\" },\n },\n });\n\n var defaultEcsDiskAttachment = new AliCloud.Ecs.EcsDiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"tf-example\"),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHostName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdisk, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(disk.Zones[0].Id),\n\t\t\tCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tDeleteAutoSnapshot: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Test For Terraform\"),\n\t\t\tDiskName: pulumi.String(name),\n\t\t\tEnableAutoSnapshot: pulumi.Bool(true),\n\t\t\tEncrypted: pulumi.Bool(true),\n\t\t\tSize: pulumi.Int(500),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"Environment\": pulumi.String(\"Acceptance-test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsDiskAttachment(ctx, \"default\", \u0026ecs.EcsDiskAttachmentArgs{\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachment;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"10.4.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"tf-example\")\n .description(\"New security group\")\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .hostName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n final var disk = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(disk.zones()[0].id())\n .category(\"cloud_efficiency\")\n .deleteAutoSnapshot(true)\n .description(\"Test For Terraform\")\n .diskName(name)\n .enableAutoSnapshot(true)\n .encrypted(true)\n .size(500)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"Environment\", \"Acceptance-test\")\n ))\n .build());\n\n var defaultEcsDiskAttachment = new EcsDiskAttachment(\"defaultEcsDiskAttachment\", EcsDiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n # Create a new ECS disk-attachment and use it attach one disk to a new instance.\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 10.4.0.0/24\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: tf-example\n description: New security group\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n hostName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${disk.zones[0].id}\n category: cloud_efficiency\n deleteAutoSnapshot: 'true'\n description: Test For Terraform\n diskName: ${name}\n enableAutoSnapshot: 'true'\n encrypted: 'true'\n size: '500'\n tags:\n Created: TF\n Environment: Acceptance-test\n defaultEcsDiskAttachment:\n type: alicloud:ecs:EcsDiskAttachment\n name: default\n properties:\n diskId: ${defaultEcsDisk.id}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n disk:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nThe disk attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsDiskAttachment:EcsDiskAttachment example d-abc12345678:i-abc12355\n```\n\n",
"properties": {
"bootable": {
"type": "boolean",
@@ -153526,7 +156155,7 @@
}
},
"alicloud:ecs/ecsImageComponent:EcsImageComponent": {
- "description": "Provides a ECS Image Component resource.\n\n\n\nFor information about ECS Image Component and how to use it, see [What is Image Component](https://www.alibabacloud.com/help/en/doc-detail/200424.htm).\n\n\u003e **NOTE:** Available since v1.159.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n nameRegex: \"default\",\n});\nconst example = new alicloud.ecs.EcsImageComponent(\"example\", {\n componentType: \"Build\",\n content: \"RUN yum update -y\",\n description: \"example_value\",\n imageComponentName: \"example_value\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n systemType: \"Linux\",\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(name_regex=\"default\")\nexample = alicloud.ecs.EcsImageComponent(\"example\",\n component_type=\"Build\",\n content=\"RUN yum update -y\",\n description=\"example_value\",\n image_component_name=\"example_value\",\n resource_group_id=default.groups[0].id,\n system_type=\"Linux\",\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n NameRegex = \"default\",\n });\n\n var example = new AliCloud.Ecs.EcsImageComponent(\"example\", new()\n {\n ComponentType = \"Build\",\n Content = \"RUN yum update -y\",\n Description = \"example_value\",\n ImageComponentName = \"example_value\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n SystemType = \"Linux\",\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsImageComponent(ctx, \"example\", \u0026ecs.EcsImageComponentArgs{\n\t\t\tComponentType: pulumi.String(\"Build\"),\n\t\t\tContent: pulumi.String(\"RUN yum update -y\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tImageComponentName: pulumi.String(\"example_value\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tSystemType: pulumi.String(\"Linux\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsImageComponent;\nimport com.pulumi.alicloud.ecs.EcsImageComponentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .nameRegex(\"default\")\n .build());\n\n var example = new EcsImageComponent(\"example\", EcsImageComponentArgs.builder()\n .componentType(\"Build\")\n .content(\"RUN yum update -y\")\n .description(\"example_value\")\n .imageComponentName(\"example_value\")\n .resourceGroupId(default_.groups()[0].id())\n .systemType(\"Linux\")\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:EcsImageComponent\n properties:\n componentType: Build\n content: RUN yum update -y\n description: example_value\n imageComponentName: example_value\n resourceGroupId: ${default.groups[0].id}\n systemType: Linux\n tags:\n Created: TF\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n nameRegex: default\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Image Component can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsImageComponent:EcsImageComponent example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Image Component resource.\n\n\n\nFor information about ECS Image Component and how to use it, see [What is Image Component](https://www.alibabacloud.com/help/en/doc-detail/200424.htm).\n\n\u003e **NOTE:** Available since v1.159.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n nameRegex: \"default\",\n});\nconst example = new alicloud.ecs.EcsImageComponent(\"example\", {\n componentType: \"Build\",\n content: \"RUN yum update -y\",\n description: \"example_value\",\n imageComponentName: \"example_value\",\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n systemType: \"Linux\",\n tags: {\n Created: \"TF\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(name_regex=\"default\")\nexample = alicloud.ecs.EcsImageComponent(\"example\",\n component_type=\"Build\",\n content=\"RUN yum update -y\",\n description=\"example_value\",\n image_component_name=\"example_value\",\n resource_group_id=default.groups[0].id,\n system_type=\"Linux\",\n tags={\n \"Created\": \"TF\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n NameRegex = \"default\",\n });\n\n var example = new AliCloud.Ecs.EcsImageComponent(\"example\", new()\n {\n ComponentType = \"Build\",\n Content = \"RUN yum update -y\",\n Description = \"example_value\",\n ImageComponentName = \"example_value\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n SystemType = \"Linux\",\n Tags = \n {\n { \"Created\", \"TF\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsImageComponent(ctx, \"example\", \u0026ecs.EcsImageComponentArgs{\n\t\t\tComponentType: pulumi.String(\"Build\"),\n\t\t\tContent: pulumi.String(\"RUN yum update -y\"),\n\t\t\tDescription: pulumi.String(\"example_value\"),\n\t\t\tImageComponentName: pulumi.String(\"example_value\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tSystemType: pulumi.String(\"Linux\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsImageComponent;\nimport com.pulumi.alicloud.ecs.EcsImageComponentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .nameRegex(\"default\")\n .build());\n\n var example = new EcsImageComponent(\"example\", EcsImageComponentArgs.builder()\n .componentType(\"Build\")\n .content(\"RUN yum update -y\")\n .description(\"example_value\")\n .imageComponentName(\"example_value\")\n .resourceGroupId(default_.groups()[0].id())\n .systemType(\"Linux\")\n .tags(Map.of(\"Created\", \"TF\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:EcsImageComponent\n properties:\n componentType: Build\n content: RUN yum update -y\n description: example_value\n imageComponentName: example_value\n resourceGroupId: ${default.groups[0].id}\n systemType: Linux\n tags:\n Created: TF\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n nameRegex: default\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Image Component can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsImageComponent:EcsImageComponent example \u003cid\u003e\n```\n\n",
"properties": {
"componentType": {
"type": "string",
@@ -153676,7 +156305,7 @@
}
},
"alicloud:ecs/ecsImagePipeline:EcsImagePipeline": {
- "description": "Provides a ECS Image Pipeline resource.\n\nFor information about ECS Image Pipeline and how to use it, see [What is Image Pipeline](https://www.alibabacloud.com/help/en/doc-detail/200427.html).\n\n\u003e **NOTE:** Available in v1.163.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n nameRegex: \"default\",\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetImages.then(defaultGetImages =\u003e alicloud.ecs.getInstanceTypes({\n imageId: defaultGetImages.ids?.[0],\n}));\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultEcsImagePipeline = new alicloud.ecs.EcsImagePipeline(\"default\", {\n addAccounts: [defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id)],\n baseImage: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n baseImageType: \"IMAGE\",\n buildContent: \"RUN yum update -y\",\n deleteInstanceOnFailure: false,\n imageName: \"terraform-example\",\n name: \"terraform-example\",\n description: \"terraform-example\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n internetMaxBandwidthOut: 20,\n systemDiskSize: 40,\n toRegionIds: [\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n ],\n vswitchId: defaultSwitch.id,\n tags: {\n Created: \"TF\",\n For: \"Acceptance-test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(name_regex=\"default\")\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(image_id=default_get_images.ids[0])\ndefault_get_account = alicloud.get_account()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_ecs_image_pipeline = alicloud.ecs.EcsImagePipeline(\"default\",\n add_accounts=[default_get_account.id],\n base_image=default_get_images.ids[0],\n base_image_type=\"IMAGE\",\n build_content=\"RUN yum update -y\",\n delete_instance_on_failure=False,\n image_name=\"terraform-example\",\n name=\"terraform-example\",\n description=\"terraform-example\",\n instance_type=default_get_instance_types.ids[0],\n resource_group_id=default.groups[0].id,\n internet_max_bandwidth_out=20,\n system_disk_size=40,\n to_region_ids=[\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n ],\n vswitch_id=default_switch.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance-test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n NameRegex = \"default\",\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultEcsImagePipeline = new AliCloud.Ecs.EcsImagePipeline(\"default\", new()\n {\n AddAccounts = new[]\n {\n defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n },\n BaseImage = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n BaseImageType = \"IMAGE\",\n BuildContent = \"RUN yum update -y\",\n DeleteInstanceOnFailure = false,\n ImageName = \"terraform-example\",\n Name = \"terraform-example\",\n Description = \"terraform-example\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n InternetMaxBandwidthOut = 20,\n SystemDiskSize = 40,\n ToRegionIds = new[]\n {\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n },\n VswitchId = defaultSwitch.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance-test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tImageId: pulumi.StringRef(defaultGetImages.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsImagePipeline(ctx, \"default\", \u0026ecs.EcsImagePipelineArgs{\n\t\t\tAddAccounts: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetAccount.Id),\n\t\t\t},\n\t\t\tBaseImage: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tBaseImageType: pulumi.String(\"IMAGE\"),\n\t\t\tBuildContent: pulumi.String(\"RUN yum update -y\"),\n\t\t\tDeleteInstanceOnFailure: pulumi.Bool(false),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(20),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tToRegionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"cn-qingdao\"),\n\t\t\t\tpulumi.String(\"cn-zhangjiakou\"),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance-test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.EcsImagePipeline;\nimport com.pulumi.alicloud.ecs.EcsImagePipelineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .nameRegex(\"default\")\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .imageId(defaultGetImages.ids()[0])\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultEcsImagePipeline = new EcsImagePipeline(\"defaultEcsImagePipeline\", EcsImagePipelineArgs.builder()\n .addAccounts(defaultGetAccount.id())\n .baseImage(defaultGetImages.ids()[0])\n .baseImageType(\"IMAGE\")\n .buildContent(\"RUN yum update -y\")\n .deleteInstanceOnFailure(false)\n .imageName(\"terraform-example\")\n .name(\"terraform-example\")\n .description(\"terraform-example\")\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .resourceGroupId(default_.groups()[0].id())\n .internetMaxBandwidthOut(20)\n .systemDiskSize(40)\n .toRegionIds( \n \"cn-qingdao\",\n \"cn-zhangjiakou\")\n .vswitchId(defaultSwitch.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance-test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultEcsImagePipeline:\n type: alicloud:ecs:EcsImagePipeline\n name: default\n properties:\n addAccounts:\n - ${defaultGetAccount.id}\n baseImage: ${defaultGetImages.ids[0]}\n baseImageType: IMAGE\n buildContent: RUN yum update -y\n deleteInstanceOnFailure: false\n imageName: terraform-example\n name: terraform-example\n description: terraform-example\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n resourceGroupId: ${default.groups[0].id}\n internetMaxBandwidthOut: 20\n systemDiskSize: 40\n toRegionIds:\n - cn-qingdao\n - cn-zhangjiakou\n vswitchId: ${defaultSwitch.id}\n tags:\n Created: TF\n For: Acceptance-test\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n nameRegex: default\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n imageId: ${defaultGetImages.ids[0]}\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Image Pipeline can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsImagePipeline:EcsImagePipeline example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Image Pipeline resource.\n\nFor information about ECS Image Pipeline and how to use it, see [What is Image Pipeline](https://www.alibabacloud.com/help/en/doc-detail/200427.html).\n\n\u003e **NOTE:** Available in v1.163.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.resourcemanager.getResourceGroups({\n nameRegex: \"default\",\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetImages.then(defaultGetImages =\u003e alicloud.ecs.getInstanceTypes({\n imageId: defaultGetImages.ids?.[0],\n}));\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultEcsImagePipeline = new alicloud.ecs.EcsImagePipeline(\"default\", {\n addAccounts: [defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id)],\n baseImage: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n baseImageType: \"IMAGE\",\n buildContent: \"RUN yum update -y\",\n deleteInstanceOnFailure: false,\n imageName: \"terraform-example\",\n name: \"terraform-example\",\n description: \"terraform-example\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n resourceGroupId: _default.then(_default =\u003e _default.groups?.[0]?.id),\n internetMaxBandwidthOut: 20,\n systemDiskSize: 40,\n toRegionIds: [\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n ],\n vswitchId: defaultSwitch.id,\n tags: {\n Created: \"TF\",\n For: \"Acceptance-test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.resourcemanager.get_resource_groups(name_regex=\"default\")\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(image_id=default_get_images.ids[0])\ndefault_get_account = alicloud.get_account()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_ecs_image_pipeline = alicloud.ecs.EcsImagePipeline(\"default\",\n add_accounts=[default_get_account.id],\n base_image=default_get_images.ids[0],\n base_image_type=\"IMAGE\",\n build_content=\"RUN yum update -y\",\n delete_instance_on_failure=False,\n image_name=\"terraform-example\",\n name=\"terraform-example\",\n description=\"terraform-example\",\n instance_type=default_get_instance_types.ids[0],\n resource_group_id=default.groups[0].id,\n internet_max_bandwidth_out=20,\n system_disk_size=40,\n to_region_ids=[\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n ],\n vswitch_id=default_switch.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance-test\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n NameRegex = \"default\",\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultEcsImagePipeline = new AliCloud.Ecs.EcsImagePipeline(\"default\", new()\n {\n AddAccounts = new[]\n {\n defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n },\n BaseImage = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n BaseImageType = \"IMAGE\",\n BuildContent = \"RUN yum update -y\",\n DeleteInstanceOnFailure = false,\n ImageName = \"terraform-example\",\n Name = \"terraform-example\",\n Description = \"terraform-example\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Groups[0]?.Id)),\n InternetMaxBandwidthOut = 20,\n SystemDiskSize = 40,\n ToRegionIds = new[]\n {\n \"cn-qingdao\",\n \"cn-zhangjiakou\",\n },\n VswitchId = defaultSwitch.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance-test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"default\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tImageId: pulumi.StringRef(defaultGetImages.Ids[0]),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsImagePipeline(ctx, \"default\", \u0026ecs.EcsImagePipelineArgs{\n\t\t\tAddAccounts: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetAccount.Id),\n\t\t\t},\n\t\t\tBaseImage: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tBaseImageType: pulumi.String(\"IMAGE\"),\n\t\t\tBuildContent: pulumi.String(\"RUN yum update -y\"),\n\t\t\tDeleteInstanceOnFailure: pulumi.Bool(false),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tResourceGroupId: pulumi.String(_default.Groups[0].Id),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(20),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tToRegionIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"cn-qingdao\"),\n\t\t\t\tpulumi.String(\"cn-zhangjiakou\"),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance-test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.EcsImagePipeline;\nimport com.pulumi.alicloud.ecs.EcsImagePipelineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .nameRegex(\"default\")\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .imageId(defaultGetImages.ids()[0])\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultEcsImagePipeline = new EcsImagePipeline(\"defaultEcsImagePipeline\", EcsImagePipelineArgs.builder()\n .addAccounts(defaultGetAccount.id())\n .baseImage(defaultGetImages.ids()[0])\n .baseImageType(\"IMAGE\")\n .buildContent(\"RUN yum update -y\")\n .deleteInstanceOnFailure(false)\n .imageName(\"terraform-example\")\n .name(\"terraform-example\")\n .description(\"terraform-example\")\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .resourceGroupId(default_.groups()[0].id())\n .internetMaxBandwidthOut(20)\n .systemDiskSize(40)\n .toRegionIds( \n \"cn-qingdao\",\n \"cn-zhangjiakou\")\n .vswitchId(defaultSwitch.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance-test\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultEcsImagePipeline:\n type: alicloud:ecs:EcsImagePipeline\n name: default\n properties:\n addAccounts:\n - ${defaultGetAccount.id}\n baseImage: ${defaultGetImages.ids[0]}\n baseImageType: IMAGE\n buildContent: RUN yum update -y\n deleteInstanceOnFailure: false\n imageName: terraform-example\n name: terraform-example\n description: terraform-example\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n resourceGroupId: ${default.groups[0].id}\n internetMaxBandwidthOut: 20\n systemDiskSize: 40\n toRegionIds:\n - cn-qingdao\n - cn-zhangjiakou\n vswitchId: ${defaultSwitch.id}\n tags:\n Created: TF\n For: Acceptance-test\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n nameRegex: default\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n imageId: ${defaultGetImages.ids[0]}\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Image Pipeline can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsImagePipeline:EcsImagePipeline example \u003cid\u003e\n```\n\n",
"properties": {
"addAccounts": {
"type": "array",
@@ -153939,7 +156568,7 @@
}
},
"alicloud:ecs/ecsInstanceSet:EcsInstanceSet": {
- "description": "Provides a ECS Instance Set resource.\n\nFor information about ECS Instance Set and how to use it, see [What is Instance Set](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/runinstances).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n\u003e **NOTE:** This resource is used to batch create a group of instance resources with the same configuration. However, this resource is not recommended. \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.Instance`\" pulumi-lang-dotnet=\"`alicloud.ecs.Instance`\" pulumi-lang-go=\"`ecs.Instance`\" pulumi-lang-python=\"`ecs.Instance`\" pulumi-lang-yaml=\"`alicloud.ecs.Instance`\" pulumi-lang-java=\"`alicloud.ecs.Instance`\"\u003e`alicloud.ecs.Instance`\u003c/span\u003e is preferred.\n\n\u003e **NOTE:** In the instances managed by this resource, names are automatically generated based on \u003cspan pulumi-lang-nodejs=\"`instanceName`\" pulumi-lang-dotnet=\"`InstanceName`\" pulumi-lang-go=\"`instanceName`\" pulumi-lang-python=\"`instance_name`\" pulumi-lang-yaml=\"`instanceName`\" pulumi-lang-java=\"`instanceName`\"\u003e`instance_name`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`uniqueSuffix`\" pulumi-lang-dotnet=\"`UniqueSuffix`\" pulumi-lang-go=\"`uniqueSuffix`\" pulumi-lang-python=\"`unique_suffix`\" pulumi-lang-yaml=\"`uniqueSuffix`\" pulumi-lang-java=\"`uniqueSuffix`\"\u003e`unique_suffix`\u003c/span\u003e.\n\n\u003e **NOTE:** Only \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e support batch modification.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst beijingK = new alicloud.ecs.EcsInstanceSet(\"beijing_k\", {\n amount: 10,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n instanceChargeType: \"PostPaid\",\n systemDiskPerformanceLevel: \"PL0\",\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 200,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup].map(__item =\u003e __item.id),\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\nbeijing_k = alicloud.ecs.EcsInstanceSet(\"beijing_k\",\n amount=10,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n instance_charge_type=\"PostPaid\",\n system_disk_performance_level=\"PL0\",\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=200,\n vswitch_id=default_switch.id,\n security_group_ids=[__item.id for __item in [default_security_group]],\n zone_id=default.zones[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var beijingK = new AliCloud.Ecs.EcsInstanceSet(\"beijing_k\", new()\n {\n Amount = 10,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n InstanceChargeType = \"PostPaid\",\n SystemDiskPerformanceLevel = \"PL0\",\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 200,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nCpuCoreCount: pulumi.IntRef(1),\nMemorySize: pulumi.Float64Ref(2),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\n_, err = ecs.NewEcsInstanceSet(ctx, \"beijing_k\", \u0026ecs.EcsInstanceSetArgs{\nAmount: pulumi.Int(10),\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskPerformanceLevel: pulumi.String(\"PL0\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(200),\nVswitchId: defaultSwitch.ID(),\nSecurityGroupIds: splat0,\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsInstanceSet;\nimport com.pulumi.alicloud.ecs.EcsInstanceSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var beijingK = new EcsInstanceSet(\"beijingK\", EcsInstanceSetArgs.builder()\n .amount(10)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .instanceChargeType(\"PostPaid\")\n .systemDiskPerformanceLevel(\"PL0\")\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(200)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .zoneId(default_.zones()[0].id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Provides a ECS Instance Set resource.\n\nFor information about ECS Instance Set and how to use it, see [What is Instance Set](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/runinstances).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n\u003e **NOTE:** This resource is used to batch create a group of instance resources with the same configuration. However, this resource is not recommended. \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.Instance`\" pulumi-lang-dotnet=\"`alicloud.ecs.Instance`\" pulumi-lang-go=\"`ecs.Instance`\" pulumi-lang-python=\"`ecs.Instance`\" pulumi-lang-yaml=\"`alicloud.ecs.Instance`\" pulumi-lang-java=\"`alicloud.ecs.Instance`\"\u003e`alicloud.ecs.Instance`\u003c/span\u003e is preferred.\n\n\u003e **NOTE:** In the instances managed by this resource, names are automatically generated based on \u003cspan pulumi-lang-nodejs=\"`instanceName`\" pulumi-lang-dotnet=\"`InstanceName`\" pulumi-lang-go=\"`instanceName`\" pulumi-lang-python=\"`instance_name`\" pulumi-lang-yaml=\"`instanceName`\" pulumi-lang-java=\"`instanceName`\"\u003e`instance_name`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`uniqueSuffix`\" pulumi-lang-dotnet=\"`UniqueSuffix`\" pulumi-lang-go=\"`uniqueSuffix`\" pulumi-lang-python=\"`unique_suffix`\" pulumi-lang-yaml=\"`uniqueSuffix`\" pulumi-lang-java=\"`uniqueSuffix`\"\u003e`unique_suffix`\u003c/span\u003e.\n\n\u003e **NOTE:** Only \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e support batch modification.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst beijingK = new alicloud.ecs.EcsInstanceSet(\"beijing_k\", {\n amount: 10,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n instanceName: name,\n instanceChargeType: \"PostPaid\",\n systemDiskPerformanceLevel: \"PL0\",\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 200,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup].map(__item =\u003e __item.id),\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\nbeijing_k = alicloud.ecs.EcsInstanceSet(\"beijing_k\",\n amount=10,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n instance_name=name,\n instance_charge_type=\"PostPaid\",\n system_disk_performance_level=\"PL0\",\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=200,\n vswitch_id=default_switch.id,\n security_group_ids=[__item.id for __item in [default_security_group]],\n zone_id=default.zones[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var beijingK = new AliCloud.Ecs.EcsInstanceSet(\"beijing_k\", new()\n {\n Amount = 10,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InstanceName = name,\n InstanceChargeType = \"PostPaid\",\n SystemDiskPerformanceLevel = \"PL0\",\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 200,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nCpuCoreCount: pulumi.IntRef(1),\nMemorySize: pulumi.Float64Ref(2),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\n_, err = ecs.NewEcsInstanceSet(ctx, \"beijing_k\", \u0026ecs.EcsInstanceSetArgs{\nAmount: pulumi.Int(10),\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nInstanceName: pulumi.String(name),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskPerformanceLevel: pulumi.String(\"PL0\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskSize: pulumi.Int(200),\nVswitchId: defaultSwitch.ID(),\nSecurityGroupIds: splat0,\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsInstanceSet;\nimport com.pulumi.alicloud.ecs.EcsInstanceSetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var beijingK = new EcsInstanceSet(\"beijingK\", EcsInstanceSetArgs.builder()\n .amount(10)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .instanceName(name)\n .instanceChargeType(\"PostPaid\")\n .systemDiskPerformanceLevel(\"PL0\")\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(200)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .zoneId(default_.zones()[0].id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"amount": {
"type": "integer",
@@ -154636,7 +157265,7 @@
}
},
"alicloud:ecs/ecsInvocation:EcsInvocation": {
- "description": "Provides a ECS Invocation resource.\n\nFor information about ECS Invocation and how to use it, see [What is Invocation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/invokecommand#t9958.html).\n\n\u003e **NOTE:** Available since v1.168.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 2,\n memorySize: 8,\n instanceTypeFamily: \"ecs.g6\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroupRule = new alicloud.ecs.SecurityGroupRule(\"default\", {\n type: \"ingress\",\n ipProtocol: \"tcp\",\n nicType: \"intranet\",\n policy: \"accept\",\n portRange: \"22/22\",\n priority: 1,\n securityGroupId: defaultSecurityGroup.id,\n cidrIp: \"172.16.0.0/24\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n vswitchId: defaultSwitch.id,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n systemDiskCategory: \"cloud_efficiency\",\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 5,\n securityGroups: [defaultSecurityGroup.id],\n instanceName: name,\n});\nconst defaultCommand = new alicloud.ecs.Command(\"default\", {\n name: name,\n commandContent: \"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n description: \"For Terraform Test\",\n type: \"RunShellScript\",\n workingDir: \"/root\",\n enableParameter: true,\n});\nconst defaultEcsInvocation = new alicloud.ecs.EcsInvocation(\"default\", {\n commandId: defaultCommand.id,\n instanceIds: [defaultInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=2,\n memory_size=8,\n instance_type_family=\"ecs.g6\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n vpc_id=default_network.id)\ndefault_security_group_rule = alicloud.ecs.SecurityGroupRule(\"default\",\n type=\"ingress\",\n ip_protocol=\"tcp\",\n nic_type=\"intranet\",\n policy=\"accept\",\n port_range=\"22/22\",\n priority=1,\n security_group_id=default_security_group.id,\n cidr_ip=\"172.16.0.0/24\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n vswitch_id=default_switch.id,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n system_disk_category=\"cloud_efficiency\",\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=5,\n security_groups=[default_security_group.id],\n instance_name=name)\ndefault_command = alicloud.ecs.Command(\"default\",\n name=name,\n command_content=\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n description=\"For Terraform Test\",\n type=\"RunShellScript\",\n working_dir=\"/root\",\n enable_parameter=True)\ndefault_ecs_invocation = alicloud.ecs.EcsInvocation(\"default\",\n command_id=default_command.id,\n instance_ids=[default_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 2,\n MemorySize = 8,\n InstanceTypeFamily = \"ecs.g6\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroupRule = new AliCloud.Ecs.SecurityGroupRule(\"default\", new()\n {\n Type = \"ingress\",\n IpProtocol = \"tcp\",\n NicType = \"intranet\",\n Policy = \"accept\",\n PortRange = \"22/22\",\n Priority = 1,\n SecurityGroupId = defaultSecurityGroup.Id,\n CidrIp = \"172.16.0.0/24\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n VswitchId = defaultSwitch.Id,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SystemDiskCategory = \"cloud_efficiency\",\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 5,\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n InstanceName = name,\n });\n\n var defaultCommand = new AliCloud.Ecs.Command(\"default\", new()\n {\n Name = name,\n CommandContent = \"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n Description = \"For Terraform Test\",\n Type = \"RunShellScript\",\n WorkingDir = \"/root\",\n EnableParameter = true,\n });\n\n var defaultEcsInvocation = new AliCloud.Ecs.EcsInvocation(\"default\", new()\n {\n CommandId = defaultCommand.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(2),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroupRule(ctx, \"default\", \u0026ecs.SecurityGroupRuleArgs{\n\t\t\tType: pulumi.String(\"ingress\"),\n\t\t\tIpProtocol: pulumi.String(\"tcp\"),\n\t\t\tNicType: pulumi.String(\"intranet\"),\n\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\tPortRange: pulumi.String(\"22/22\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tCidrIp: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCommand, err := ecs.NewCommand(ctx, \"default\", \u0026ecs.CommandArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tCommandContent: pulumi.String(\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t\tType: pulumi.String(\"RunShellScript\"),\n\t\t\tWorkingDir: pulumi.String(\"/root\"),\n\t\t\tEnableParameter: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsInvocation(ctx, \"default\", \u0026ecs.EcsInvocationArgs{\n\t\t\tCommandId: defaultCommand.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroupRule;\nimport com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.Command;\nimport com.pulumi.alicloud.ecs.CommandArgs;\nimport com.pulumi.alicloud.ecs.EcsInvocation;\nimport com.pulumi.alicloud.ecs.EcsInvocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(2)\n .memorySize(8)\n .instanceTypeFamily(\"ecs.g6\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroupRule = new SecurityGroupRule(\"defaultSecurityGroupRule\", SecurityGroupRuleArgs.builder()\n .type(\"ingress\")\n .ipProtocol(\"tcp\")\n .nicType(\"intranet\")\n .policy(\"accept\")\n .portRange(\"22/22\")\n .priority(1)\n .securityGroupId(defaultSecurityGroup.id())\n .cidrIp(\"172.16.0.0/24\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .vswitchId(defaultSwitch.id())\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(5)\n .securityGroups(defaultSecurityGroup.id())\n .instanceName(name)\n .build());\n\n var defaultCommand = new Command(\"defaultCommand\", CommandArgs.builder()\n .name(name)\n .commandContent(\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\")\n .description(\"For Terraform Test\")\n .type(\"RunShellScript\")\n .workingDir(\"/root\")\n .enableParameter(true)\n .build());\n\n var defaultEcsInvocation = new EcsInvocation(\"defaultEcsInvocation\", EcsInvocationArgs.builder()\n .commandId(defaultCommand.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: ${name}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroupRule:\n type: alicloud:ecs:SecurityGroupRule\n name: default\n properties:\n type: ingress\n ipProtocol: tcp\n nicType: intranet\n policy: accept\n portRange: 22/22\n priority: 1\n securityGroupId: ${defaultSecurityGroup.id}\n cidrIp: 172.16.0.0/24\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n vswitchId: ${defaultSwitch.id}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n internetChargeType: PayByTraffic\n internetMaxBandwidthOut: 5\n securityGroups:\n - ${defaultSecurityGroup.id}\n instanceName: ${name}\n defaultCommand:\n type: alicloud:ecs:Command\n name: default\n properties:\n name: ${name}\n commandContent: ZWNobyBoZWxsbyx7e25hbWV9fQ==\n description: For Terraform Test\n type: RunShellScript\n workingDir: /root\n enableParameter: true\n defaultEcsInvocation:\n type: alicloud:ecs:EcsInvocation\n name: default\n properties:\n commandId: ${defaultCommand.id}\n instanceIds:\n - ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 2\n memorySize: 8\n instanceTypeFamily: ecs.g6\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Invocation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsInvocation:EcsInvocation example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Invocation resource.\n\nFor information about ECS Invocation and how to use it, see [What is Invocation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/invokecommand#t9958.html).\n\n\u003e **NOTE:** Available since v1.168.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 2,\n memorySize: 8,\n instanceTypeFamily: \"ecs.g6\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroupRule = new alicloud.ecs.SecurityGroupRule(\"default\", {\n type: \"ingress\",\n ipProtocol: \"tcp\",\n nicType: \"intranet\",\n policy: \"accept\",\n portRange: \"22/22\",\n priority: 1,\n securityGroupId: defaultSecurityGroup.id,\n cidrIp: \"172.16.0.0/24\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n vswitchId: defaultSwitch.id,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n systemDiskCategory: \"cloud_efficiency\",\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 5,\n securityGroups: [defaultSecurityGroup.id],\n instanceName: name,\n});\nconst defaultCommand = new alicloud.ecs.Command(\"default\", {\n name: name,\n commandContent: \"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n description: \"For Terraform Test\",\n type: \"RunShellScript\",\n workingDir: \"/root\",\n enableParameter: true,\n});\nconst defaultEcsInvocation = new alicloud.ecs.EcsInvocation(\"default\", {\n commandId: defaultCommand.id,\n instanceIds: [defaultInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=2,\n memory_size=8,\n instance_type_family=\"ecs.g6\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n vpc_id=default_network.id)\ndefault_security_group_rule = alicloud.ecs.SecurityGroupRule(\"default\",\n type=\"ingress\",\n ip_protocol=\"tcp\",\n nic_type=\"intranet\",\n policy=\"accept\",\n port_range=\"22/22\",\n priority=1,\n security_group_id=default_security_group.id,\n cidr_ip=\"172.16.0.0/24\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n vswitch_id=default_switch.id,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n system_disk_category=\"cloud_efficiency\",\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=5,\n security_groups=[default_security_group.id],\n instance_name=name)\ndefault_command = alicloud.ecs.Command(\"default\",\n name=name,\n command_content=\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n description=\"For Terraform Test\",\n type=\"RunShellScript\",\n working_dir=\"/root\",\n enable_parameter=True)\ndefault_ecs_invocation = alicloud.ecs.EcsInvocation(\"default\",\n command_id=default_command.id,\n instance_ids=[default_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 2,\n MemorySize = 8,\n InstanceTypeFamily = \"ecs.g6\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroupRule = new AliCloud.Ecs.SecurityGroupRule(\"default\", new()\n {\n Type = \"ingress\",\n IpProtocol = \"tcp\",\n NicType = \"intranet\",\n Policy = \"accept\",\n PortRange = \"22/22\",\n Priority = 1,\n SecurityGroupId = defaultSecurityGroup.Id,\n CidrIp = \"172.16.0.0/24\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n VswitchId = defaultSwitch.Id,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SystemDiskCategory = \"cloud_efficiency\",\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 5,\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n InstanceName = name,\n });\n\n var defaultCommand = new AliCloud.Ecs.Command(\"default\", new()\n {\n Name = name,\n CommandContent = \"ZWNobyBoZWxsbyx7e25hbWV9fQ==\",\n Description = \"For Terraform Test\",\n Type = \"RunShellScript\",\n WorkingDir = \"/root\",\n EnableParameter = true,\n });\n\n var defaultEcsInvocation = new AliCloud.Ecs.EcsInvocation(\"default\", new()\n {\n CommandId = defaultCommand.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(2),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroupRule(ctx, \"default\", \u0026ecs.SecurityGroupRuleArgs{\n\t\t\tType: pulumi.String(\"ingress\"),\n\t\t\tIpProtocol: pulumi.String(\"tcp\"),\n\t\t\tNicType: pulumi.String(\"intranet\"),\n\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\tPortRange: pulumi.String(\"22/22\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\tCidrIp: pulumi.String(\"172.16.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCommand, err := ecs.NewCommand(ctx, \"default\", \u0026ecs.CommandArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tCommandContent: pulumi.String(\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t\tType: pulumi.String(\"RunShellScript\"),\n\t\t\tWorkingDir: pulumi.String(\"/root\"),\n\t\t\tEnableParameter: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsInvocation(ctx, \"default\", \u0026ecs.EcsInvocationArgs{\n\t\t\tCommandId: defaultCommand.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroupRule;\nimport com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.Command;\nimport com.pulumi.alicloud.ecs.CommandArgs;\nimport com.pulumi.alicloud.ecs.EcsInvocation;\nimport com.pulumi.alicloud.ecs.EcsInvocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(2)\n .memorySize(8)\n .instanceTypeFamily(\"ecs.g6\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroupRule = new SecurityGroupRule(\"defaultSecurityGroupRule\", SecurityGroupRuleArgs.builder()\n .type(\"ingress\")\n .ipProtocol(\"tcp\")\n .nicType(\"intranet\")\n .policy(\"accept\")\n .portRange(\"22/22\")\n .priority(1)\n .securityGroupId(defaultSecurityGroup.id())\n .cidrIp(\"172.16.0.0/24\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .vswitchId(defaultSwitch.id())\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(5)\n .securityGroups(defaultSecurityGroup.id())\n .instanceName(name)\n .build());\n\n var defaultCommand = new Command(\"defaultCommand\", CommandArgs.builder()\n .name(name)\n .commandContent(\"ZWNobyBoZWxsbyx7e25hbWV9fQ==\")\n .description(\"For Terraform Test\")\n .type(\"RunShellScript\")\n .workingDir(\"/root\")\n .enableParameter(true)\n .build());\n\n var defaultEcsInvocation = new EcsInvocation(\"defaultEcsInvocation\", EcsInvocationArgs.builder()\n .commandId(defaultCommand.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.zones[0].id}\n vswitchName: ${name}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: ${name}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroupRule:\n type: alicloud:ecs:SecurityGroupRule\n name: default\n properties:\n type: ingress\n ipProtocol: tcp\n nicType: intranet\n policy: accept\n portRange: 22/22\n priority: 1\n securityGroupId: ${defaultSecurityGroup.id}\n cidrIp: 172.16.0.0/24\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n vswitchId: ${defaultSwitch.id}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n internetChargeType: PayByTraffic\n internetMaxBandwidthOut: 5\n securityGroups:\n - ${defaultSecurityGroup.id}\n instanceName: ${name}\n defaultCommand:\n type: alicloud:ecs:Command\n name: default\n properties:\n name: ${name}\n commandContent: ZWNobyBoZWxsbyx7e25hbWV9fQ==\n description: For Terraform Test\n type: RunShellScript\n workingDir: /root\n enableParameter: true\n defaultEcsInvocation:\n type: alicloud:ecs:EcsInvocation\n name: default\n properties:\n commandId: ${defaultCommand.id}\n instanceIds:\n - ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 2\n memorySize: 8\n instanceTypeFamily: ecs.g6\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Invocation can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsInvocation:EcsInvocation example \u003cid\u003e\n```\n\n",
"properties": {
"commandId": {
"type": "string",
@@ -154799,7 +157428,7 @@
}
},
"alicloud:ecs/ecsKeyPair:EcsKeyPair": {
- "description": "Provides a ECS Key Pair resource.\n\nFor information about ECS Key Pair and how to use it, see [What is Key Pair](https://www.alibabacloud.com/help/en/doc-detail/51771.htm).\n\n\u003e **NOTE:** Available since v1.121.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.EcsKeyPair(\"example\", {keyPairName: \"key_pair_name\"});\n// Using name prefix to build key pair\nconst prefix = new alicloud.ecs.EcsKeyPair(\"prefix\", {keyNamePrefix: \"terraform-test-key-pair-prefix\"});\n// Import an existing public key to build a alicloud key pair\nconst publickey = new alicloud.ecs.EcsKeyPair(\"publickey\", {\n keyPairName: \"my_public_key\",\n publicKey: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.EcsKeyPair(\"example\", key_pair_name=\"key_pair_name\")\n# Using name prefix to build key pair\nprefix = alicloud.ecs.EcsKeyPair(\"prefix\", key_name_prefix=\"terraform-test-key-pair-prefix\")\n# Import an existing public key to build a alicloud key pair\npublickey = alicloud.ecs.EcsKeyPair(\"publickey\",\n key_pair_name=\"my_public_key\",\n public_key=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.EcsKeyPair(\"example\", new()\n {\n KeyPairName = \"key_pair_name\",\n });\n\n // Using name prefix to build key pair\n var prefix = new AliCloud.Ecs.EcsKeyPair(\"prefix\", new()\n {\n KeyNamePrefix = \"terraform-test-key-pair-prefix\",\n });\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new AliCloud.Ecs.EcsKeyPair(\"publickey\", new()\n {\n KeyPairName = \"my_public_key\",\n PublicKey = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsKeyPair(ctx, \"example\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"key_pair_name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Using name prefix to build key pair\n\t\t_, err = ecs.NewEcsKeyPair(ctx, \"prefix\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyNamePrefix: pulumi.String(\"terraform-test-key-pair-prefix\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Import an existing public key to build a alicloud key pair\n\t\t_, err = ecs.NewEcsKeyPair(ctx, \"publickey\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"my_public_key\"),\n\t\t\tPublicKey: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsKeyPair;\nimport com.pulumi.alicloud.ecs.EcsKeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new EcsKeyPair(\"example\", EcsKeyPairArgs.builder()\n .keyPairName(\"key_pair_name\")\n .build());\n\n // Using name prefix to build key pair\n var prefix = new EcsKeyPair(\"prefix\", EcsKeyPairArgs.builder()\n .keyNamePrefix(\"terraform-test-key-pair-prefix\")\n .build());\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new EcsKeyPair(\"publickey\", EcsKeyPairArgs.builder()\n .keyPairName(\"my_public_key\")\n .publicKey(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyPairName: key_pair_name\n # Using name prefix to build key pair\n prefix:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyNamePrefix: terraform-test-key-pair-prefix\n # Import an existing public key to build a alicloud key pair\n publickey:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyPairName: my_public_key\n publicKey: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsKeyPair:EcsKeyPair example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Key Pair resource.\n\nFor information about ECS Key Pair and how to use it, see [What is Key Pair](https://www.alibabacloud.com/help/en/doc-detail/51771.htm).\n\n\u003e **NOTE:** Available since v1.121.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.EcsKeyPair(\"example\", {keyPairName: \"key_pair_name\"});\n// Using name prefix to build key pair\nconst prefix = new alicloud.ecs.EcsKeyPair(\"prefix\", {keyNamePrefix: \"terraform-test-key-pair-prefix\"});\n// Import an existing public key to build a alicloud key pair\nconst publickey = new alicloud.ecs.EcsKeyPair(\"publickey\", {\n keyPairName: \"my_public_key\",\n publicKey: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.EcsKeyPair(\"example\", key_pair_name=\"key_pair_name\")\n# Using name prefix to build key pair\nprefix = alicloud.ecs.EcsKeyPair(\"prefix\", key_name_prefix=\"terraform-test-key-pair-prefix\")\n# Import an existing public key to build a alicloud key pair\npublickey = alicloud.ecs.EcsKeyPair(\"publickey\",\n key_pair_name=\"my_public_key\",\n public_key=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.EcsKeyPair(\"example\", new()\n {\n KeyPairName = \"key_pair_name\",\n });\n\n // Using name prefix to build key pair\n var prefix = new AliCloud.Ecs.EcsKeyPair(\"prefix\", new()\n {\n KeyNamePrefix = \"terraform-test-key-pair-prefix\",\n });\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new AliCloud.Ecs.EcsKeyPair(\"publickey\", new()\n {\n KeyPairName = \"my_public_key\",\n PublicKey = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsKeyPair(ctx, \"example\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"key_pair_name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Using name prefix to build key pair\n\t\t_, err = ecs.NewEcsKeyPair(ctx, \"prefix\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyNamePrefix: pulumi.String(\"terraform-test-key-pair-prefix\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Import an existing public key to build a alicloud key pair\n\t\t_, err = ecs.NewEcsKeyPair(ctx, \"publickey\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.String(\"my_public_key\"),\n\t\t\tPublicKey: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsKeyPair;\nimport com.pulumi.alicloud.ecs.EcsKeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new EcsKeyPair(\"example\", EcsKeyPairArgs.builder()\n .keyPairName(\"key_pair_name\")\n .build());\n\n // Using name prefix to build key pair\n var prefix = new EcsKeyPair(\"prefix\", EcsKeyPairArgs.builder()\n .keyNamePrefix(\"terraform-test-key-pair-prefix\")\n .build());\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new EcsKeyPair(\"publickey\", EcsKeyPairArgs.builder()\n .keyPairName(\"my_public_key\")\n .publicKey(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyPairName: key_pair_name\n # Using name prefix to build key pair\n prefix:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyNamePrefix: terraform-test-key-pair-prefix\n # Import an existing public key to build a alicloud key pair\n publickey:\n type: alicloud:ecs:EcsKeyPair\n properties:\n keyPairName: my_public_key\n publicKey: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Key Pair can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsKeyPair:EcsKeyPair example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -154933,7 +157562,7 @@
}
},
"alicloud:ecs/ecsKeyPairAttachment:EcsKeyPairAttachment": {
- "description": "Provides a ECS Key Pair Attachment resource.\n\nFor information about ECS Key Pair Attachment and how to use it, see [What is Key Pair Attachment](https://www.alibabacloud.com/help/en/doc-detail/51775.htm).\n\n\u003e **NOTE:** Available since v1.121.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n instanceName: \"terraform-example\",\n internetChargeType: \"PayByBandwidth\",\n vswitchId: exampleSwitch.id,\n});\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst exampleEcsKeyPair = new alicloud.ecs.EcsKeyPair(\"example\", {keyPairName: `tf-example-${_default.result}`});\nconst exampleEcsKeyPairAttachment = new alicloud.ecs.EcsKeyPairAttachment(\"example\", {\n keyPairName: exampleEcsKeyPair.keyPairName,\n instanceIds: [exampleInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n availability_zone=example.zones[0].id,\n security_groups=[example_security_group.id],\n instance_name=\"terraform-example\",\n internet_charge_type=\"PayByBandwidth\",\n vswitch_id=example_switch.id)\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample_ecs_key_pair = alicloud.ecs.EcsKeyPair(\"example\", key_pair_name=f\"tf-example-{default['result']}\")\nexample_ecs_key_pair_attachment = alicloud.ecs.EcsKeyPairAttachment(\"example\",\n key_pair_name=example_ecs_key_pair.key_pair_name,\n instance_ids=[example_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n InstanceName = \"terraform-example\",\n InternetChargeType = \"PayByBandwidth\",\n VswitchId = exampleSwitch.Id,\n });\n\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var exampleEcsKeyPair = new AliCloud.Ecs.EcsKeyPair(\"example\", new()\n {\n KeyPairName = $\"tf-example-{@default.Result}\",\n });\n\n var exampleEcsKeyPairAttachment = new AliCloud.Ecs.EcsKeyPairAttachment(\"example\", new()\n {\n KeyPairName = exampleEcsKeyPair.KeyPairName,\n InstanceIds = new[]\n {\n exampleInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEcsKeyPair, err := ecs.NewEcsKeyPair(ctx, \"example\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsKeyPairAttachment(ctx, \"example\", \u0026ecs.EcsKeyPairAttachmentArgs{\n\t\t\tKeyPairName: exampleEcsKeyPair.KeyPairName,\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\texampleInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.EcsKeyPair;\nimport com.pulumi.alicloud.ecs.EcsKeyPairArgs;\nimport com.pulumi.alicloud.ecs.EcsKeyPairAttachment;\nimport com.pulumi.alicloud.ecs.EcsKeyPairAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .availabilityZone(example.zones()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .instanceName(\"terraform-example\")\n .internetChargeType(\"PayByBandwidth\")\n .vswitchId(exampleSwitch.id())\n .build());\n\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var exampleEcsKeyPair = new EcsKeyPair(\"exampleEcsKeyPair\", EcsKeyPairArgs.builder()\n .keyPairName(String.format(\"tf-example-%s\", default_.result()))\n .build());\n\n var exampleEcsKeyPairAttachment = new EcsKeyPairAttachment(\"exampleEcsKeyPairAttachment\", EcsKeyPairAttachmentArgs.builder()\n .keyPairName(exampleEcsKeyPair.keyPairName())\n .instanceIds(exampleInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n availabilityZone: ${example.zones[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n instanceName: terraform-example\n internetChargeType: PayByBandwidth\n vswitchId: ${exampleSwitch.id}\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n exampleEcsKeyPair:\n type: alicloud:ecs:EcsKeyPair\n name: example\n properties:\n keyPairName: tf-example-${default.result}\n exampleEcsKeyPairAttachment:\n type: alicloud:ecs:EcsKeyPairAttachment\n name: example\n properties:\n keyPairName: ${exampleEcsKeyPair.keyPairName}\n instanceIds:\n - ${exampleInstance.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Key Pair Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsKeyPairAttachment:EcsKeyPairAttachment example \u003ckey_pair_name\u003e:\u003cinstance_ids\u003e\n```\n\n",
+ "description": "Provides a ECS Key Pair Attachment resource.\n\nFor information about ECS Key Pair Attachment and how to use it, see [What is Key Pair Attachment](https://www.alibabacloud.com/help/en/doc-detail/51775.htm).\n\n\u003e **NOTE:** Available since v1.121.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: \"terraform-example\",\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n instanceName: \"terraform-example\",\n internetChargeType: \"PayByBandwidth\",\n vswitchId: exampleSwitch.id,\n});\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst exampleEcsKeyPair = new alicloud.ecs.EcsKeyPair(\"example\", {keyPairName: `tf-example-${_default.result}`});\nconst exampleEcsKeyPairAttachment = new alicloud.ecs.EcsKeyPairAttachment(\"example\", {\n keyPairName: exampleEcsKeyPair.keyPairName,\n instanceIds: [exampleInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=\"terraform-example\",\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n availability_zone=example.zones[0].id,\n security_groups=[example_security_group.id],\n instance_name=\"terraform-example\",\n internet_charge_type=\"PayByBandwidth\",\n vswitch_id=example_switch.id)\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\nexample_ecs_key_pair = alicloud.ecs.EcsKeyPair(\"example\", key_pair_name=f\"tf-example-{default['result']}\")\nexample_ecs_key_pair_attachment = alicloud.ecs.EcsKeyPairAttachment(\"example\",\n key_pair_name=example_ecs_key_pair.key_pair_name,\n instance_ids=[example_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = \"terraform-example\",\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n InstanceName = \"terraform-example\",\n InternetChargeType = \"PayByBandwidth\",\n VswitchId = exampleSwitch.Id,\n });\n\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var exampleEcsKeyPair = new AliCloud.Ecs.EcsKeyPair(\"example\", new()\n {\n KeyPairName = $\"tf-example-{@default.Result}\",\n });\n\n var exampleEcsKeyPairAttachment = new AliCloud.Ecs.EcsKeyPairAttachment(\"example\", new()\n {\n KeyPairName = exampleEcsKeyPair.KeyPairName,\n InstanceIds = new[]\n {\n exampleInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEcsKeyPair, err := ecs.NewEcsKeyPair(ctx, \"example\", \u0026ecs.EcsKeyPairArgs{\n\t\t\tKeyPairName: pulumi.Sprintf(\"tf-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsKeyPairAttachment(ctx, \"example\", \u0026ecs.EcsKeyPairAttachmentArgs{\n\t\t\tKeyPairName: exampleEcsKeyPair.KeyPairName,\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\texampleInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.EcsKeyPair;\nimport com.pulumi.alicloud.ecs.EcsKeyPairArgs;\nimport com.pulumi.alicloud.ecs.EcsKeyPairAttachment;\nimport com.pulumi.alicloud.ecs.EcsKeyPairAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .availabilityZone(example.zones()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .instanceName(\"terraform-example\")\n .internetChargeType(\"PayByBandwidth\")\n .vswitchId(exampleSwitch.id())\n .build());\n\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var exampleEcsKeyPair = new EcsKeyPair(\"exampleEcsKeyPair\", EcsKeyPairArgs.builder()\n .keyPairName(String.format(\"tf-example-%s\", default_.result()))\n .build());\n\n var exampleEcsKeyPairAttachment = new EcsKeyPairAttachment(\"exampleEcsKeyPairAttachment\", EcsKeyPairAttachmentArgs.builder()\n .keyPairName(exampleEcsKeyPair.keyPairName())\n .instanceIds(exampleInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: terraform-example\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n availabilityZone: ${example.zones[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n instanceName: terraform-example\n internetChargeType: PayByBandwidth\n vswitchId: ${exampleSwitch.id}\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n exampleEcsKeyPair:\n type: alicloud:ecs:EcsKeyPair\n name: example\n properties:\n keyPairName: tf-example-${default.result}\n exampleEcsKeyPairAttachment:\n type: alicloud:ecs:EcsKeyPairAttachment\n name: example\n properties:\n keyPairName: ${exampleEcsKeyPair.keyPairName}\n instanceIds:\n - ${exampleInstance.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Key Pair Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsKeyPairAttachment:EcsKeyPairAttachment example \u003ckey_pair_name\u003e:\u003cinstance_ids\u003e\n```\n\n",
"properties": {
"force": {
"type": "boolean",
@@ -155022,7 +157651,7 @@
}
},
"alicloud:ecs/ecsLaunchTemplate:EcsLaunchTemplate": {
- "description": "Provides a ECS Launch Template resource.\n\nFor information about ECS Launch Template and how to use it, see [What is Launch Template](https://www.alibabacloud.com/help/en/doc-detail/74686.htm).\n\n\u003e **NOTE:** Available since v1.120.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultEcsLaunchTemplate = new alicloud.ecs.EcsLaunchTemplate(\"default\", {\n launchTemplateName: \"terraform-example\",\n description: \"terraform-example\",\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n hostName: \"terraform-example\",\n instanceChargeType: \"PrePaid\",\n instanceName: \"terraform-example\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n internetChargeType: \"PayByBandwidth\",\n internetMaxBandwidthIn: 5,\n internetMaxBandwidthOut: 5,\n ioOptimized: \"optimized\",\n keyPairName: \"key_pair_name\",\n ramRoleName: \"ram_role_name\",\n networkType: \"vpc\",\n securityEnhancementStrategy: \"Active\",\n spotPriceLimit: 5,\n spotStrategy: \"SpotWithPriceLimit\",\n securityGroupIds: [defaultSecurityGroup.id],\n systemDisk: {\n category: \"cloud_ssd\",\n description: \"Test For Terraform\",\n name: \"terraform-example\",\n size: 40,\n deleteWithInstance: false,\n },\n userData: \"xxxxxxx\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n templateTags: {\n Create: \"Terraform\",\n For: \"example\",\n },\n networkInterfaces: {\n name: \"eth0\",\n description: \"hello1\",\n primaryIp: \"10.0.0.2\",\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n },\n dataDisks: [\n {\n name: \"disk1\",\n description: \"description\",\n deleteWithInstance: true,\n category: \"cloud\",\n encrypted: false,\n performanceLevel: \"PL0\",\n size: 20,\n },\n {\n name: \"disk2\",\n description: \"description2\",\n deleteWithInstance: true,\n category: \"cloud\",\n encrypted: false,\n performanceLevel: \"PL0\",\n size: 20,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_ecs_launch_template = alicloud.ecs.EcsLaunchTemplate(\"default\",\n launch_template_name=\"terraform-example\",\n description=\"terraform-example\",\n image_id=default_get_images.images[0].id,\n host_name=\"terraform-example\",\n instance_charge_type=\"PrePaid\",\n instance_name=\"terraform-example\",\n instance_type=default_get_instance_types.instance_types[0].id,\n internet_charge_type=\"PayByBandwidth\",\n internet_max_bandwidth_in=5,\n internet_max_bandwidth_out=5,\n io_optimized=\"optimized\",\n key_pair_name=\"key_pair_name\",\n ram_role_name=\"ram_role_name\",\n network_type=\"vpc\",\n security_enhancement_strategy=\"Active\",\n spot_price_limit=5,\n spot_strategy=\"SpotWithPriceLimit\",\n security_group_ids=[default_security_group.id],\n system_disk={\n \"category\": \"cloud_ssd\",\n \"description\": \"Test For Terraform\",\n \"name\": \"terraform-example\",\n \"size\": 40,\n \"delete_with_instance\": False,\n },\n user_data=\"xxxxxxx\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id,\n zone_id=default.zones[0].id,\n template_tags={\n \"Create\": \"Terraform\",\n \"For\": \"example\",\n },\n network_interfaces={\n \"name\": \"eth0\",\n \"description\": \"hello1\",\n \"primary_ip\": \"10.0.0.2\",\n \"security_group_id\": default_security_group.id,\n \"vswitch_id\": default_switch.id,\n },\n data_disks=[\n {\n \"name\": \"disk1\",\n \"description\": \"description\",\n \"delete_with_instance\": True,\n \"category\": \"cloud\",\n \"encrypted\": False,\n \"performance_level\": \"PL0\",\n \"size\": 20,\n },\n {\n \"name\": \"disk2\",\n \"description\": \"description2\",\n \"delete_with_instance\": True,\n \"category\": \"cloud\",\n \"encrypted\": False,\n \"performance_level\": \"PL0\",\n \"size\": 20,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEcsLaunchTemplate = new AliCloud.Ecs.EcsLaunchTemplate(\"default\", new()\n {\n LaunchTemplateName = \"terraform-example\",\n Description = \"terraform-example\",\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n HostName = \"terraform-example\",\n InstanceChargeType = \"PrePaid\",\n InstanceName = \"terraform-example\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InternetChargeType = \"PayByBandwidth\",\n InternetMaxBandwidthIn = 5,\n InternetMaxBandwidthOut = 5,\n IoOptimized = \"optimized\",\n KeyPairName = \"key_pair_name\",\n RamRoleName = \"ram_role_name\",\n NetworkType = \"vpc\",\n SecurityEnhancementStrategy = \"Active\",\n SpotPriceLimit = 5,\n SpotStrategy = \"SpotWithPriceLimit\",\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n SystemDisk = new AliCloud.Ecs.Inputs.EcsLaunchTemplateSystemDiskArgs\n {\n Category = \"cloud_ssd\",\n Description = \"Test For Terraform\",\n Name = \"terraform-example\",\n Size = 40,\n DeleteWithInstance = false,\n },\n UserData = \"xxxxxxx\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n TemplateTags = \n {\n { \"Create\", \"Terraform\" },\n { \"For\", \"example\" },\n },\n NetworkInterfaces = new AliCloud.Ecs.Inputs.EcsLaunchTemplateNetworkInterfacesArgs\n {\n Name = \"eth0\",\n Description = \"hello1\",\n PrimaryIp = \"10.0.0.2\",\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n },\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs\n {\n Name = \"disk1\",\n Description = \"description\",\n DeleteWithInstance = true,\n Category = \"cloud\",\n Encrypted = false,\n PerformanceLevel = \"PL0\",\n Size = 20,\n },\n new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs\n {\n Name = \"disk2\",\n Description = \"description2\",\n DeleteWithInstance = true,\n Category = \"cloud\",\n Encrypted = false,\n PerformanceLevel = \"PL0\",\n Size = 20,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsLaunchTemplate(ctx, \"default\", \u0026ecs.EcsLaunchTemplateArgs{\n\t\t\tLaunchTemplateName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tHostName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PrePaid\"),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tInternetMaxBandwidthIn: pulumi.Int(5),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t\tIoOptimized: pulumi.String(\"optimized\"),\n\t\t\tKeyPairName: pulumi.String(\"key_pair_name\"),\n\t\t\tRamRoleName: pulumi.String(\"ram_role_name\"),\n\t\t\tNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSecurityEnhancementStrategy: pulumi.String(\"Active\"),\n\t\t\tSpotPriceLimit: pulumi.Float64(5),\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tSystemDisk: \u0026ecs.EcsLaunchTemplateSystemDiskArgs{\n\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\tDescription: pulumi.String(\"Test For Terraform\"),\n\t\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\t\tSize: pulumi.Int(40),\n\t\t\t\tDeleteWithInstance: pulumi.Bool(false),\n\t\t\t},\n\t\t\tUserData: pulumi.String(\"xxxxxxx\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tTemplateTags: pulumi.StringMap{\n\t\t\t\t\"Create\": pulumi.String(\"Terraform\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: \u0026ecs.EcsLaunchTemplateNetworkInterfacesArgs{\n\t\t\t\tName: pulumi.String(\"eth0\"),\n\t\t\t\tDescription: pulumi.String(\"hello1\"),\n\t\t\t\tPrimaryIp: pulumi.String(\"10.0.0.2\"),\n\t\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\t},\n\t\t\tDataDisks: ecs.EcsLaunchTemplateDataDiskArray{\n\t\t\t\t\u0026ecs.EcsLaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk1\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\t\t\tCategory: pulumi.String(\"cloud\"),\n\t\t\t\t\tEncrypted: pulumi.Bool(false),\n\t\t\t\t\tPerformanceLevel: pulumi.String(\"PL0\"),\n\t\t\t\t\tSize: pulumi.Int(20),\n\t\t\t\t},\n\t\t\t\t\u0026ecs.EcsLaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk2\"),\n\t\t\t\t\tDescription: pulumi.String(\"description2\"),\n\t\t\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\t\t\tCategory: pulumi.String(\"cloud\"),\n\t\t\t\t\tEncrypted: pulumi.Bool(false),\n\t\t\t\t\tPerformanceLevel: pulumi.String(\"PL0\"),\n\t\t\t\t\tSize: pulumi.Int(20),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplate;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateSystemDiskArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateNetworkInterfacesArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEcsLaunchTemplate = new EcsLaunchTemplate(\"defaultEcsLaunchTemplate\", EcsLaunchTemplateArgs.builder()\n .launchTemplateName(\"terraform-example\")\n .description(\"terraform-example\")\n .imageId(defaultGetImages.images()[0].id())\n .hostName(\"terraform-example\")\n .instanceChargeType(\"PrePaid\")\n .instanceName(\"terraform-example\")\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .internetChargeType(\"PayByBandwidth\")\n .internetMaxBandwidthIn(5)\n .internetMaxBandwidthOut(5)\n .ioOptimized(\"optimized\")\n .keyPairName(\"key_pair_name\")\n .ramRoleName(\"ram_role_name\")\n .networkType(\"vpc\")\n .securityEnhancementStrategy(\"Active\")\n .spotPriceLimit(5.0)\n .spotStrategy(\"SpotWithPriceLimit\")\n .securityGroupIds(defaultSecurityGroup.id())\n .systemDisk(EcsLaunchTemplateSystemDiskArgs.builder()\n .category(\"cloud_ssd\")\n .description(\"Test For Terraform\")\n .name(\"terraform-example\")\n .size(40)\n .deleteWithInstance(false)\n .build())\n .userData(\"xxxxxxx\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .templateTags(Map.ofEntries(\n Map.entry(\"Create\", \"Terraform\"),\n Map.entry(\"For\", \"example\")\n ))\n .networkInterfaces(EcsLaunchTemplateNetworkInterfacesArgs.builder()\n .name(\"eth0\")\n .description(\"hello1\")\n .primaryIp(\"10.0.0.2\")\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build())\n .dataDisks( \n EcsLaunchTemplateDataDiskArgs.builder()\n .name(\"disk1\")\n .description(\"description\")\n .deleteWithInstance(true)\n .category(\"cloud\")\n .encrypted(false)\n .performanceLevel(\"PL0\")\n .size(20)\n .build(),\n EcsLaunchTemplateDataDiskArgs.builder()\n .name(\"disk2\")\n .description(\"description2\")\n .deleteWithInstance(true)\n .category(\"cloud\")\n .encrypted(false)\n .performanceLevel(\"PL0\")\n .size(20)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultEcsLaunchTemplate:\n type: alicloud:ecs:EcsLaunchTemplate\n name: default\n properties:\n launchTemplateName: terraform-example\n description: terraform-example\n imageId: ${defaultGetImages.images[0].id}\n hostName: terraform-example\n instanceChargeType: PrePaid\n instanceName: terraform-example\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n internetChargeType: PayByBandwidth\n internetMaxBandwidthIn: '5'\n internetMaxBandwidthOut: '5'\n ioOptimized: optimized\n keyPairName: key_pair_name\n ramRoleName: ram_role_name\n networkType: vpc\n securityEnhancementStrategy: Active\n spotPriceLimit: '5'\n spotStrategy: SpotWithPriceLimit\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n systemDisk:\n category: cloud_ssd\n description: Test For Terraform\n name: terraform-example\n size: '40'\n deleteWithInstance: 'false'\n userData: xxxxxxx\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n templateTags:\n Create: Terraform\n For: example\n networkInterfaces:\n name: eth0\n description: hello1\n primaryIp: 10.0.0.2\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n dataDisks:\n - name: disk1\n description: description\n deleteWithInstance: 'true'\n category: cloud\n encrypted: 'false'\n performanceLevel: PL0\n size: '20'\n - name: disk2\n description: description2\n deleteWithInstance: 'true'\n category: cloud\n encrypted: 'false'\n performanceLevel: PL0\n size: '20'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Launch Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsLaunchTemplate:EcsLaunchTemplate example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Launch Template resource.\n\nFor information about ECS Launch Template and how to use it, see [What is Launch Template](https://www.alibabacloud.com/help/en/doc-detail/74686.htm).\n\n\u003e **NOTE:** Available since v1.120.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultEcsLaunchTemplate = new alicloud.ecs.EcsLaunchTemplate(\"default\", {\n launchTemplateName: \"terraform-example\",\n description: \"terraform-example\",\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n hostName: \"terraform-example\",\n instanceChargeType: \"PrePaid\",\n instanceName: \"terraform-example\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n internetChargeType: \"PayByBandwidth\",\n internetMaxBandwidthIn: 5,\n internetMaxBandwidthOut: 5,\n ioOptimized: \"optimized\",\n keyPairName: \"key_pair_name\",\n ramRoleName: \"ram_role_name\",\n networkType: \"vpc\",\n securityEnhancementStrategy: \"Active\",\n spotPriceLimit: 5,\n spotStrategy: \"SpotWithPriceLimit\",\n securityGroupIds: [defaultSecurityGroup.id],\n systemDisk: {\n category: \"cloud_ssd\",\n description: \"Test For Terraform\",\n name: \"terraform-example\",\n size: 40,\n deleteWithInstance: false,\n },\n userData: \"xxxxxxx\",\n vswitchId: defaultSwitch.id,\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n templateTags: {\n Create: \"Terraform\",\n For: \"example\",\n },\n networkInterfaces: {\n name: \"eth0\",\n description: \"hello1\",\n primaryIp: \"10.0.0.2\",\n securityGroupId: defaultSecurityGroup.id,\n vswitchId: defaultSwitch.id,\n },\n dataDisks: [\n {\n name: \"disk1\",\n description: \"description\",\n deleteWithInstance: true,\n category: \"cloud\",\n encrypted: false,\n performanceLevel: \"PL0\",\n size: 20,\n },\n {\n name: \"disk2\",\n description: \"description2\",\n deleteWithInstance: true,\n category: \"cloud\",\n encrypted: false,\n performanceLevel: \"PL0\",\n size: 20,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_ecs_launch_template = alicloud.ecs.EcsLaunchTemplate(\"default\",\n launch_template_name=\"terraform-example\",\n description=\"terraform-example\",\n image_id=default_get_images.images[0].id,\n host_name=\"terraform-example\",\n instance_charge_type=\"PrePaid\",\n instance_name=\"terraform-example\",\n instance_type=default_get_instance_types.instance_types[0].id,\n internet_charge_type=\"PayByBandwidth\",\n internet_max_bandwidth_in=5,\n internet_max_bandwidth_out=5,\n io_optimized=\"optimized\",\n key_pair_name=\"key_pair_name\",\n ram_role_name=\"ram_role_name\",\n network_type=\"vpc\",\n security_enhancement_strategy=\"Active\",\n spot_price_limit=5,\n spot_strategy=\"SpotWithPriceLimit\",\n security_group_ids=[default_security_group.id],\n system_disk={\n \"category\": \"cloud_ssd\",\n \"description\": \"Test For Terraform\",\n \"name\": \"terraform-example\",\n \"size\": 40,\n \"delete_with_instance\": False,\n },\n user_data=\"xxxxxxx\",\n vswitch_id=default_switch.id,\n vpc_id=default_network.id,\n zone_id=default.zones[0].id,\n template_tags={\n \"Create\": \"Terraform\",\n \"For\": \"example\",\n },\n network_interfaces={\n \"name\": \"eth0\",\n \"description\": \"hello1\",\n \"primary_ip\": \"10.0.0.2\",\n \"security_group_id\": default_security_group.id,\n \"vswitch_id\": default_switch.id,\n },\n data_disks=[\n {\n \"name\": \"disk1\",\n \"description\": \"description\",\n \"delete_with_instance\": True,\n \"category\": \"cloud\",\n \"encrypted\": False,\n \"performance_level\": \"PL0\",\n \"size\": 20,\n },\n {\n \"name\": \"disk2\",\n \"description\": \"description2\",\n \"delete_with_instance\": True,\n \"category\": \"cloud\",\n \"encrypted\": False,\n \"performance_level\": \"PL0\",\n \"size\": 20,\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEcsLaunchTemplate = new AliCloud.Ecs.EcsLaunchTemplate(\"default\", new()\n {\n LaunchTemplateName = \"terraform-example\",\n Description = \"terraform-example\",\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n HostName = \"terraform-example\",\n InstanceChargeType = \"PrePaid\",\n InstanceName = \"terraform-example\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n InternetChargeType = \"PayByBandwidth\",\n InternetMaxBandwidthIn = 5,\n InternetMaxBandwidthOut = 5,\n IoOptimized = \"optimized\",\n KeyPairName = \"key_pair_name\",\n RamRoleName = \"ram_role_name\",\n NetworkType = \"vpc\",\n SecurityEnhancementStrategy = \"Active\",\n SpotPriceLimit = 5,\n SpotStrategy = \"SpotWithPriceLimit\",\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n SystemDisk = new AliCloud.Ecs.Inputs.EcsLaunchTemplateSystemDiskArgs\n {\n Category = \"cloud_ssd\",\n Description = \"Test For Terraform\",\n Name = \"terraform-example\",\n Size = 40,\n DeleteWithInstance = false,\n },\n UserData = \"xxxxxxx\",\n VswitchId = defaultSwitch.Id,\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n TemplateTags = \n {\n { \"Create\", \"Terraform\" },\n { \"For\", \"example\" },\n },\n NetworkInterfaces = new AliCloud.Ecs.Inputs.EcsLaunchTemplateNetworkInterfacesArgs\n {\n Name = \"eth0\",\n Description = \"hello1\",\n PrimaryIp = \"10.0.0.2\",\n SecurityGroupId = defaultSecurityGroup.Id,\n VswitchId = defaultSwitch.Id,\n },\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs\n {\n Name = \"disk1\",\n Description = \"description\",\n DeleteWithInstance = true,\n Category = \"cloud\",\n Encrypted = false,\n PerformanceLevel = \"PL0\",\n Size = 20,\n },\n new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs\n {\n Name = \"disk2\",\n Description = \"description2\",\n DeleteWithInstance = true,\n Category = \"cloud\",\n Encrypted = false,\n PerformanceLevel = \"PL0\",\n Size = 20,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsLaunchTemplate(ctx, \"default\", \u0026ecs.EcsLaunchTemplateArgs{\n\t\t\tLaunchTemplateName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tHostName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PrePaid\"),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tInternetMaxBandwidthIn: pulumi.Int(5),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(5),\n\t\t\tIoOptimized: pulumi.String(\"optimized\"),\n\t\t\tKeyPairName: pulumi.String(\"key_pair_name\"),\n\t\t\tRamRoleName: pulumi.String(\"ram_role_name\"),\n\t\t\tNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSecurityEnhancementStrategy: pulumi.String(\"Active\"),\n\t\t\tSpotPriceLimit: pulumi.Float64(5),\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tSystemDisk: \u0026ecs.EcsLaunchTemplateSystemDiskArgs{\n\t\t\t\tCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\t\tDescription: pulumi.String(\"Test For Terraform\"),\n\t\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\t\tSize: pulumi.Int(40),\n\t\t\t\tDeleteWithInstance: pulumi.Bool(false),\n\t\t\t},\n\t\t\tUserData: pulumi.String(\"xxxxxxx\"),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tTemplateTags: pulumi.StringMap{\n\t\t\t\t\"Create\": pulumi.String(\"Terraform\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: \u0026ecs.EcsLaunchTemplateNetworkInterfacesArgs{\n\t\t\t\tName: pulumi.String(\"eth0\"),\n\t\t\t\tDescription: pulumi.String(\"hello1\"),\n\t\t\t\tPrimaryIp: pulumi.String(\"10.0.0.2\"),\n\t\t\t\tSecurityGroupId: defaultSecurityGroup.ID(),\n\t\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\t},\n\t\t\tDataDisks: ecs.EcsLaunchTemplateDataDiskArray{\n\t\t\t\t\u0026ecs.EcsLaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk1\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\t\t\tCategory: pulumi.String(\"cloud\"),\n\t\t\t\t\tEncrypted: pulumi.Bool(false),\n\t\t\t\t\tPerformanceLevel: pulumi.String(\"PL0\"),\n\t\t\t\t\tSize: pulumi.Int(20),\n\t\t\t\t},\n\t\t\t\t\u0026ecs.EcsLaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk2\"),\n\t\t\t\t\tDescription: pulumi.String(\"description2\"),\n\t\t\t\t\tDeleteWithInstance: pulumi.Bool(true),\n\t\t\t\t\tCategory: pulumi.String(\"cloud\"),\n\t\t\t\t\tEncrypted: pulumi.Bool(false),\n\t\t\t\t\tPerformanceLevel: pulumi.String(\"PL0\"),\n\t\t\t\t\tSize: pulumi.Int(20),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplate;\nimport com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateSystemDiskArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateNetworkInterfacesArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEcsLaunchTemplate = new EcsLaunchTemplate(\"defaultEcsLaunchTemplate\", EcsLaunchTemplateArgs.builder()\n .launchTemplateName(\"terraform-example\")\n .description(\"terraform-example\")\n .imageId(defaultGetImages.images()[0].id())\n .hostName(\"terraform-example\")\n .instanceChargeType(\"PrePaid\")\n .instanceName(\"terraform-example\")\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .internetChargeType(\"PayByBandwidth\")\n .internetMaxBandwidthIn(5)\n .internetMaxBandwidthOut(5)\n .ioOptimized(\"optimized\")\n .keyPairName(\"key_pair_name\")\n .ramRoleName(\"ram_role_name\")\n .networkType(\"vpc\")\n .securityEnhancementStrategy(\"Active\")\n .spotPriceLimit(5.0)\n .spotStrategy(\"SpotWithPriceLimit\")\n .securityGroupIds(defaultSecurityGroup.id())\n .systemDisk(EcsLaunchTemplateSystemDiskArgs.builder()\n .category(\"cloud_ssd\")\n .description(\"Test For Terraform\")\n .name(\"terraform-example\")\n .size(40)\n .deleteWithInstance(false)\n .build())\n .userData(\"xxxxxxx\")\n .vswitchId(defaultSwitch.id())\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .templateTags(Map.ofEntries(\n Map.entry(\"Create\", \"Terraform\"),\n Map.entry(\"For\", \"example\")\n ))\n .networkInterfaces(EcsLaunchTemplateNetworkInterfacesArgs.builder()\n .name(\"eth0\")\n .description(\"hello1\")\n .primaryIp(\"10.0.0.2\")\n .securityGroupId(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build())\n .dataDisks( \n EcsLaunchTemplateDataDiskArgs.builder()\n .name(\"disk1\")\n .description(\"description\")\n .deleteWithInstance(true)\n .category(\"cloud\")\n .encrypted(false)\n .performanceLevel(\"PL0\")\n .size(20)\n .build(),\n EcsLaunchTemplateDataDiskArgs.builder()\n .name(\"disk2\")\n .description(\"description2\")\n .deleteWithInstance(true)\n .category(\"cloud\")\n .encrypted(false)\n .performanceLevel(\"PL0\")\n .size(20)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultEcsLaunchTemplate:\n type: alicloud:ecs:EcsLaunchTemplate\n name: default\n properties:\n launchTemplateName: terraform-example\n description: terraform-example\n imageId: ${defaultGetImages.images[0].id}\n hostName: terraform-example\n instanceChargeType: PrePaid\n instanceName: terraform-example\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n internetChargeType: PayByBandwidth\n internetMaxBandwidthIn: '5'\n internetMaxBandwidthOut: '5'\n ioOptimized: optimized\n keyPairName: key_pair_name\n ramRoleName: ram_role_name\n networkType: vpc\n securityEnhancementStrategy: Active\n spotPriceLimit: '5'\n spotStrategy: SpotWithPriceLimit\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n systemDisk:\n category: cloud_ssd\n description: Test For Terraform\n name: terraform-example\n size: '40'\n deleteWithInstance: 'false'\n userData: xxxxxxx\n vswitchId: ${defaultSwitch.id}\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n templateTags:\n Create: Terraform\n For: example\n networkInterfaces:\n name: eth0\n description: hello1\n primaryIp: 10.0.0.2\n securityGroupId: ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n dataDisks:\n - name: disk1\n description: description\n deleteWithInstance: 'true'\n category: cloud\n encrypted: 'false'\n performanceLevel: PL0\n size: '20'\n - name: disk2\n description: description2\n deleteWithInstance: 'true'\n category: cloud\n encrypted: 'false'\n performanceLevel: PL0\n size: '20'\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableDiskCategory: cloud_efficiency\n availableResourceCreation: VSwitch\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Launch Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsLaunchTemplate:EcsLaunchTemplate example \u003cid\u003e\n```\n\n",
"properties": {
"autoReleaseTime": {
"type": "string",
@@ -155783,7 +158412,7 @@
}
},
"alicloud:ecs/ecsNetworkInterface:EcsNetworkInterface": {
- "description": "Provides a ECS Network Interface resource.\n\nFor information about ECS Network Interface and how to use it, see [What is Network Interface](https://www.alibabacloud.com/help/en/doc-detail/58504.htm).\n\n\u003e **NOTE:** Available since v1.123.1.\n\n\u003e **NOTE** Only one of \u003cspan pulumi-lang-nodejs=\"`privateIpAddresses`\" pulumi-lang-dotnet=\"`PrivateIpAddresses`\" pulumi-lang-go=\"`privateIpAddresses`\" pulumi-lang-python=\"`private_ip_addresses`\" pulumi-lang-yaml=\"`privateIpAddresses`\" pulumi-lang-java=\"`privateIpAddresses`\"\u003e`private_ip_addresses`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-dotnet=\"`SecondaryPrivateIpAddressCount`\" pulumi-lang-go=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-python=\"`secondary_private_ip_address_count`\" pulumi-lang-yaml=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-java=\"`secondaryPrivateIpAddressCount`\"\u003e`secondary_private_ip_address_count`\u003c/span\u003e can be specified when assign private IPs. \n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/24\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"192.168.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic test\",\n primaryIpAddress: \"192.168.0.2\",\n tags: {\n Created: \"TF\",\n For: \"Test\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/24\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"192.168.0.0/24\",\n zone_id=default.zones[0].id,\n vpc_id=default_network.id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic test\",\n primary_ip_address=\"192.168.0.2\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"Test\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/24\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic test\",\n PrimaryIpAddress = \"192.168.0.2\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Test\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\n\t\t\tNetworkInterfaceName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Basic test\"),\n\t\t\tPrimaryIpAddress: pulumi.String(\"192.168.0.2\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic test\")\n .primaryIpAddress(\"192.168.0.2\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Test\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.0.0/24\n zoneId: ${default.zones[0].id}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic test\n primaryIpAddress: 192.168.0.2\n tags:\n Created: TF\n For: Test\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Network Interface can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterface:EcsNetworkInterface example eni-abcd12345\n```\n\n",
+ "description": "Provides a ECS Network Interface resource.\n\nFor information about ECS Network Interface and how to use it, see [What is Network Interface](https://www.alibabacloud.com/help/en/doc-detail/58504.htm).\n\n\u003e **NOTE:** Available since v1.123.1.\n\n\u003e **NOTE** Only one of \u003cspan pulumi-lang-nodejs=\"`privateIpAddresses`\" pulumi-lang-dotnet=\"`PrivateIpAddresses`\" pulumi-lang-go=\"`privateIpAddresses`\" pulumi-lang-python=\"`private_ip_addresses`\" pulumi-lang-yaml=\"`privateIpAddresses`\" pulumi-lang-java=\"`privateIpAddresses`\"\u003e`private_ip_addresses`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-dotnet=\"`SecondaryPrivateIpAddressCount`\" pulumi-lang-go=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-python=\"`secondary_private_ip_address_count`\" pulumi-lang-yaml=\"`secondaryPrivateIpAddressCount`\" pulumi-lang-java=\"`secondaryPrivateIpAddressCount`\"\u003e`secondary_private_ip_address_count`\u003c/span\u003e can be specified when assign private IPs. \n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/24\",\n});\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"192.168.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic test\",\n primaryIpAddress: \"192.168.0.2\",\n tags: {\n Created: \"TF\",\n For: \"Test\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/24\")\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"192.168.0.0/24\",\n zone_id=default.zones[0].id,\n vpc_id=default_network.id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n vpc_id=default_network.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic test\",\n primary_ip_address=\"192.168.0.2\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"Test\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/24\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic test\",\n PrimaryIpAddress = \"192.168.0.2\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Test\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\n\t\t\tNetworkInterfaceName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Basic test\"),\n\t\t\tPrimaryIpAddress: pulumi.String(\"192.168.0.2\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic test\")\n .primaryIpAddress(\"192.168.0.2\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Test\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.0.0/24\n zoneId: ${default.zones[0].id}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n vpcId: ${defaultNetwork.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic test\n primaryIpAddress: 192.168.0.2\n tags:\n Created: TF\n For: Test\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Network Interface can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterface:EcsNetworkInterface example eni-abcd12345\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -156191,7 +158820,7 @@
}
},
"alicloud:ecs/ecsNetworkInterfaceAttachment:EcsNetworkInterfaceAttachment": {
- "description": "Provides a ECS Network Interface Attachment resource.\n\nFor information about ECS Network Interface Attachment and how to use it, see [What is Network Interface Attachment](https://www.alibabacloud.com/help/en/doc-detail/58515.htm).\n\n\u003e **NOTE:** Available since v1.123.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n eniAmount: 3,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"192.168.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n description: \"New security group\",\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n hostName: \"tf-example\",\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic example\",\n primaryIpAddress: \"192.168.0.2\",\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst defaultEcsNetworkInterfaceAttachment = new alicloud.ecs.EcsNetworkInterfaceAttachment(\"default\", {\n networkInterfaceId: defaultEcsNetworkInterface.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n eni_amount=3)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"192.168.0.0/24\",\n zone_id=default.zones[0].id,\n vpc_id=default_network.id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n description=\"New security group\",\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n host_name=\"tf-example\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic example\",\n primary_ip_address=\"192.168.0.2\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\ndefault_ecs_network_interface_attachment = alicloud.ecs.EcsNetworkInterfaceAttachment(\"default\",\n network_interface_id=default_ecs_network_interface.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n EniAmount = 3,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n Description = \"New security group\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n HostName = \"tf-example\",\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic example\",\n PrimaryIpAddress = \"192.168.0.2\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var defaultEcsNetworkInterfaceAttachment = new AliCloud.Ecs.EcsNetworkInterfaceAttachment(\"default\", new()\n {\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tEniAmount: pulumi.IntRef(3),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHostName: pulumi.String(\"tf-example\"),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\n\t\t\tNetworkInterfaceName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Basic example\"),\n\t\t\tPrimaryIpAddress: pulumi.String(\"192.168.0.2\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsNetworkInterfaceAttachment(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceAttachmentArgs{\n\t\t\tNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceAttachment;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .eniAmount(3)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .description(\"New security group\")\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .hostName(\"tf-example\")\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic example\")\n .primaryIpAddress(\"192.168.0.2\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var defaultEcsNetworkInterfaceAttachment = new EcsNetworkInterfaceAttachment(\"defaultEcsNetworkInterfaceAttachment\", EcsNetworkInterfaceAttachmentArgs.builder()\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.0.0/24\n zoneId: ${default.zones[0].id}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n description: New security group\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n hostName: tf-example\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic example\n primaryIpAddress: 192.168.0.2\n tags:\n Created: TF\n For: example\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n defaultEcsNetworkInterfaceAttachment:\n type: alicloud:ecs:EcsNetworkInterfaceAttachment\n name: default\n properties:\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n eniAmount: 3\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Network Interface Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterfaceAttachment:EcsNetworkInterfaceAttachment example \u003cnetwork_interface_id\u003e:\u003cinstance_id\u003e\n```\n\n",
+ "description": "Provides a ECS Network Interface Attachment resource.\n\nFor information about ECS Network Interface Attachment and how to use it, see [What is Network Interface Attachment](https://www.alibabacloud.com/help/en/doc-detail/58515.htm).\n\n\u003e **NOTE:** Available since v1.123.1.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n eniAmount: 3,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"192.168.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: name,\n description: \"New security group\",\n vpcId: defaultNetwork.id,\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: name,\n hostName: \"tf-example\",\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: name,\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"Basic example\",\n primaryIpAddress: \"192.168.0.2\",\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst defaultEcsNetworkInterfaceAttachment = new alicloud.ecs.EcsNetworkInterfaceAttachment(\"default\", {\n networkInterfaceId: defaultEcsNetworkInterface.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n eni_amount=3)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"192.168.0.0/24\",\n zone_id=default.zones[0].id,\n vpc_id=default_network.id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=name,\n description=\"New security group\",\n vpc_id=default_network.id)\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=name,\n host_name=\"tf-example\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=name,\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"Basic example\",\n primary_ip_address=\"192.168.0.2\",\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\ndefault_ecs_network_interface_attachment = alicloud.ecs.EcsNetworkInterfaceAttachment(\"default\",\n network_interface_id=default_ecs_network_interface.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n EniAmount = 3,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"192.168.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = name,\n Description = \"New security group\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = name,\n HostName = \"tf-example\",\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = name,\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"Basic example\",\n PrimaryIpAddress = \"192.168.0.2\",\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var defaultEcsNetworkInterfaceAttachment = new AliCloud.Ecs.EcsNetworkInterfaceAttachment(\"default\", new()\n {\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tEniAmount: pulumi.IntRef(3),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(\"New security group\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tHostName: pulumi.String(\"tf-example\"),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\n\t\t\tNetworkInterfaceName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Basic example\"),\n\t\t\tPrimaryIpAddress: pulumi.String(\"192.168.0.2\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsNetworkInterfaceAttachment(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceAttachmentArgs{\n\t\t\tNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceAttachment;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .eniAmount(3)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"192.168.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .description(\"New security group\")\n .vpcId(defaultNetwork.id())\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(name)\n .hostName(\"tf-example\")\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(name)\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"Basic example\")\n .primaryIpAddress(\"192.168.0.2\")\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var defaultEcsNetworkInterfaceAttachment = new EcsNetworkInterfaceAttachment(\"defaultEcsNetworkInterfaceAttachment\", EcsNetworkInterfaceAttachmentArgs.builder()\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 192.168.0.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 192.168.0.0/24\n zoneId: ${default.zones[0].id}\n vpcId: ${defaultNetwork.id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: ${name}\n description: New security group\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: ${name}\n hostName: tf-example\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: ${name}\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: Basic example\n primaryIpAddress: 192.168.0.2\n tags:\n Created: TF\n For: example\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n defaultEcsNetworkInterfaceAttachment:\n type: alicloud:ecs:EcsNetworkInterfaceAttachment\n name: default\n properties:\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n instanceId: ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n eniAmount: 3\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Network Interface Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterfaceAttachment:EcsNetworkInterfaceAttachment example \u003cnetwork_interface_id\u003e:\u003cinstance_id\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -156280,7 +158909,7 @@
}
},
"alicloud:ecs/ecsNetworkInterfacePermission:EcsNetworkInterfacePermission": {
- "description": "Provides a ECS Network Interface Permission resource.\n\nFor information about ECS Network Interface Permission and how to use it, see [What is Network Interface Permission](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/elastic-network-interfaces-overview).\n\n\u003e **NOTE:** Available since v1.166.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: \"terraform-example\",\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"terraform-example\",\n primaryIpAddress: defaultSwitch.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst example = new alicloud.ecs.EcsNetworkInterfacePermission(\"example\", {\n accountId: defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id),\n networkInterfaceId: defaultEcsNetworkInterface.id,\n permission: \"InstanceAttach\",\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_account = alicloud.get_account()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=\"terraform-example\",\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"terraform-example\",\n primary_ip_address=default_switch.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\nexample = alicloud.ecs.EcsNetworkInterfacePermission(\"example\",\n account_id=default_get_account.id,\n network_interface_id=default_ecs_network_interface.id,\n permission=\"InstanceAttach\",\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = \"terraform-example\",\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"terraform-example\",\n PrimaryIpAddress = defaultSwitch.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var example = new AliCloud.Ecs.EcsNetworkInterfacePermission(\"example\", new()\n {\n AccountId = defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n Permission = \"InstanceAttach\",\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(\"terraform-example\"),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(\"terraform-example\"),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(\"terraform-example\"),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\ndefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(\"terraform-example\"),\nVswitchId: defaultSwitch.ID(),\nSecurityGroupIds: pulumi.StringArray{\ndefaultSecurityGroup.ID(),\n},\nDescription: pulumi.String(\"terraform-example\"),\nPrimaryIpAddress: pulumi.String(defaultSwitch.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"example\"),\n},\nResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewEcsNetworkInterfacePermission(ctx, \"example\", \u0026ecs.EcsNetworkInterfacePermissionArgs{\nAccountId: pulumi.String(defaultGetAccount.Id),\nNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\nPermission: pulumi.String(\"InstanceAttach\"),\nForce: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfacePermission;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfacePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(\"terraform-example\")\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"terraform-example\")\n .primaryIpAddress(defaultSwitch.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var example = new EcsNetworkInterfacePermission(\"example\", EcsNetworkInterfacePermissionArgs.builder()\n .accountId(defaultGetAccount.id())\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .permission(\"InstanceAttach\")\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: terraform-example\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: terraform-example\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${defaultSwitch.cidrBlock}\n host: 100\n return: result\n tags:\n Created: TF\n For: example\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n example:\n type: alicloud:ecs:EcsNetworkInterfacePermission\n properties:\n accountId: ${defaultGetAccount.id}\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n permission: InstanceAttach\n force: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Network Interface Permission can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterfacePermission:EcsNetworkInterfacePermission example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Network Interface Permission resource.\n\nFor information about ECS Network Interface Permission and how to use it, see [What is Network Interface Permission](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/elastic-network-interfaces-overview).\n\n\u003e **NOTE:** Available since v1.166.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetAccount = alicloud.getAccount({});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultEcsNetworkInterface = new alicloud.ecs.EcsNetworkInterface(\"default\", {\n networkInterfaceName: \"terraform-example\",\n vswitchId: defaultSwitch.id,\n securityGroupIds: [defaultSecurityGroup.id],\n description: \"terraform-example\",\n primaryIpAddress: defaultSwitch.cidrBlock.apply(cidrBlock =\u003e std.cidrhostOutput({\n input: cidrBlock,\n host: 100,\n })).apply(invoke =\u003e invoke.result),\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n});\nconst example = new alicloud.ecs.EcsNetworkInterfacePermission(\"example\", {\n accountId: defaultGetAccount.then(defaultGetAccount =\u003e defaultGetAccount.id),\n networkInterfaceId: defaultEcsNetworkInterface.id,\n permission: \"InstanceAttach\",\n force: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_account = alicloud.get_account()\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_ecs_network_interface = alicloud.ecs.EcsNetworkInterface(\"default\",\n network_interface_name=\"terraform-example\",\n vswitch_id=default_switch.id,\n security_group_ids=[default_security_group.id],\n description=\"terraform-example\",\n primary_ip_address=default_switch.cidr_block.apply(lambda cidr_block: std.cidrhost_output(input=cidr_block,\n host=100)).apply(lambda invoke: invoke.result),\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n },\n resource_group_id=default_get_resource_groups.ids[0])\nexample = alicloud.ecs.EcsNetworkInterfacePermission(\"example\",\n account_id=default_get_account.id,\n network_interface_id=default_ecs_network_interface.id,\n permission=\"InstanceAttach\",\n force=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetAccount = AliCloud.GetAccount.Invoke();\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultEcsNetworkInterface = new AliCloud.Ecs.EcsNetworkInterface(\"default\", new()\n {\n NetworkInterfaceName = \"terraform-example\",\n VswitchId = defaultSwitch.Id,\n SecurityGroupIds = new[]\n {\n defaultSecurityGroup.Id,\n },\n Description = \"terraform-example\",\n PrimaryIpAddress = defaultSwitch.CidrBlock.Apply(cidrBlock =\u003e Std.Cidrhost.Invoke(new()\n {\n Input = cidrBlock,\n Host = 100,\n })).Apply(invoke =\u003e invoke.Result),\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n });\n\n var example = new AliCloud.Ecs.EcsNetworkInterfacePermission(\"example\", new()\n {\n AccountId = defaultGetAccount.Apply(getAccountResult =\u003e getAccountResult.Id),\n NetworkInterfaceId = defaultEcsNetworkInterface.Id,\n Permission = \"InstanceAttach\",\n Force = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetAccount, err := alicloud.GetAccount(ctx, map[string]interface{}{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(\"terraform-example\"),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(\"terraform-example\"),\nCidrBlock: pulumi.String(\"172.17.3.0/24\"),\nVpcId: defaultNetwork.ID(),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nName: pulumi.String(\"terraform-example\"),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\ninvokeCidrhost, err := std.Cidrhost(ctx, \u0026std.CidrhostArgs{\nInput: cidrBlock,\nHost: 100,\n}, nil)\nif err != nil {\nreturn err\n}\ndefaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, \"default\", \u0026ecs.EcsNetworkInterfaceArgs{\nNetworkInterfaceName: pulumi.String(\"terraform-example\"),\nVswitchId: defaultSwitch.ID(),\nSecurityGroupIds: pulumi.StringArray{\ndefaultSecurityGroup.ID(),\n},\nDescription: pulumi.String(\"terraform-example\"),\nPrimaryIpAddress: pulumi.String(defaultSwitch.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrhostResult, error) {\n%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)).(std.CidrhostResultOutput).ApplyT(func(invoke std.CidrhostResult) (*string, error) {\nreturn invoke.Result, nil\n}).(pulumi.StringPtrOutput)),\nTags: pulumi.StringMap{\n\"Created\": pulumi.String(\"TF\"),\n\"For\": pulumi.String(\"example\"),\n},\nResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewEcsNetworkInterfacePermission(ctx, \"example\", \u0026ecs.EcsNetworkInterfacePermissionArgs{\nAccountId: pulumi.String(defaultGetAccount.Id),\nNetworkInterfaceId: defaultEcsNetworkInterface.ID(),\nPermission: pulumi.String(\"InstanceAttach\"),\nForce: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterface;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfaceArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrhostArgs;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfacePermission;\nimport com.pulumi.alicloud.ecs.EcsNetworkInterfacePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetAccount = AlicloudFunctions.getAccount(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultEcsNetworkInterface = new EcsNetworkInterface(\"defaultEcsNetworkInterface\", EcsNetworkInterfaceArgs.builder()\n .networkInterfaceName(\"terraform-example\")\n .vswitchId(defaultSwitch.id())\n .securityGroupIds(defaultSecurityGroup.id())\n .description(\"terraform-example\")\n .primaryIpAddress(defaultSwitch.cidrBlock().applyValue(_cidrBlock -\u003e StdFunctions.cidrhost(CidrhostArgs.builder()\n .input(_cidrBlock)\n .host(100)\n .build())).applyValue(_invoke -\u003e _invoke.result()))\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .build());\n\n var example = new EcsNetworkInterfacePermission(\"example\", EcsNetworkInterfacePermissionArgs.builder()\n .accountId(defaultGetAccount.id())\n .networkInterfaceId(defaultEcsNetworkInterface.id())\n .permission(\"InstanceAttach\")\n .force(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultEcsNetworkInterface:\n type: alicloud:ecs:EcsNetworkInterface\n name: default\n properties:\n networkInterfaceName: terraform-example\n vswitchId: ${defaultSwitch.id}\n securityGroupIds:\n - ${defaultSecurityGroup.id}\n description: terraform-example\n primaryIpAddress:\n fn::invoke:\n function: std:cidrhost\n arguments:\n input: ${defaultSwitch.cidrBlock}\n host: 100\n return: result\n tags:\n Created: TF\n For: example\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n example:\n type: alicloud:ecs:EcsNetworkInterfacePermission\n properties:\n accountId: ${defaultGetAccount.id}\n networkInterfaceId: ${defaultEcsNetworkInterface.id}\n permission: InstanceAttach\n force: true\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetAccount:\n fn::invoke:\n function: alicloud:getAccount\n arguments: {}\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Network Interface Permission can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsNetworkInterfacePermission:EcsNetworkInterfacePermission example \u003cid\u003e\n```\n\n",
"properties": {
"accountId": {
"type": "string",
@@ -156368,7 +158997,7 @@
}
},
"alicloud:ecs/ecsPrefixList:EcsPrefixList": {
- "description": "Provides a ECS Prefix List resource.\n\nFor information about ECS Prefix List and how to use it, see [What is Prefix List.](https://www.alibabacloud.com/help/en/doc-detail/207969.html).\n\n\u003e **NOTE:** Available in v1.152.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.EcsPrefixList(\"default\", {\n addressFamily: \"IPv4\",\n maxEntries: 2,\n prefixListName: \"tftest\",\n description: \"description\",\n entries: [{\n cidr: \"192.168.0.0/24\",\n description: \"description\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.EcsPrefixList(\"default\",\n address_family=\"IPv4\",\n max_entries=2,\n prefix_list_name=\"tftest\",\n description=\"description\",\n entries=[{\n \"cidr\": \"192.168.0.0/24\",\n \"description\": \"description\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.EcsPrefixList(\"default\", new()\n {\n AddressFamily = \"IPv4\",\n MaxEntries = 2,\n PrefixListName = \"tftest\",\n Description = \"description\",\n Entries = new[]\n {\n new AliCloud.Ecs.Inputs.EcsPrefixListEntryArgs\n {\n Cidr = \"192.168.0.0/24\",\n Description = \"description\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsPrefixList(ctx, \"default\", \u0026ecs.EcsPrefixListArgs{\n\t\t\tAddressFamily: pulumi.String(\"IPv4\"),\n\t\t\tMaxEntries: pulumi.Int(2),\n\t\t\tPrefixListName: pulumi.String(\"tftest\"),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tEntries: ecs.EcsPrefixListEntryArray{\n\t\t\t\t\u0026ecs.EcsPrefixListEntryArgs{\n\t\t\t\t\tCidr: pulumi.String(\"192.168.0.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsPrefixList;\nimport com.pulumi.alicloud.ecs.EcsPrefixListArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsPrefixListEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcsPrefixList(\"default\", EcsPrefixListArgs.builder()\n .addressFamily(\"IPv4\")\n .maxEntries(2)\n .prefixListName(\"tftest\")\n .description(\"description\")\n .entries(EcsPrefixListEntryArgs.builder()\n .cidr(\"192.168.0.0/24\")\n .description(\"description\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:EcsPrefixList\n properties:\n addressFamily: IPv4\n maxEntries: 2\n prefixListName: tftest\n description: description\n entries:\n - cidr: 192.168.0.0/24\n description: description\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Prefix List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsPrefixList:EcsPrefixList example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Prefix List resource.\n\nFor information about ECS Prefix List and how to use it, see [What is Prefix List.](https://www.alibabacloud.com/help/en/doc-detail/207969.html).\n\n\u003e **NOTE:** Available in v1.152.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.EcsPrefixList(\"default\", {\n addressFamily: \"IPv4\",\n maxEntries: 2,\n prefixListName: \"tftest\",\n description: \"description\",\n entries: [{\n cidr: \"192.168.0.0/24\",\n description: \"description\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.EcsPrefixList(\"default\",\n address_family=\"IPv4\",\n max_entries=2,\n prefix_list_name=\"tftest\",\n description=\"description\",\n entries=[{\n \"cidr\": \"192.168.0.0/24\",\n \"description\": \"description\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.EcsPrefixList(\"default\", new()\n {\n AddressFamily = \"IPv4\",\n MaxEntries = 2,\n PrefixListName = \"tftest\",\n Description = \"description\",\n Entries = new[]\n {\n new AliCloud.Ecs.Inputs.EcsPrefixListEntryArgs\n {\n Cidr = \"192.168.0.0/24\",\n Description = \"description\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsPrefixList(ctx, \"default\", \u0026ecs.EcsPrefixListArgs{\n\t\t\tAddressFamily: pulumi.String(\"IPv4\"),\n\t\t\tMaxEntries: pulumi.Int(2),\n\t\t\tPrefixListName: pulumi.String(\"tftest\"),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tEntries: ecs.EcsPrefixListEntryArray{\n\t\t\t\t\u0026ecs.EcsPrefixListEntryArgs{\n\t\t\t\t\tCidr: pulumi.String(\"192.168.0.0/24\"),\n\t\t\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsPrefixList;\nimport com.pulumi.alicloud.ecs.EcsPrefixListArgs;\nimport com.pulumi.alicloud.ecs.inputs.EcsPrefixListEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcsPrefixList(\"default\", EcsPrefixListArgs.builder()\n .addressFamily(\"IPv4\")\n .maxEntries(2)\n .prefixListName(\"tftest\")\n .description(\"description\")\n .entries(EcsPrefixListEntryArgs.builder()\n .cidr(\"192.168.0.0/24\")\n .description(\"description\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:EcsPrefixList\n properties:\n addressFamily: IPv4\n maxEntries: 2\n prefixListName: tftest\n description: description\n entries:\n - cidr: 192.168.0.0/24\n description: description\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Prefix List can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsPrefixList:EcsPrefixList example \u003cid\u003e\n```\n\n",
"properties": {
"addressFamily": {
"type": "string",
@@ -156466,7 +159095,7 @@
}
},
"alicloud:ecs/ecsSessionManagerStatus:EcsSessionManagerStatus": {
- "description": "Provides a ECS Session Manager Status resource.\n\nFor information about ECS Session Manager Status and how to use it, see [What is Session Manager Status](https://www.alibabacloud.com/help/zh/doc-detail/337915.html).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.EcsSessionManagerStatus(\"default\", {\n sessionManagerStatusName: \"sessionManagerStatus\",\n status: \"Disabled\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.EcsSessionManagerStatus(\"default\",\n session_manager_status_name=\"sessionManagerStatus\",\n status=\"Disabled\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.EcsSessionManagerStatus(\"default\", new()\n {\n SessionManagerStatusName = \"sessionManagerStatus\",\n Status = \"Disabled\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsSessionManagerStatus(ctx, \"default\", \u0026ecs.EcsSessionManagerStatusArgs{\n\t\t\tSessionManagerStatusName: pulumi.String(\"sessionManagerStatus\"),\n\t\t\tStatus: pulumi.String(\"Disabled\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsSessionManagerStatus;\nimport com.pulumi.alicloud.ecs.EcsSessionManagerStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcsSessionManagerStatus(\"default\", EcsSessionManagerStatusArgs.builder()\n .sessionManagerStatusName(\"sessionManagerStatus\")\n .status(\"Disabled\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:EcsSessionManagerStatus\n properties:\n sessionManagerStatusName: sessionManagerStatus\n status: Disabled\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Session Manager Status can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSessionManagerStatus:EcsSessionManagerStatus example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Session Manager Status resource.\n\nFor information about ECS Session Manager Status and how to use it, see [What is Session Manager Status](https://www.alibabacloud.com/help/zh/doc-detail/337915.html).\n\n\u003e **NOTE:** Available since v1.148.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.EcsSessionManagerStatus(\"default\", {\n sessionManagerStatusName: \"sessionManagerStatus\",\n status: \"Disabled\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.EcsSessionManagerStatus(\"default\",\n session_manager_status_name=\"sessionManagerStatus\",\n status=\"Disabled\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.EcsSessionManagerStatus(\"default\", new()\n {\n SessionManagerStatusName = \"sessionManagerStatus\",\n Status = \"Disabled\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewEcsSessionManagerStatus(ctx, \"default\", \u0026ecs.EcsSessionManagerStatusArgs{\n\t\t\tSessionManagerStatusName: pulumi.String(\"sessionManagerStatus\"),\n\t\t\tStatus: pulumi.String(\"Disabled\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsSessionManagerStatus;\nimport com.pulumi.alicloud.ecs.EcsSessionManagerStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcsSessionManagerStatus(\"default\", EcsSessionManagerStatusArgs.builder()\n .sessionManagerStatusName(\"sessionManagerStatus\")\n .status(\"Disabled\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:EcsSessionManagerStatus\n properties:\n sessionManagerStatusName: sessionManagerStatus\n status: Disabled\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Session Manager Status can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSessionManagerStatus:EcsSessionManagerStatus example \u003cid\u003e\n```\n\n",
"properties": {
"sessionManagerStatusName": {
"type": "string",
@@ -156513,7 +159142,7 @@
}
},
"alicloud:ecs/ecsSnapshot:EcsSnapshot": {
- "description": "Provides a ECS Snapshot resource.\n\n\n\nFor information about ECS Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/doc-detail/25524.htm).\n\n\u003e **NOTE:** Available since v1.120.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_essd\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n instanceName: name,\n dataDisks: [{\n category: \"cloud_essd\",\n size: 20,\n }],\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n diskName: name,\n zoneId: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n category: \"cloud_essd\",\n size: 500,\n});\nconst defaultEcsDiskAttachment = new alicloud.ecs.EcsDiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\nconst defaultEcsSnapshot = new alicloud.ecs.EcsSnapshot(\"default\", {\n diskId: defaultEcsDiskAttachment.diskId,\n category: \"standard\",\n retentionDays: 20,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_essd\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id,\n system_disk_category=\"cloud_essd\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_essd\",\n vswitch_id=default_switch.id,\n instance_name=name,\n data_disks=[{\n \"category\": \"cloud_essd\",\n \"size\": 20,\n }])\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n disk_name=name,\n zone_id=default_get_instance_types.instance_types[0].availability_zones[0],\n category=\"cloud_essd\",\n size=500)\ndefault_ecs_disk_attachment = alicloud.ecs.EcsDiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\ndefault_ecs_snapshot = alicloud.ecs.EcsSnapshot(\"default\",\n disk_id=default_ecs_disk_attachment.disk_id,\n category=\"standard\",\n retention_days=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_essd\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.InstanceDataDiskArgs\n {\n Category = \"cloud_essd\",\n Size = 20,\n },\n },\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n DiskName = name,\n ZoneId = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n Category = \"cloud_essd\",\n Size = 500,\n });\n\n var defaultEcsDiskAttachment = new AliCloud.Ecs.EcsDiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultEcsSnapshot = new AliCloud.Ecs.EcsSnapshot(\"default\", new()\n {\n DiskId = defaultEcsDiskAttachment.DiskId,\n Category = \"standard\",\n RetentionDays = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_essd\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\nSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nSecurityGroupName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_essd\"),\nVswitchId: defaultSwitch.ID(),\nInstanceName: pulumi.String(name),\nDataDisks: ecs.InstanceDataDiskArray{\n\u0026ecs.InstanceDataDiskArgs{\nCategory: pulumi.String(\"cloud_essd\"),\nSize: pulumi.Int(20),\n},\n},\n})\nif err != nil {\nreturn err\n}\ndefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\nDiskName: pulumi.String(name),\nZoneId: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nCategory: pulumi.String(\"cloud_essd\"),\nSize: pulumi.Int(500),\n})\nif err != nil {\nreturn err\n}\ndefaultEcsDiskAttachment, err := ecs.NewEcsDiskAttachment(ctx, \"default\", \u0026ecs.EcsDiskAttachmentArgs{\nDiskId: defaultEcsDisk.ID(),\nInstanceId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewEcsSnapshot(ctx, \"default\", \u0026ecs.EcsSnapshotArgs{\nDiskId: defaultEcsDiskAttachment.DiskId,\nCategory: pulumi.String(\"standard\"),\nRetentionDays: pulumi.Int(20),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.inputs.InstanceDataDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachment;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachmentArgs;\nimport com.pulumi.alicloud.ecs.EcsSnapshot;\nimport com.pulumi.alicloud.ecs.EcsSnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_essd\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .dataDisks(InstanceDataDiskArgs.builder()\n .category(\"cloud_essd\")\n .size(20)\n .build())\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .diskName(name)\n .zoneId(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .category(\"cloud_essd\")\n .size(500)\n .build());\n\n var defaultEcsDiskAttachment = new EcsDiskAttachment(\"defaultEcsDiskAttachment\", EcsDiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultEcsSnapshot = new EcsSnapshot(\"defaultEcsSnapshot\", EcsSnapshotArgs.builder()\n .diskId(defaultEcsDiskAttachment.diskId())\n .category(\"standard\")\n .retentionDays(20)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSnapshot:EcsSnapshot example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Snapshot resource.\n\n\n\nFor information about ECS Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/doc-detail/25524.htm).\n\n\u003e **NOTE:** Available since v1.120.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_essd\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: name,\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_essd\",\n vswitchId: defaultSwitch.id,\n instanceName: name,\n dataDisks: [{\n category: \"cloud_essd\",\n size: 20,\n }],\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n diskName: name,\n zoneId: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n category: \"cloud_essd\",\n size: 500,\n});\nconst defaultEcsDiskAttachment = new alicloud.ecs.EcsDiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\nconst defaultEcsSnapshot = new alicloud.ecs.EcsSnapshot(\"default\", {\n diskId: defaultEcsDiskAttachment.diskId,\n category: \"standard\",\n retentionDays: 20,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_essd\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id,\n system_disk_category=\"cloud_essd\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=name,\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_essd\",\n vswitch_id=default_switch.id,\n instance_name=name,\n data_disks=[{\n \"category\": \"cloud_essd\",\n \"size\": 20,\n }])\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n disk_name=name,\n zone_id=default_get_instance_types.instance_types[0].availability_zones[0],\n category=\"cloud_essd\",\n size=500)\ndefault_ecs_disk_attachment = alicloud.ecs.EcsDiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\ndefault_ecs_snapshot = alicloud.ecs.EcsSnapshot(\"default\",\n disk_id=default_ecs_disk_attachment.disk_id,\n category=\"standard\",\n retention_days=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_essd\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = name,\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_essd\",\n VswitchId = defaultSwitch.Id,\n InstanceName = name,\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.InstanceDataDiskArgs\n {\n Category = \"cloud_essd\",\n Size = 20,\n },\n },\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n DiskName = name,\n ZoneId = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n Category = \"cloud_essd\",\n Size = 500,\n });\n\n var defaultEcsDiskAttachment = new AliCloud.Ecs.EcsDiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultEcsSnapshot = new AliCloud.Ecs.EcsSnapshot(\"default\", new()\n {\n DiskId = defaultEcsDiskAttachment.DiskId,\n Category = \"standard\",\n RetentionDays = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_essd\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\nSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nSecurityGroupName: pulumi.String(name),\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_essd\"),\nVswitchId: defaultSwitch.ID(),\nInstanceName: pulumi.String(name),\nDataDisks: ecs.InstanceDataDiskArray{\n\u0026ecs.InstanceDataDiskArgs{\nCategory: pulumi.String(\"cloud_essd\"),\nSize: pulumi.Int(20),\n},\n},\n})\nif err != nil {\nreturn err\n}\ndefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\nDiskName: pulumi.String(name),\nZoneId: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nCategory: pulumi.String(\"cloud_essd\"),\nSize: pulumi.Int(500),\n})\nif err != nil {\nreturn err\n}\ndefaultEcsDiskAttachment, err := ecs.NewEcsDiskAttachment(ctx, \"default\", \u0026ecs.EcsDiskAttachmentArgs{\nDiskId: defaultEcsDisk.ID(),\nInstanceId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewEcsSnapshot(ctx, \"default\", \u0026ecs.EcsSnapshotArgs{\nDiskId: defaultEcsDiskAttachment.DiskId,\nCategory: pulumi.String(\"standard\"),\nRetentionDays: pulumi.Int(20),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.inputs.InstanceDataDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachment;\nimport com.pulumi.alicloud.ecs.EcsDiskAttachmentArgs;\nimport com.pulumi.alicloud.ecs.EcsSnapshot;\nimport com.pulumi.alicloud.ecs.EcsSnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_essd\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_essd\")\n .vswitchId(defaultSwitch.id())\n .instanceName(name)\n .dataDisks(InstanceDataDiskArgs.builder()\n .category(\"cloud_essd\")\n .size(20)\n .build())\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .diskName(name)\n .zoneId(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .category(\"cloud_essd\")\n .size(500)\n .build());\n\n var defaultEcsDiskAttachment = new EcsDiskAttachment(\"defaultEcsDiskAttachment\", EcsDiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultEcsSnapshot = new EcsSnapshot(\"defaultEcsSnapshot\", EcsSnapshotArgs.builder()\n .diskId(defaultEcsDiskAttachment.diskId())\n .category(\"standard\")\n .retentionDays(20)\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSnapshot:EcsSnapshot example \u003cid\u003e\n```\n\n",
"properties": {
"category": {
"type": "string",
@@ -156716,7 +159345,7 @@
}
},
"alicloud:ecs/ecsSnapshotGroup:EcsSnapshotGroup": {
- "description": "Provides a ECS Snapshot Group resource.\n\nFor information about ECS Snapshot Group and how to use it, see [What is Snapshot Group](https://www.alibabacloud.com/help/en/doc-detail/210939.html).\n\n\u003e **NOTE:** Available since v1.160.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n availableDiskCategory: \"cloud_essd\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n owners: \"system\",\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n internetMaxBandwidthOut: 10,\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n diskName: \"terraform-example\",\n description: \"terraform-example\",\n category: \"cloud_essd\",\n size: 30,\n});\nconst defaultDiskAttachment = new alicloud.ecs.DiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\nconst defaultEcsSnapshotGroup = new alicloud.ecs.EcsSnapshotGroup(\"default\", {\n description: \"terraform-example\",\n diskIds: [defaultDiskAttachment.diskId],\n snapshotGroupName: \"terraform-example\",\n instanceId: defaultInstance.id,\n instantAccess: true,\n instantAccessRetentionDays: 1,\n tags: {\n Created: \"TF\",\n For: \"Acceptance\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\",\n available_disk_category=\"cloud_essd\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n system_disk_category=\"cloud_essd\")\ndefault_get_images = alicloud.ecs.get_images(owners=\"system\",\n name_regex=\"^ubuntu_18.*64\",\n most_recent=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.instance_types[0].id,\n image_id=default_get_images.images[0].id,\n internet_max_bandwidth_out=10)\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=default.zones[0].id,\n disk_name=\"terraform-example\",\n description=\"terraform-example\",\n category=\"cloud_essd\",\n size=30)\ndefault_disk_attachment = alicloud.ecs.DiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\ndefault_ecs_snapshot_group = alicloud.ecs.EcsSnapshotGroup(\"default\",\n description=\"terraform-example\",\n disk_ids=[default_disk_attachment.disk_id],\n snapshot_group_name=\"terraform-example\",\n instance_id=default_instance.id,\n instant_access=True,\n instant_access_retention_days=1,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n AvailableDiskCategory = \"cloud_essd\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n Owners = \"system\",\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n DiskName = \"terraform-example\",\n Description = \"terraform-example\",\n Category = \"cloud_essd\",\n Size = 30,\n });\n\n var defaultDiskAttachment = new AliCloud.Ecs.DiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultEcsSnapshotGroup = new AliCloud.Ecs.EcsSnapshotGroup(\"default\", new()\n {\n Description = \"terraform-example\",\n DiskIds = new[]\n {\n defaultDiskAttachment.DiskId,\n },\n SnapshotGroupName = \"terraform-example\",\n InstanceId = defaultInstance.Id,\n InstantAccess = true,\n InstantAccessRetentionDays = 1,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tDiskName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDiskAttachment, err := ecs.NewDiskAttachment(ctx, \"default\", \u0026ecs.DiskAttachmentArgs{\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsSnapshotGroup(ctx, \"default\", \u0026ecs.EcsSnapshotGroupArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tDiskIds: pulumi.StringArray{\n\t\t\t\tdefaultDiskAttachment.DiskId,\n\t\t\t},\n\t\t\tSnapshotGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tInstantAccess: pulumi.Bool(true),\n\t\t\tInstantAccessRetentionDays: pulumi.Int(1),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.DiskAttachment;\nimport com.pulumi.alicloud.ecs.DiskAttachmentArgs;\nimport com.pulumi.alicloud.ecs.EcsSnapshotGroup;\nimport com.pulumi.alicloud.ecs.EcsSnapshotGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .availableDiskCategory(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .owners(\"system\")\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(default_.zones()[0].id())\n .diskName(\"terraform-example\")\n .description(\"terraform-example\")\n .category(\"cloud_essd\")\n .size(30)\n .build());\n\n var defaultDiskAttachment = new DiskAttachment(\"defaultDiskAttachment\", DiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultEcsSnapshotGroup = new EcsSnapshotGroup(\"defaultEcsSnapshotGroup\", EcsSnapshotGroupArgs.builder()\n .description(\"terraform-example\")\n .diskIds(defaultDiskAttachment.diskId())\n .snapshotGroupName(\"terraform-example\")\n .instanceId(defaultInstance.id())\n .instantAccess(true)\n .instantAccessRetentionDays(1)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n imageId: ${defaultGetImages.images[0].id}\n internetMaxBandwidthOut: 10\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${default.zones[0].id}\n diskName: terraform-example\n description: terraform-example\n category: cloud_essd\n size: '30'\n defaultDiskAttachment:\n type: alicloud:ecs:DiskAttachment\n name: default\n properties:\n diskId: ${defaultEcsDisk.id}\n instanceId: ${defaultInstance.id}\n defaultEcsSnapshotGroup:\n type: alicloud:ecs:EcsSnapshotGroup\n name: default\n properties:\n description: terraform-example\n diskIds:\n - ${defaultDiskAttachment.diskId}\n snapshotGroupName: terraform-example\n instanceId: ${defaultInstance.id}\n instantAccess: true\n instantAccessRetentionDays: 1\n tags:\n Created: TF\n For: Acceptance\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n availableDiskCategory: cloud_essd\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n systemDiskCategory: cloud_essd\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n owners: system\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Snapshot Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSnapshotGroup:EcsSnapshotGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Snapshot Group resource.\n\nFor information about ECS Snapshot Group and how to use it, see [What is Snapshot Group](https://www.alibabacloud.com/help/en/doc-detail/210939.html).\n\n\u003e **NOTE:** Available since v1.160.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n availableDiskCategory: \"cloud_essd\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n systemDiskCategory: \"cloud_essd\",\n}));\nconst defaultGetImages = alicloud.ecs.getImages({\n owners: \"system\",\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n internetMaxBandwidthOut: 10,\n});\nconst defaultEcsDisk = new alicloud.ecs.EcsDisk(\"default\", {\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n diskName: \"terraform-example\",\n description: \"terraform-example\",\n category: \"cloud_essd\",\n size: 30,\n});\nconst defaultDiskAttachment = new alicloud.ecs.DiskAttachment(\"default\", {\n diskId: defaultEcsDisk.id,\n instanceId: defaultInstance.id,\n});\nconst defaultEcsSnapshotGroup = new alicloud.ecs.EcsSnapshotGroup(\"default\", {\n description: \"terraform-example\",\n diskIds: [defaultDiskAttachment.diskId],\n snapshotGroupName: \"terraform-example\",\n instanceId: defaultInstance.id,\n instantAccess: true,\n instantAccessRetentionDays: 1,\n tags: {\n Created: \"TF\",\n For: \"Acceptance\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\",\n available_disk_category=\"cloud_essd\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n system_disk_category=\"cloud_essd\")\ndefault_get_images = alicloud.ecs.get_images(owners=\"system\",\n name_regex=\"^ubuntu_18.*64\",\n most_recent=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.instance_types[0].id,\n image_id=default_get_images.images[0].id,\n internet_max_bandwidth_out=10)\ndefault_ecs_disk = alicloud.ecs.EcsDisk(\"default\",\n zone_id=default.zones[0].id,\n disk_name=\"terraform-example\",\n description=\"terraform-example\",\n category=\"cloud_essd\",\n size=30)\ndefault_disk_attachment = alicloud.ecs.DiskAttachment(\"default\",\n disk_id=default_ecs_disk.id,\n instance_id=default_instance.id)\ndefault_ecs_snapshot_group = alicloud.ecs.EcsSnapshotGroup(\"default\",\n description=\"terraform-example\",\n disk_ids=[default_disk_attachment.disk_id],\n snapshot_group_name=\"terraform-example\",\n instance_id=default_instance.id,\n instant_access=True,\n instant_access_retention_days=1,\n tags={\n \"Created\": \"TF\",\n \"For\": \"Acceptance\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n AvailableDiskCategory = \"cloud_essd\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n SystemDiskCategory = \"cloud_essd\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n Owners = \"system\",\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultEcsDisk = new AliCloud.Ecs.EcsDisk(\"default\", new()\n {\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n DiskName = \"terraform-example\",\n Description = \"terraform-example\",\n Category = \"cloud_essd\",\n Size = 30,\n });\n\n var defaultDiskAttachment = new AliCloud.Ecs.DiskAttachment(\"default\", new()\n {\n DiskId = defaultEcsDisk.Id,\n InstanceId = defaultInstance.Id,\n });\n\n var defaultEcsSnapshotGroup = new AliCloud.Ecs.EcsSnapshotGroup(\"default\", new()\n {\n Description = \"terraform-example\",\n DiskIds = new[]\n {\n defaultDiskAttachment.DiskId,\n },\n SnapshotGroupName = \"terraform-example\",\n InstanceId = defaultInstance.Id,\n InstantAccess = true,\n InstantAccessRetentionDays = 1,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"Acceptance\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t\tAvailableDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tSystemDiskCategory: pulumi.StringRef(\"cloud_essd\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcsDisk, err := ecs.NewEcsDisk(ctx, \"default\", \u0026ecs.EcsDiskArgs{\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t\tDiskName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tCategory: pulumi.String(\"cloud_essd\"),\n\t\t\tSize: pulumi.Int(30),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDiskAttachment, err := ecs.NewDiskAttachment(ctx, \"default\", \u0026ecs.DiskAttachmentArgs{\n\t\t\tDiskId: defaultEcsDisk.ID(),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEcsSnapshotGroup(ctx, \"default\", \u0026ecs.EcsSnapshotGroupArgs{\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tDiskIds: pulumi.StringArray{\n\t\t\t\tdefaultDiskAttachment.DiskId,\n\t\t\t},\n\t\t\tSnapshotGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tInstantAccess: pulumi.Bool(true),\n\t\t\tInstantAccessRetentionDays: pulumi.Int(1),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"Acceptance\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EcsDisk;\nimport com.pulumi.alicloud.ecs.EcsDiskArgs;\nimport com.pulumi.alicloud.ecs.DiskAttachment;\nimport com.pulumi.alicloud.ecs.DiskAttachmentArgs;\nimport com.pulumi.alicloud.ecs.EcsSnapshotGroup;\nimport com.pulumi.alicloud.ecs.EcsSnapshotGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .availableDiskCategory(\"cloud_essd\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .systemDiskCategory(\"cloud_essd\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .owners(\"system\")\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultEcsDisk = new EcsDisk(\"defaultEcsDisk\", EcsDiskArgs.builder()\n .zoneId(default_.zones()[0].id())\n .diskName(\"terraform-example\")\n .description(\"terraform-example\")\n .category(\"cloud_essd\")\n .size(30)\n .build());\n\n var defaultDiskAttachment = new DiskAttachment(\"defaultDiskAttachment\", DiskAttachmentArgs.builder()\n .diskId(defaultEcsDisk.id())\n .instanceId(defaultInstance.id())\n .build());\n\n var defaultEcsSnapshotGroup = new EcsSnapshotGroup(\"defaultEcsSnapshotGroup\", EcsSnapshotGroupArgs.builder()\n .description(\"terraform-example\")\n .diskIds(defaultDiskAttachment.diskId())\n .snapshotGroupName(\"terraform-example\")\n .instanceId(defaultInstance.id())\n .instantAccess(true)\n .instantAccessRetentionDays(1)\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"Acceptance\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n imageId: ${defaultGetImages.images[0].id}\n internetMaxBandwidthOut: 10\n defaultEcsDisk:\n type: alicloud:ecs:EcsDisk\n name: default\n properties:\n zoneId: ${default.zones[0].id}\n diskName: terraform-example\n description: terraform-example\n category: cloud_essd\n size: '30'\n defaultDiskAttachment:\n type: alicloud:ecs:DiskAttachment\n name: default\n properties:\n diskId: ${defaultEcsDisk.id}\n instanceId: ${defaultInstance.id}\n defaultEcsSnapshotGroup:\n type: alicloud:ecs:EcsSnapshotGroup\n name: default\n properties:\n description: terraform-example\n diskIds:\n - ${defaultDiskAttachment.diskId}\n snapshotGroupName: terraform-example\n instanceId: ${defaultInstance.id}\n instantAccess: true\n instantAccessRetentionDays: 1\n tags:\n Created: TF\n For: Acceptance\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n availableDiskCategory: cloud_essd\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n systemDiskCategory: cloud_essd\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n owners: system\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Snapshot Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ecsSnapshotGroup:EcsSnapshotGroup example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -156878,7 +159507,7 @@
}
},
"alicloud:ecs/eip:Eip": {
- "description": "Provides an elastic IP resource.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.126.0`. Please use new resource alicloud_eip_address.\n\n\u003e **NOTE:** The resource only supports to create `PostPaid PayByTraffic` or `PrePaid PayByBandwidth` elastic IP for international account. Otherwise, you will happened error `COMMODITY.INVALID_COMPONENT`.\nYour account is international if you can use it to login in [International Web Console](https://account.alibabacloud.com/login/login.htm).\n\n\u003e **NOTE:** From version 1.10.1, this resource supports creating \"PrePaid\" EIP. In addition, it supports setting EIP name and description.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new EIP.\nconst example = new alicloud.ecs.Eip(\"example\", {\n bandwidth: \"10\",\n internetChargeType: \"PayByBandwidth\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new EIP.\nexample = alicloud.ecs.Eip(\"example\",\n bandwidth=\"10\",\n internet_charge_type=\"PayByBandwidth\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new EIP.\n var example = new AliCloud.Ecs.Eip(\"example\", new()\n {\n Bandwidth = \"10\",\n InternetChargeType = \"PayByBandwidth\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new EIP.\n\t\t_, err := ecs.NewEip(ctx, \"example\", \u0026ecs.EipArgs{\n\t\t\tBandwidth: pulumi.String(\"10\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Eip;\nimport com.pulumi.alicloud.ecs.EipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new EIP.\n var example = new Eip(\"example\", EipArgs.builder()\n .bandwidth(\"10\")\n .internetChargeType(\"PayByBandwidth\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new EIP.\n example:\n type: alicloud:ecs:Eip\n properties:\n bandwidth: '10'\n internetChargeType: PayByBandwidth\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Module Support\n\nYou can use the existing eip module \nto create several EIP instances and associate them with other resources one-click, like ECS instances, SLB, Nat Gateway and so on.\n\n## Import\n\nElastic IP address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eip:Eip example eip-abc12345678\n```\n\n",
+ "description": "Provides an elastic IP resource.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.126.0`. Please use new resource alicloud_eip_address.\n\n\u003e **NOTE:** The resource only supports to create `PostPaid PayByTraffic` or `PrePaid PayByBandwidth` elastic IP for international account. Otherwise, you will happened error `COMMODITY.INVALID_COMPONENT`.\nYour account is international if you can use it to login in [International Web Console](https://account.alibabacloud.com/login/login.htm).\n\n\u003e **NOTE:** From version 1.10.1, this resource supports creating \"PrePaid\" EIP. In addition, it supports setting EIP name and description.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\n// Create a new EIP.\nconst example = new alicloud.ecs.Eip(\"example\", {\n bandwidth: \"10\",\n internetChargeType: \"PayByBandwidth\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\n# Create a new EIP.\nexample = alicloud.ecs.Eip(\"example\",\n bandwidth=\"10\",\n internet_charge_type=\"PayByBandwidth\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new EIP.\n var example = new AliCloud.Ecs.Eip(\"example\", new()\n {\n Bandwidth = \"10\",\n InternetChargeType = \"PayByBandwidth\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new EIP.\n\t\t_, err := ecs.NewEip(ctx, \"example\", \u0026ecs.EipArgs{\n\t\t\tBandwidth: pulumi.String(\"10\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Eip;\nimport com.pulumi.alicloud.ecs.EipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n // Create a new EIP.\n var example = new Eip(\"example\", EipArgs.builder()\n .bandwidth(\"10\")\n .internetChargeType(\"PayByBandwidth\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new EIP.\n example:\n type: alicloud:ecs:Eip\n properties:\n bandwidth: '10'\n internetChargeType: PayByBandwidth\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Module Support\n\nYou can use the existing eip module \nto create several EIP instances and associate them with other resources one-click, like ECS instances, SLB, Nat Gateway and so on.\n\n## Import\n\nElastic IP address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eip:Eip example eip-abc12345678\n```\n\n",
"properties": {
"activityId": {
"type": "string"
@@ -157631,7 +160260,7 @@
}
},
"alicloud:ecs/eipAssociation:EipAssociation": {
- "description": "Provides a EIP Association resource.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-dotnet=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-go=\"`ecs.EipAssociation`\" pulumi-lang-python=\"`ecs.EipAssociation`\" pulumi-lang-yaml=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-java=\"`alicloud.ecs.EipAssociation`\"\u003e`alicloud.ecs.EipAssociation`\u003c/span\u003e is useful in scenarios where EIPs are either\n pre-existing or distributed to customers or users and therefore cannot be changed.\n\n\u003e **NOTE:** From version 1.7.1, the resource support to associate EIP to SLB Instance or Nat Gateway.\n\n\u003e **NOTE:** One EIP can only be associated with ECS or SLB instance which in the VPC.\n\nFor information about EIP Association and how to use it, see [What is Association](https://www.alibabacloud.com/help/en/vpc/developer-reference/api-vpc-2016-04-28-associateeipaddress).\n\n\u003e **NOTE:** Available since v1.117.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: name,\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst exampleEipAddress = new alicloud.ecs.EipAddress(\"example\", {addressName: name});\nconst exampleEipAssociation = new alicloud.ecs.EipAssociation(\"example\", {\n allocationId: exampleEipAddress.id,\n instanceId: exampleInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=name,\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\nexample_eip_address = alicloud.ecs.EipAddress(\"example\", address_name=name)\nexample_eip_association = alicloud.ecs.EipAssociation(\"example\",\n allocation_id=example_eip_address.id,\n instance_id=example_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var exampleEipAddress = new AliCloud.Ecs.EipAddress(\"example\", new()\n {\n AddressName = name,\n });\n\n var exampleEipAssociation = new AliCloud.Ecs.EipAssociation(\"example\", new()\n {\n AllocationId = exampleEipAddress.Id,\n InstanceId = exampleInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEipAddress, err := ecs.NewEipAddress(ctx, \"example\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEipAssociation(ctx, \"example\", \u0026ecs.EipAssociationArgs{\n\t\t\tAllocationId: exampleEipAddress.ID(),\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ecs.EipAssociation;\nimport com.pulumi.alicloud.ecs.EipAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(name)\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var exampleEipAddress = new EipAddress(\"exampleEipAddress\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var exampleEipAssociation = new EipAssociation(\"exampleEipAssociation\", EipAssociationArgs.builder()\n .allocationId(exampleEipAddress.id())\n .instanceId(exampleInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: ${name}\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n tags:\n Created: TF\n For: example\n exampleEipAddress:\n type: alicloud:ecs:EipAddress\n name: example\n properties:\n addressName: ${name}\n exampleEipAssociation:\n type: alicloud:ecs:EipAssociation\n name: example\n properties:\n allocationId: ${exampleEipAddress.id}\n instanceId: ${exampleInstance.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEIP Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eipAssociation:EipAssociation example \u003callocation_id\u003e:\u003cinstance_id\u003e\n```\n\n",
+ "description": "Provides a EIP Association resource.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-dotnet=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-go=\"`ecs.EipAssociation`\" pulumi-lang-python=\"`ecs.EipAssociation`\" pulumi-lang-yaml=\"`alicloud.ecs.EipAssociation`\" pulumi-lang-java=\"`alicloud.ecs.EipAssociation`\"\u003e`alicloud.ecs.EipAssociation`\u003c/span\u003e is useful in scenarios where EIPs are either\n pre-existing or distributed to customers or users and therefore cannot be changed.\n\n\u003e **NOTE:** From version 1.7.1, the resource support to associate EIP to SLB Instance or Nat Gateway.\n\n\u003e **NOTE:** One EIP can only be associated with ECS or SLB instance which in the VPC.\n\nFor information about EIP Association and how to use it, see [What is Association](https://www.alibabacloud.com/help/en/vpc/developer-reference/api-vpc-2016-04-28-associateeipaddress).\n\n\u003e **NOTE:** Available since v1.117.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst example = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst exampleGetInstanceTypes = example.then(example =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: example.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst exampleGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst exampleNetwork = new alicloud.vpc.Network(\"example\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst exampleSwitch = new alicloud.vpc.Switch(\"example\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: exampleNetwork.id,\n zoneId: example.then(example =\u003e example.zones?.[0]?.id),\n});\nconst exampleSecurityGroup = new alicloud.ecs.SecurityGroup(\"example\", {\n name: name,\n vpcId: exampleNetwork.id,\n});\nconst exampleInstance = new alicloud.ecs.Instance(\"example\", {\n availabilityZone: example.then(example =\u003e example.zones?.[0]?.id),\n instanceName: name,\n imageId: exampleGetImages.then(exampleGetImages =\u003e exampleGetImages.images?.[0]?.id),\n instanceType: exampleGetInstanceTypes.then(exampleGetInstanceTypes =\u003e exampleGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [exampleSecurityGroup.id],\n vswitchId: exampleSwitch.id,\n tags: {\n Created: \"TF\",\n For: \"example\",\n },\n});\nconst exampleEipAddress = new alicloud.ecs.EipAddress(\"example\", {addressName: name});\nconst exampleEipAssociation = new alicloud.ecs.EipAssociation(\"example\", {\n allocationId: exampleEipAddress.id,\n instanceId: exampleInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\nexample = alicloud.get_zones(available_resource_creation=\"Instance\")\nexample_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=example.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\nexample_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\nexample_network = alicloud.vpc.Network(\"example\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\nexample_switch = alicloud.vpc.Switch(\"example\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=example_network.id,\n zone_id=example.zones[0].id)\nexample_security_group = alicloud.ecs.SecurityGroup(\"example\",\n name=name,\n vpc_id=example_network.id)\nexample_instance = alicloud.ecs.Instance(\"example\",\n availability_zone=example.zones[0].id,\n instance_name=name,\n image_id=example_get_images.images[0].id,\n instance_type=example_get_instance_types.instance_types[0].id,\n security_groups=[example_security_group.id],\n vswitch_id=example_switch.id,\n tags={\n \"Created\": \"TF\",\n \"For\": \"example\",\n })\nexample_eip_address = alicloud.ecs.EipAddress(\"example\", address_name=name)\nexample_eip_association = alicloud.ecs.EipAssociation(\"example\",\n allocation_id=example_eip_address.id,\n instance_id=example_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var example = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var exampleGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var exampleGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var exampleNetwork = new AliCloud.Vpc.Network(\"example\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var exampleSwitch = new AliCloud.Vpc.Switch(\"example\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = exampleNetwork.Id,\n ZoneId = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var exampleSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"example\", new()\n {\n Name = name,\n VpcId = exampleNetwork.Id,\n });\n\n var exampleInstance = new AliCloud.Ecs.Instance(\"example\", new()\n {\n AvailabilityZone = example.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = exampleGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = exampleGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n exampleSecurityGroup.Id,\n },\n VswitchId = exampleSwitch.Id,\n Tags = \n {\n { \"Created\", \"TF\" },\n { \"For\", \"example\" },\n },\n });\n\n var exampleEipAddress = new AliCloud.Ecs.EipAddress(\"example\", new()\n {\n AddressName = name,\n });\n\n var exampleEipAssociation = new AliCloud.Ecs.EipAssociation(\"example\", new()\n {\n AllocationId = exampleEipAddress.Id,\n InstanceId = exampleInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\texample, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(example.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetwork, err := vpc.NewNetwork(ctx, \"example\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSwitch, err := vpc.NewSwitch(ctx, \"example\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t\tZoneId: pulumi.String(example.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"example\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tVpcId: exampleNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleInstance, err := ecs.NewInstance(ctx, \"example\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(example.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(exampleGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(exampleGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\texampleSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: exampleSwitch.ID(),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Created\": pulumi.String(\"TF\"),\n\t\t\t\t\"For\": pulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleEipAddress, err := ecs.NewEipAddress(ctx, \"example\", \u0026ecs.EipAddressArgs{\n\t\t\tAddressName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewEipAssociation(ctx, \"example\", \u0026ecs.EipAssociationArgs{\n\t\t\tAllocationId: exampleEipAddress.ID(),\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.EipAddress;\nimport com.pulumi.alicloud.ecs.EipAddressArgs;\nimport com.pulumi.alicloud.ecs.EipAssociation;\nimport com.pulumi.alicloud.ecs.EipAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var example = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var exampleGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n final var exampleGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var exampleNetwork = new Network(\"exampleNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var exampleSwitch = new Switch(\"exampleSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(exampleNetwork.id())\n .zoneId(example.zones()[0].id())\n .build());\n\n var exampleSecurityGroup = new SecurityGroup(\"exampleSecurityGroup\", SecurityGroupArgs.builder()\n .name(name)\n .vpcId(exampleNetwork.id())\n .build());\n\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .availabilityZone(example.zones()[0].id())\n .instanceName(name)\n .imageId(exampleGetImages.images()[0].id())\n .instanceType(exampleGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(exampleSecurityGroup.id())\n .vswitchId(exampleSwitch.id())\n .tags(Map.ofEntries(\n Map.entry(\"Created\", \"TF\"),\n Map.entry(\"For\", \"example\")\n ))\n .build());\n\n var exampleEipAddress = new EipAddress(\"exampleEipAddress\", EipAddressArgs.builder()\n .addressName(name)\n .build());\n\n var exampleEipAssociation = new EipAssociation(\"exampleEipAssociation\", EipAssociationArgs.builder()\n .allocationId(exampleEipAddress.id())\n .instanceId(exampleInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n exampleNetwork:\n type: alicloud:vpc:Network\n name: example\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n exampleSwitch:\n type: alicloud:vpc:Switch\n name: example\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${exampleNetwork.id}\n zoneId: ${example.zones[0].id}\n exampleSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: example\n properties:\n name: ${name}\n vpcId: ${exampleNetwork.id}\n exampleInstance:\n type: alicloud:ecs:Instance\n name: example\n properties:\n availabilityZone: ${example.zones[0].id}\n instanceName: ${name}\n imageId: ${exampleGetImages.images[0].id}\n instanceType: ${exampleGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${exampleSecurityGroup.id}\n vswitchId: ${exampleSwitch.id}\n tags:\n Created: TF\n For: example\n exampleEipAddress:\n type: alicloud:ecs:EipAddress\n name: example\n properties:\n addressName: ${name}\n exampleEipAssociation:\n type: alicloud:ecs:EipAssociation\n name: example\n properties:\n allocationId: ${exampleEipAddress.id}\n instanceId: ${exampleInstance.id}\nvariables:\n example:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n exampleGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${example.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n exampleGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEIP Association can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eipAssociation:EipAssociation example \u003callocation_id\u003e:\u003cinstance_id\u003e\n```\n\n",
"properties": {
"allocationId": {
"type": "string",
@@ -157748,7 +160377,7 @@
}
},
"alicloud:ecs/eipSegmentAddress:EipSegmentAddress": {
- "description": "Provides a EIP Segment Address resource.\n\nFor information about EIP Segment Address and how to use it, see [What is Segment Address](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/allocateeipsegmentaddress).\n\n\u003e **NOTE:** Available since v1.207.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ecs.EipSegmentAddress(\"default\", {\n eipMask: \"28\",\n bandwidth: \"5\",\n isp: \"BGP\",\n internetChargeType: \"PayByBandwidth\",\n netmode: \"public\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecs.EipSegmentAddress(\"default\",\n eip_mask=\"28\",\n bandwidth=\"5\",\n isp=\"BGP\",\n internet_charge_type=\"PayByBandwidth\",\n netmode=\"public\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ecs.EipSegmentAddress(\"default\", new()\n {\n EipMask = \"28\",\n Bandwidth = \"5\",\n Isp = \"BGP\",\n InternetChargeType = \"PayByBandwidth\",\n Netmode = \"public\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEipSegmentAddress(ctx, \"default\", \u0026ecs.EipSegmentAddressArgs{\n\t\t\tEipMask: pulumi.String(\"28\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EipSegmentAddress;\nimport com.pulumi.alicloud.ecs.EipSegmentAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new EipSegmentAddress(\"default\", EipSegmentAddressArgs.builder()\n .eipMask(\"28\")\n .bandwidth(\"5\")\n .isp(\"BGP\")\n .internetChargeType(\"PayByBandwidth\")\n .netmode(\"public\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ecs:EipSegmentAddress\n properties:\n eipMask: '28'\n bandwidth: '5'\n isp: BGP\n internetChargeType: PayByBandwidth\n netmode: public\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEIP Segment Address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eipSegmentAddress:EipSegmentAddress example \u003cid\u003e\n```\n\n",
+ "description": "Provides a EIP Segment Address resource.\n\nFor information about EIP Segment Address and how to use it, see [What is Segment Address](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/allocateeipsegmentaddress).\n\n\u003e **NOTE:** Available since v1.207.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.ecs.EipSegmentAddress(\"default\", {\n eipMask: \"28\",\n bandwidth: \"5\",\n isp: \"BGP\",\n internetChargeType: \"PayByBandwidth\",\n netmode: \"public\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.ecs.EipSegmentAddress(\"default\",\n eip_mask=\"28\",\n bandwidth=\"5\",\n isp=\"BGP\",\n internet_charge_type=\"PayByBandwidth\",\n netmode=\"public\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Ecs.EipSegmentAddress(\"default\", new()\n {\n EipMask = \"28\",\n Bandwidth = \"5\",\n Isp = \"BGP\",\n InternetChargeType = \"PayByBandwidth\",\n Netmode = \"public\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := ecs.NewEipSegmentAddress(ctx, \"default\", \u0026ecs.EipSegmentAddressArgs{\n\t\t\tEipMask: pulumi.String(\"28\"),\n\t\t\tBandwidth: pulumi.String(\"5\"),\n\t\t\tIsp: pulumi.String(\"BGP\"),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tNetmode: pulumi.String(\"public\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EipSegmentAddress;\nimport com.pulumi.alicloud.ecs.EipSegmentAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new EipSegmentAddress(\"default\", EipSegmentAddressArgs.builder()\n .eipMask(\"28\")\n .bandwidth(\"5\")\n .isp(\"BGP\")\n .internetChargeType(\"PayByBandwidth\")\n .netmode(\"public\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:ecs:EipSegmentAddress\n properties:\n eipMask: '28'\n bandwidth: '5'\n isp: BGP\n internetChargeType: PayByBandwidth\n netmode: public\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEIP Segment Address can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/eipSegmentAddress:EipSegmentAddress example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "string",
@@ -157881,7 +160510,7 @@
}
},
"alicloud:ecs/elasticityAssurance:ElasticityAssurance": {
- "description": "Provides a ECS Elasticity Assurance resource.\n\n\n\nFor information about ECS Elasticity Assurance and how to use it, see [What is Elasticity Assurance](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createelasticityassurance).\n\n\u003e **NOTE:** Available since v1.196.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.c6\",\n});\nconst defaultElasticityAssurance = new alicloud.ecs.ElasticityAssurance(\"default\", {\n instanceAmount: 1,\n description: \"before\",\n zoneIds: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0])],\n privatePoolOptionsName: name,\n period: 1,\n privatePoolOptionsMatchCriteria: \"Open\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n periodUnit: \"Month\",\n assuranceTimes: \"Unlimited\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.c6\")\ndefault_elasticity_assurance = alicloud.ecs.ElasticityAssurance(\"default\",\n instance_amount=1,\n description=\"before\",\n zone_ids=[default_get_instance_types.instance_types[0].availability_zones[0]],\n private_pool_options_name=name,\n period=1,\n private_pool_options_match_criteria=\"Open\",\n instance_type=default_get_instance_types.instance_types[0].id,\n period_unit=\"Month\",\n assurance_times=\"Unlimited\",\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.c6\",\n });\n\n var defaultElasticityAssurance = new AliCloud.Ecs.ElasticityAssurance(\"default\", new()\n {\n InstanceAmount = 1,\n Description = \"before\",\n ZoneIds = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n },\n PrivatePoolOptionsName = name,\n Period = 1,\n PrivatePoolOptionsMatchCriteria = \"Open\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n PeriodUnit = \"Month\",\n AssuranceTimes = \"Unlimited\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.c6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewElasticityAssurance(ctx, \"default\", \u0026ecs.ElasticityAssuranceArgs{\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tDescription: pulumi.String(\"before\"),\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\n\t\t\t},\n\t\t\tPrivatePoolOptionsName: pulumi.String(name),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tPrivatePoolOptionsMatchCriteria: pulumi.String(\"Open\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tPeriodUnit: pulumi.String(\"Month\"),\n\t\t\tAssuranceTimes: pulumi.String(\"Unlimited\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.ElasticityAssurance;\nimport com.pulumi.alicloud.ecs.ElasticityAssuranceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.c6\")\n .build());\n\n var defaultElasticityAssurance = new ElasticityAssurance(\"defaultElasticityAssurance\", ElasticityAssuranceArgs.builder()\n .instanceAmount(1)\n .description(\"before\")\n .zoneIds(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .privatePoolOptionsName(name)\n .period(1)\n .privatePoolOptionsMatchCriteria(\"Open\")\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .periodUnit(\"Month\")\n .assuranceTimes(\"Unlimited\")\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultElasticityAssurance:\n type: alicloud:ecs:ElasticityAssurance\n name: default\n properties:\n instanceAmount: 1\n description: before\n zoneIds:\n - ${defaultGetInstanceTypes.instanceTypes[0].availabilityZones[0]}\n privatePoolOptionsName: ${name}\n period: 1\n privatePoolOptionsMatchCriteria: Open\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n periodUnit: Month\n assuranceTimes: Unlimited\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.c6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Elasticity Assurance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/elasticityAssurance:ElasticityAssurance example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Elasticity Assurance resource.\n\n\n\nFor information about ECS Elasticity Assurance and how to use it, see [What is Elasticity Assurance](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createelasticityassurance).\n\n\u003e **NOTE:** Available since v1.196.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({\n status: \"OK\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.c6\",\n});\nconst defaultElasticityAssurance = new alicloud.ecs.ElasticityAssurance(\"default\", {\n instanceAmount: 1,\n description: \"before\",\n zoneIds: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0])],\n privatePoolOptionsName: name,\n period: 1,\n privatePoolOptionsMatchCriteria: \"Open\",\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n periodUnit: \"Month\",\n assuranceTimes: \"Unlimited\",\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[0]),\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups(status=\"OK\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.c6\")\ndefault_elasticity_assurance = alicloud.ecs.ElasticityAssurance(\"default\",\n instance_amount=1,\n description=\"before\",\n zone_ids=[default_get_instance_types.instance_types[0].availability_zones[0]],\n private_pool_options_name=name,\n period=1,\n private_pool_options_match_criteria=\"Open\",\n instance_type=default_get_instance_types.instance_types[0].id,\n period_unit=\"Month\",\n assurance_times=\"Unlimited\",\n resource_group_id=default.ids[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()\n {\n Status = \"OK\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.c6\",\n });\n\n var defaultElasticityAssurance = new AliCloud.Ecs.ElasticityAssurance(\"default\", new()\n {\n InstanceAmount = 1,\n Description = \"before\",\n ZoneIds = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n },\n PrivatePoolOptionsName = name,\n Period = 1,\n PrivatePoolOptionsMatchCriteria = \"Open\",\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n PeriodUnit = \"Month\",\n AssuranceTimes = \"Unlimited\",\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0])),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{\n\t\t\tStatus: pulumi.StringRef(\"OK\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.c6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewElasticityAssurance(ctx, \"default\", \u0026ecs.ElasticityAssuranceArgs{\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tDescription: pulumi.String(\"before\"),\n\t\t\tZoneIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\n\t\t\t},\n\t\t\tPrivatePoolOptionsName: pulumi.String(name),\n\t\t\tPeriod: pulumi.Int(1),\n\t\t\tPrivatePoolOptionsMatchCriteria: pulumi.String(\"Open\"),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tPeriodUnit: pulumi.String(\"Month\"),\n\t\t\tAssuranceTimes: pulumi.String(\"Unlimited\"),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.ElasticityAssurance;\nimport com.pulumi.alicloud.ecs.ElasticityAssuranceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .status(\"OK\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.c6\")\n .build());\n\n var defaultElasticityAssurance = new ElasticityAssurance(\"defaultElasticityAssurance\", ElasticityAssuranceArgs.builder()\n .instanceAmount(1)\n .description(\"before\")\n .zoneIds(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .privatePoolOptionsName(name)\n .period(1)\n .privatePoolOptionsMatchCriteria(\"Open\")\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .periodUnit(\"Month\")\n .assuranceTimes(\"Unlimited\")\n .resourceGroupId(default_.ids()[0])\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultElasticityAssurance:\n type: alicloud:ecs:ElasticityAssurance\n name: default\n properties:\n instanceAmount: 1\n description: before\n zoneIds:\n - ${defaultGetInstanceTypes.instanceTypes[0].availabilityZones[0]}\n privatePoolOptionsName: ${name}\n period: 1\n privatePoolOptionsMatchCriteria: Open\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n periodUnit: Month\n assuranceTimes: Unlimited\n resourceGroupId: ${default.ids[0]}\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments:\n status: OK\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.c6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Elasticity Assurance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/elasticityAssurance:ElasticityAssurance example \u003cid\u003e\n```\n\n",
"properties": {
"assuranceTimes": {
"type": "string",
@@ -158183,7 +160812,7 @@
}
},
"alicloud:ecs/hpcCluster:HpcCluster": {
- "description": "Provides a ECS Hpc Cluster resource.\n\nFor information about ECS Hpc Cluster and how to use it, see [What is Hpc Cluster](https://www.alibabacloud.com/help/en/doc-detail/109138.htm).\n\n\u003e **NOTE:** Available in v1.116.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.HpcCluster(\"example\", {\n name: \"tf-testAcc\",\n description: \"For Terraform Test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.HpcCluster(\"example\",\n name=\"tf-testAcc\",\n description=\"For Terraform Test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.HpcCluster(\"example\", new()\n {\n Name = \"tf-testAcc\",\n Description = \"For Terraform Test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewHpcCluster(ctx, \"example\", \u0026ecs.HpcClusterArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.HpcCluster;\nimport com.pulumi.alicloud.ecs.HpcClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new HpcCluster(\"example\", HpcClusterArgs.builder()\n .name(\"tf-testAcc\")\n .description(\"For Terraform Test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:HpcCluster\n properties:\n name: tf-testAcc\n description: For Terraform Test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Hpc Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/hpcCluster:HpcCluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Hpc Cluster resource.\n\nFor information about ECS Hpc Cluster and how to use it, see [What is Hpc Cluster](https://www.alibabacloud.com/help/en/doc-detail/109138.htm).\n\n\u003e **NOTE:** Available in v1.116.0+.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.ecs.HpcCluster(\"example\", {\n name: \"tf-testAcc\",\n description: \"For Terraform Test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.ecs.HpcCluster(\"example\",\n name=\"tf-testAcc\",\n description=\"For Terraform Test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Ecs.HpcCluster(\"example\", new()\n {\n Name = \"tf-testAcc\",\n Description = \"For Terraform Test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewHpcCluster(ctx, \"example\", \u0026ecs.HpcClusterArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc\"),\n\t\t\tDescription: pulumi.String(\"For Terraform Test\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.HpcCluster;\nimport com.pulumi.alicloud.ecs.HpcClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new HpcCluster(\"example\", HpcClusterArgs.builder()\n .name(\"tf-testAcc\")\n .description(\"For Terraform Test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:ecs:HpcCluster\n properties:\n name: tf-testAcc\n description: For Terraform Test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Hpc Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/hpcCluster:HpcCluster example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -158223,7 +160852,7 @@
}
},
"alicloud:ecs/image:Image": {
- "description": "Provides a ECS Image resource.\n\n\u003e **NOTE:** If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.\n\n\u003e **NOTE:** If you want to create a custom image based on the system disk of your ECS instance, you can specify one of the system disk snapshots (SnapshotId) to create a custom image. However, the specified snapshot cannot be created on or before July 15, 2013.\n\n\u003e **NOTE:** If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.\n\nFor information about ECS Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-createimage).\n\n\u003e **NOTE:** Available since v1.64.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n architecture: \"x86_64\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n tags: {\n FinanceDept: \"FinanceDeptJoshua\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\",\n architecture=\"x86_64\",\n resource_group_id=default_get_resource_groups.ids[0],\n tags={\n \"FinanceDept\": \"FinanceDeptJoshua\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n Architecture = \"x86_64\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n Tags = \n {\n { \"FinanceDept\", \"FinanceDeptJoshua\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tArchitecture: pulumi.String(\"x86_64\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"FinanceDept\": pulumi.String(\"FinanceDeptJoshua\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .architecture(\"x86_64\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .tags(Map.of(\"FinanceDept\", \"FinanceDeptJoshua\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n architecture: x86_64\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n tags:\n FinanceDept: FinanceDeptJoshua\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/image:Image example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Image resource.\n\n\u003e **NOTE:** If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.\n\n\u003e **NOTE:** If you want to create a custom image based on the system disk of your ECS instance, you can specify one of the system disk snapshots (SnapshotId) to create a custom image. However, the specified snapshot cannot be created on or before July 15, 2013.\n\n\u003e **NOTE:** If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.\n\nFor information about ECS Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-createimage).\n\n\u003e **NOTE:** Available since v1.64.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultGetResourceGroups = alicloud.resourcemanager.getResourceGroups({});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n architecture: \"x86_64\",\n resourceGroupId: defaultGetResourceGroups.then(defaultGetResourceGroups =\u003e defaultGetResourceGroups.ids?.[0]),\n tags: {\n FinanceDept: \"FinanceDeptJoshua\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_get_resource_groups = alicloud.resourcemanager.get_resource_groups()\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\",\n architecture=\"x86_64\",\n resource_group_id=default_get_resource_groups.ids[0],\n tags={\n \"FinanceDept\": \"FinanceDeptJoshua\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultGetResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n Architecture = \"x86_64\",\n ResourceGroupId = defaultGetResourceGroups.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[0]),\n Tags = \n {\n { \"FinanceDept\", \"FinanceDeptJoshua\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tArchitecture: pulumi.String(\"x86_64\"),\n\t\t\tResourceGroupId: pulumi.String(defaultGetResourceGroups.Ids[0]),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"FinanceDept\": pulumi.String(\"FinanceDeptJoshua\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n final var defaultGetResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .architecture(\"x86_64\")\n .resourceGroupId(defaultGetResourceGroups.ids()[0])\n .tags(Map.of(\"FinanceDept\", \"FinanceDeptJoshua\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n architecture: x86_64\n resourceGroupId: ${defaultGetResourceGroups.ids[0]}\n tags:\n FinanceDept: FinanceDeptJoshua\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n defaultGetResourceGroups:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/image:Image example \u003cid\u003e\n```\n\n",
"properties": {
"architecture": {
"type": "string",
@@ -158508,7 +161137,7 @@
}
},
"alicloud:ecs/imageCopy:ImageCopy": {
- "description": "Copies a custom image from one region to another. You can use copied images to perform operations in the target region, such as creating instances (RunInstances) and replacing system disks (ReplaceSystemDisk).\n\n\u003e **NOTE:** You can only copy the custom image when it is in the Available state.\n\n\u003e **NOTE:** You can only copy the image belonging to your Alibaba Cloud account. Images cannot be copied from one account to another.\n\n\u003e **NOTE:** If the copying is not completed, you cannot call DeleteImage to delete the image but you can call CancelCopyImage to cancel the copying.\n\n\u003e **NOTE:** Available since v1.66.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: \"terraform-example\",\n description: \"terraform-example\",\n});\nconst defaultImageCopy = new alicloud.ecs.ImageCopy(\"default\", {\n sourceImageId: defaultImage.id,\n sourceRegionId: \"cn-hangzhou\",\n imageName: \"terraform-example\",\n description: \"terraform-example\",\n tags: {\n FinanceDept: \"FinanceDeptJoshua\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=\"terraform-example\",\n description=\"terraform-example\")\ndefault_image_copy = alicloud.ecs.ImageCopy(\"default\",\n source_image_id=default_image.id,\n source_region_id=\"cn-hangzhou\",\n image_name=\"terraform-example\",\n description=\"terraform-example\",\n tags={\n \"FinanceDept\": \"FinanceDeptJoshua\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = \"terraform-example\",\n Description = \"terraform-example\",\n });\n\n var defaultImageCopy = new AliCloud.Ecs.ImageCopy(\"default\", new()\n {\n SourceImageId = defaultImage.Id,\n SourceRegionId = \"cn-hangzhou\",\n ImageName = \"terraform-example\",\n Description = \"terraform-example\",\n Tags = \n {\n { \"FinanceDept\", \"FinanceDeptJoshua\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageCopy(ctx, \"default\", \u0026ecs.ImageCopyArgs{\n\t\t\tSourceImageId: defaultImage.ID(),\n\t\t\tSourceRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"FinanceDept\": pulumi.String(\"FinanceDeptJoshua\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.ecs.ImageCopy;\nimport com.pulumi.alicloud.ecs.ImageCopyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(\"terraform-example\")\n .description(\"terraform-example\")\n .build());\n\n var defaultImageCopy = new ImageCopy(\"defaultImageCopy\", ImageCopyArgs.builder()\n .sourceImageId(defaultImage.id())\n .sourceRegionId(\"cn-hangzhou\")\n .imageName(\"terraform-example\")\n .description(\"terraform-example\")\n .tags(Map.of(\"FinanceDept\", \"FinanceDeptJoshua\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example\n description: terraform-example\n defaultImageCopy:\n type: alicloud:ecs:ImageCopy\n name: default\n properties:\n sourceImageId: ${defaultImage.id}\n sourceRegionId: cn-hangzhou\n imageName: terraform-example\n description: terraform-example\n tags:\n FinanceDept: FinanceDeptJoshua\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference0\n \n The following attributes are exported:\n \n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e - ID of the image.\n\n## Import\n\nimage can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageCopy:ImageCopy default m-uf66871ape***yg1q***\n```\n\n",
+ "description": "Copies a custom image from one region to another. You can use copied images to perform operations in the target region, such as creating instances (RunInstances) and replacing system disks (ReplaceSystemDisk).\n\n\u003e **NOTE:** You can only copy the custom image when it is in the Available state.\n\n\u003e **NOTE:** You can only copy the image belonging to your Alibaba Cloud account. Images cannot be copied from one account to another.\n\n\u003e **NOTE:** If the copying is not completed, you cannot call DeleteImage to delete the image but you can call CancelCopyImage to cancel the copying.\n\n\u003e **NOTE:** Available since v1.66.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: \"terraform-example\",\n description: \"terraform-example\",\n});\nconst defaultImageCopy = new alicloud.ecs.ImageCopy(\"default\", {\n sourceImageId: defaultImage.id,\n sourceRegionId: \"cn-hangzhou\",\n imageName: \"terraform-example\",\n description: \"terraform-example\",\n tags: {\n FinanceDept: \"FinanceDeptJoshua\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=\"terraform-example\",\n description=\"terraform-example\")\ndefault_image_copy = alicloud.ecs.ImageCopy(\"default\",\n source_image_id=default_image.id,\n source_region_id=\"cn-hangzhou\",\n image_name=\"terraform-example\",\n description=\"terraform-example\",\n tags={\n \"FinanceDept\": \"FinanceDeptJoshua\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = \"terraform-example\",\n Description = \"terraform-example\",\n });\n\n var defaultImageCopy = new AliCloud.Ecs.ImageCopy(\"default\", new()\n {\n SourceImageId = defaultImage.Id,\n SourceRegionId = \"cn-hangzhou\",\n ImageName = \"terraform-example\",\n Description = \"terraform-example\",\n Tags = \n {\n { \"FinanceDept\", \"FinanceDeptJoshua\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageCopy(ctx, \"default\", \u0026ecs.ImageCopyArgs{\n\t\t\tSourceImageId: defaultImage.ID(),\n\t\t\tSourceRegionId: pulumi.String(\"cn-hangzhou\"),\n\t\t\tImageName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"FinanceDept\": pulumi.String(\"FinanceDeptJoshua\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.ecs.ImageCopy;\nimport com.pulumi.alicloud.ecs.ImageCopyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(\"terraform-example\")\n .description(\"terraform-example\")\n .build());\n\n var defaultImageCopy = new ImageCopy(\"defaultImageCopy\", ImageCopyArgs.builder()\n .sourceImageId(defaultImage.id())\n .sourceRegionId(\"cn-hangzhou\")\n .imageName(\"terraform-example\")\n .description(\"terraform-example\")\n .tags(Map.of(\"FinanceDept\", \"FinanceDeptJoshua\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example\n description: terraform-example\n defaultImageCopy:\n type: alicloud:ecs:ImageCopy\n name: default\n properties:\n sourceImageId: ${defaultImage.id}\n sourceRegionId: cn-hangzhou\n imageName: terraform-example\n description: terraform-example\n tags:\n FinanceDept: FinanceDeptJoshua\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Attributes Reference0\n \n The following attributes are exported:\n \n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e - ID of the image.\n\n## Import\n\nimage can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageCopy:ImageCopy default m-uf66871ape***yg1q***\n```\n\n",
"properties": {
"deleteAutoSnapshot": {
"type": "boolean"
@@ -158665,7 +161294,7 @@
}
},
"alicloud:ecs/imageExport:ImageExport": {
- "description": "Export a custom image to the OSS bucket in the same region as the custom image.\n\n\u003e **NOTE:** If you create an ECS instance using a mirror image and create a system disk snapshot again, exporting a custom image created from the system disk snapshot is not supported.\n\n\u003e **NOTE:** Support for exporting custom images that include data disk snapshot information in the image. The number of data disks cannot exceed 4 and the maximum capacity of a single data disk cannot exceed 500 GiB.\n\n\u003e **NOTE:** Before exporting the image, you must authorize the cloud server ECS official service account to write OSS permissions through RAM.\n\n\u003e **NOTE:** Available since v1.68.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: `example-value-${defaultInteger.result}`});\nconst defaultImageExport = new alicloud.ecs.ImageExport(\"default\", {\n imageId: defaultImage.id,\n ossBucket: defaultBucket.id,\n ossPrefix: \"ecsExport\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=f\"example-value-{default_integer['result']}\")\ndefault_image_export = alicloud.ecs.ImageExport(\"default\",\n image_id=default_image.id,\n oss_bucket=default_bucket.id,\n oss_prefix=\"ecsExport\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"example-value-{defaultInteger.Result}\",\n });\n\n var defaultImageExport = new AliCloud.Ecs.ImageExport(\"default\", new()\n {\n ImageId = defaultImage.Id,\n OssBucket = defaultBucket.Id,\n OssPrefix = \"ecsExport\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"example-value-%v\", defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageExport(ctx, \"default\", \u0026ecs.ImageExportArgs{\n\t\t\tImageId: defaultImage.ID(),\n\t\t\tOssBucket: defaultBucket.ID(),\n\t\t\tOssPrefix: pulumi.String(\"ecsExport\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.ecs.ImageExport;\nimport com.pulumi.alicloud.ecs.ImageExportArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"example-value-%s\", defaultInteger.result()))\n .build());\n\n var defaultImageExport = new ImageExport(\"defaultImageExport\", ImageExportArgs.builder()\n .imageId(defaultImage.id())\n .ossBucket(defaultBucket.id())\n .ossPrefix(\"ecsExport\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: example-value-${defaultInteger.result}\n defaultImageExport:\n type: alicloud:ecs:ImageExport\n name: default\n properties:\n imageId: ${defaultImage.id}\n ossBucket: ${defaultBucket.id}\n ossPrefix: ecsExport\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Export a custom image to the OSS bucket in the same region as the custom image.\n\n\u003e **NOTE:** If you create an ECS instance using a mirror image and create a system disk snapshot again, exporting a custom image created from the system disk snapshot is not supported.\n\n\u003e **NOTE:** Support for exporting custom images that include data disk snapshot information in the image. The number of data disks cannot exceed 4 and the maximum capacity of a single data disk cannot exceed 500 GiB.\n\n\u003e **NOTE:** Before exporting the image, you must authorize the cloud server ECS official service account to write OSS permissions through RAM.\n\n\u003e **NOTE:** Available since v1.68.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n max: 99999,\n min: 10000,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: `example-value-${defaultInteger.result}`});\nconst defaultImageExport = new alicloud.ecs.ImageExport(\"default\", {\n imageId: defaultImage.id,\n ossBucket: defaultBucket.id,\n ossPrefix: \"ecsExport\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_integer = random.index.Integer(\"default\",\n max=99999,\n min=10000)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=f\"example-value-{default_integer['result']}\")\ndefault_image_export = alicloud.ecs.ImageExport(\"default\",\n image_id=default_image.id,\n oss_bucket=default_bucket.id,\n oss_prefix=\"ecsExport\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Max = 99999,\n Min = 10000,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"example-value-{defaultInteger.Result}\",\n });\n\n var defaultImageExport = new AliCloud.Ecs.ImageExport(\"default\", new()\n {\n ImageId = defaultImage.Id,\n OssBucket = defaultBucket.Id,\n OssPrefix = \"ecsExport\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMax: 99999,\n\t\t\tMin: 10000,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"example-value-%v\", defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageExport(ctx, \"default\", \u0026ecs.ImageExportArgs{\n\t\t\tImageId: defaultImage.ID(),\n\t\t\tOssBucket: defaultBucket.ID(),\n\t\t\tOssPrefix: pulumi.String(\"ecsExport\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.ecs.ImageExport;\nimport com.pulumi.alicloud.ecs.ImageExportArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .max(99999)\n .min(10000)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"example-value-%s\", defaultInteger.result()))\n .build());\n\n var defaultImageExport = new ImageExport(\"defaultImageExport\", ImageExportArgs.builder()\n .imageId(defaultImage.id())\n .ossBucket(defaultBucket.id())\n .ossPrefix(\"ecsExport\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n max: 99999\n min: 10000\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: example-value-${defaultInteger.result}\n defaultImageExport:\n type: alicloud:ecs:ImageExport\n name: default\n properties:\n imageId: ${defaultImage.id}\n ossBucket: ${defaultBucket.id}\n ossPrefix: ecsExport\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"imageId": {
"type": "string",
@@ -158728,7 +161357,7 @@
}
},
"alicloud:ecs/imageImport:ImageImport": {
- "description": "Provides a ECS Image Import resource.\n\nFor information about ECS Image Import and how to use it, see [What is Image Import](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-importimage).\n\n\u003e **NOTE:** Available since v1.69.0.\n\n\u003e **NOTE:** You must upload the image file to the object storage OSS in advance.\n\n\u003e **NOTE:** The region where the image is imported must be the same region as the OSS bucket where the image file is uploaded.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-image-import-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: `${name}-${_default.result}`});\nconst defaultBucketObject = new alicloud.oss.BucketObject(\"default\", {\n bucket: defaultBucket.id,\n key: \"fc/hello.zip\",\n content: ` # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\\\"hello world\\\\\"\n return 'hello world'\n`,\n});\nconst defaultImageImport = new alicloud.ecs.ImageImport(\"default\", {\n architecture: \"x86_64\",\n osType: \"linux\",\n platform: \"Ubuntu\",\n licenseType: \"Auto\",\n imageName: name,\n description: name,\n diskDeviceMappings: [{\n ossBucket: defaultBucket.id,\n ossObject: defaultBucketObject.id,\n diskImageSize: 5,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-image-import-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=f\"{name}-{default['result']}\")\ndefault_bucket_object = alicloud.oss.BucketObject(\"default\",\n bucket=default_bucket.id,\n key=\"fc/hello.zip\",\n content=\"\"\" # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n\"\"\")\ndefault_image_import = alicloud.ecs.ImageImport(\"default\",\n architecture=\"x86_64\",\n os_type=\"linux\",\n platform=\"Ubuntu\",\n license_type=\"Auto\",\n image_name=name,\n description=name,\n disk_device_mappings=[{\n \"oss_bucket\": default_bucket.id,\n \"oss_object\": default_bucket_object.id,\n \"disk_image_size\": 5,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-image-import-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"{name}-{@default.Result}\",\n });\n\n var defaultBucketObject = new AliCloud.Oss.BucketObject(\"default\", new()\n {\n Bucket = defaultBucket.Id,\n Key = \"fc/hello.zip\",\n Content = @\" # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"\"hello world\\\"\"\n return 'hello world'\n\",\n });\n\n var defaultImageImport = new AliCloud.Ecs.ImageImport(\"default\", new()\n {\n Architecture = \"x86_64\",\n OsType = \"linux\",\n Platform = \"Ubuntu\",\n LicenseType = \"Auto\",\n ImageName = name,\n Description = name,\n DiskDeviceMappings = new[]\n {\n new AliCloud.Ecs.Inputs.ImageImportDiskDeviceMappingArgs\n {\n OssBucket = defaultBucket.Id,\n OssObject = defaultBucketObject.Id,\n DiskImageSize = 5,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-image-import-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucketObject, err := oss.NewBucketObject(ctx, \"default\", \u0026oss.BucketObjectArgs{\n\t\t\tBucket: defaultBucket.ID(),\n\t\t\tKey: pulumi.String(\"fc/hello.zip\"),\n\t\t\tContent: pulumi.String(\" # -*- coding: utf-8 -*-\\n def handler(event, context):\\n print \\\\\\\"hello world\\\\\\\"\\n return 'hello world'\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageImport(ctx, \"default\", \u0026ecs.ImageImportArgs{\n\t\t\tArchitecture: pulumi.String(\"x86_64\"),\n\t\t\tOsType: pulumi.String(\"linux\"),\n\t\t\tPlatform: pulumi.String(\"Ubuntu\"),\n\t\t\tLicenseType: pulumi.String(\"Auto\"),\n\t\t\tImageName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDiskDeviceMappings: ecs.ImageImportDiskDeviceMappingArray{\n\t\t\t\t\u0026ecs.ImageImportDiskDeviceMappingArgs{\n\t\t\t\t\tOssBucket: defaultBucket.ID(),\n\t\t\t\t\tOssObject: defaultBucketObject.ID(),\n\t\t\t\t\tDiskImageSize: pulumi.Int(5),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketObject;\nimport com.pulumi.alicloud.oss.BucketObjectArgs;\nimport com.pulumi.alicloud.ecs.ImageImport;\nimport com.pulumi.alicloud.ecs.ImageImportArgs;\nimport com.pulumi.alicloud.ecs.inputs.ImageImportDiskDeviceMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-image-import-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultBucketObject = new BucketObject(\"defaultBucketObject\", BucketObjectArgs.builder()\n .bucket(defaultBucket.id())\n .key(\"fc/hello.zip\")\n .content(\"\"\"\n # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n \"\"\")\n .build());\n\n var defaultImageImport = new ImageImport(\"defaultImageImport\", ImageImportArgs.builder()\n .architecture(\"x86_64\")\n .osType(\"linux\")\n .platform(\"Ubuntu\")\n .licenseType(\"Auto\")\n .imageName(name)\n .description(name)\n .diskDeviceMappings(ImageImportDiskDeviceMappingArgs.builder()\n .ossBucket(defaultBucket.id())\n .ossObject(defaultBucketObject.id())\n .diskImageSize(5)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-image-import-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: ${name}-${default.result}\n defaultBucketObject:\n type: alicloud:oss:BucketObject\n name: default\n properties:\n bucket: ${defaultBucket.id}\n key: fc/hello.zip\n content: |2\n # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n defaultImageImport:\n type: alicloud:ecs:ImageImport\n name: default\n properties:\n architecture: x86_64\n osType: linux\n platform: Ubuntu\n licenseType: Auto\n imageName: ${name}\n description: ${name}\n diskDeviceMappings:\n - ossBucket: ${defaultBucket.id}\n ossObject: ${defaultBucketObject.id}\n diskImageSize: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Image Import can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageImport:ImageImport example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Image Import resource.\n\nFor information about ECS Image Import and how to use it, see [What is Image Import](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-importimage).\n\n\u003e **NOTE:** Available since v1.69.0.\n\n\u003e **NOTE:** You must upload the image file to the object storage OSS in advance.\n\n\u003e **NOTE:** The region where the image is imported must be the same region as the OSS bucket where the image file is uploaded.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-image-import-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultBucket = new alicloud.oss.Bucket(\"default\", {bucket: `${name}-${_default.result}`});\nconst defaultBucketObject = new alicloud.oss.BucketObject(\"default\", {\n bucket: defaultBucket.id,\n key: \"fc/hello.zip\",\n content: ` # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\\\"hello world\\\\\"\n return 'hello world'\n`,\n});\nconst defaultImageImport = new alicloud.ecs.ImageImport(\"default\", {\n architecture: \"x86_64\",\n osType: \"linux\",\n platform: \"Ubuntu\",\n licenseType: \"Auto\",\n imageName: name,\n description: name,\n diskDeviceMappings: [{\n ossBucket: defaultBucket.id,\n ossObject: defaultBucketObject.id,\n diskImageSize: 5,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-image-import-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_bucket = alicloud.oss.Bucket(\"default\", bucket=f\"{name}-{default['result']}\")\ndefault_bucket_object = alicloud.oss.BucketObject(\"default\",\n bucket=default_bucket.id,\n key=\"fc/hello.zip\",\n content=\"\"\" # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n\"\"\")\ndefault_image_import = alicloud.ecs.ImageImport(\"default\",\n architecture=\"x86_64\",\n os_type=\"linux\",\n platform=\"Ubuntu\",\n license_type=\"Auto\",\n image_name=name,\n description=name,\n disk_device_mappings=[{\n \"oss_bucket\": default_bucket.id,\n \"oss_object\": default_bucket_object.id,\n \"disk_image_size\": 5,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-image-import-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultBucket = new AliCloud.Oss.Bucket(\"default\", new()\n {\n BucketName = $\"{name}-{@default.Result}\",\n });\n\n var defaultBucketObject = new AliCloud.Oss.BucketObject(\"default\", new()\n {\n Bucket = defaultBucket.Id,\n Key = \"fc/hello.zip\",\n Content = @\" # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"\"hello world\\\"\"\n return 'hello world'\n\",\n });\n\n var defaultImageImport = new AliCloud.Ecs.ImageImport(\"default\", new()\n {\n Architecture = \"x86_64\",\n OsType = \"linux\",\n Platform = \"Ubuntu\",\n LicenseType = \"Auto\",\n ImageName = name,\n Description = name,\n DiskDeviceMappings = new[]\n {\n new AliCloud.Ecs.Inputs.ImageImportDiskDeviceMappingArgs\n {\n OssBucket = defaultBucket.Id,\n OssObject = defaultBucketObject.Id,\n DiskImageSize = 5,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-image-import-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucket, err := oss.NewBucket(ctx, \"default\", \u0026oss.BucketArgs{\n\t\t\tBucket: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultBucketObject, err := oss.NewBucketObject(ctx, \"default\", \u0026oss.BucketObjectArgs{\n\t\t\tBucket: defaultBucket.ID(),\n\t\t\tKey: pulumi.String(\"fc/hello.zip\"),\n\t\t\tContent: pulumi.String(\" # -*- coding: utf-8 -*-\\n def handler(event, context):\\n print \\\\\\\"hello world\\\\\\\"\\n return 'hello world'\\n\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewImageImport(ctx, \"default\", \u0026ecs.ImageImportArgs{\n\t\t\tArchitecture: pulumi.String(\"x86_64\"),\n\t\t\tOsType: pulumi.String(\"linux\"),\n\t\t\tPlatform: pulumi.String(\"Ubuntu\"),\n\t\t\tLicenseType: pulumi.String(\"Auto\"),\n\t\t\tImageName: pulumi.String(name),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDiskDeviceMappings: ecs.ImageImportDiskDeviceMappingArray{\n\t\t\t\t\u0026ecs.ImageImportDiskDeviceMappingArgs{\n\t\t\t\t\tOssBucket: defaultBucket.ID(),\n\t\t\t\t\tOssObject: defaultBucketObject.ID(),\n\t\t\t\t\tDiskImageSize: pulumi.Int(5),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.oss.Bucket;\nimport com.pulumi.alicloud.oss.BucketArgs;\nimport com.pulumi.alicloud.oss.BucketObject;\nimport com.pulumi.alicloud.oss.BucketObjectArgs;\nimport com.pulumi.alicloud.ecs.ImageImport;\nimport com.pulumi.alicloud.ecs.ImageImportArgs;\nimport com.pulumi.alicloud.ecs.inputs.ImageImportDiskDeviceMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-image-import-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultBucket = new Bucket(\"defaultBucket\", BucketArgs.builder()\n .bucket(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var defaultBucketObject = new BucketObject(\"defaultBucketObject\", BucketObjectArgs.builder()\n .bucket(defaultBucket.id())\n .key(\"fc/hello.zip\")\n .content(\"\"\"\n # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n \"\"\")\n .build());\n\n var defaultImageImport = new ImageImport(\"defaultImageImport\", ImageImportArgs.builder()\n .architecture(\"x86_64\")\n .osType(\"linux\")\n .platform(\"Ubuntu\")\n .licenseType(\"Auto\")\n .imageName(name)\n .description(name)\n .diskDeviceMappings(ImageImportDiskDeviceMappingArgs.builder()\n .ossBucket(defaultBucket.id())\n .ossObject(defaultBucketObject.id())\n .diskImageSize(5)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-image-import-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultBucket:\n type: alicloud:oss:Bucket\n name: default\n properties:\n bucket: ${name}-${default.result}\n defaultBucketObject:\n type: alicloud:oss:BucketObject\n name: default\n properties:\n bucket: ${defaultBucket.id}\n key: fc/hello.zip\n content: |2\n # -*- coding: utf-8 -*-\n def handler(event, context):\n print \\\"hello world\\\"\n return 'hello world'\n defaultImageImport:\n type: alicloud:ecs:ImageImport\n name: default\n properties:\n architecture: x86_64\n osType: linux\n platform: Ubuntu\n licenseType: Auto\n imageName: ${name}\n description: ${name}\n diskDeviceMappings:\n - ossBucket: ${defaultBucket.id}\n ossObject: ${defaultBucketObject.id}\n diskImageSize: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Image Import can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageImport:ImageImport example \u003cid\u003e\n```\n\n",
"properties": {
"architecture": {
"type": "string",
@@ -158920,7 +161549,7 @@
}
},
"alicloud:ecs/imageSharePermission:ImageSharePermission": {
- "description": "Manage image sharing permissions. You can share your custom image to other Alibaba Cloud users. The user can use the shared custom image to create ECS instances or replace the system disk of the instance.\n\n\u003e **NOTE:** You can only share your own custom images to other Alibaba Cloud users.\n\n\u003e **NOTE:** Each custom image can be shared with up to 50 Alibaba Cloud accounts. You can submit a ticket to share with more users.\n\n\u003e **NOTE:** After creating an ECS instance using a shared image, once the custom image owner releases the image sharing relationship or deletes the custom image, the instance cannot initialize the system disk.\n\n\u003e **NOTE:** Available in 1.68.0+.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst config = new pulumi.Config();\nconst anotherUid = config.get(\"anotherUid\") || \"123456789\";\nconst defaultImageSharePermission = new alicloud.ecs.ImageSharePermission(\"default\", {\n imageId: defaultImage.id,\n accountId: anotherUid,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\nconfig = pulumi.Config()\nanother_uid = config.get(\"anotherUid\")\nif another_uid is None:\n another_uid = \"123456789\"\ndefault_image_share_permission = alicloud.ecs.ImageSharePermission(\"default\",\n image_id=default_image.id,\n account_id=another_uid)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var config = new Config();\n var anotherUid = config.Get(\"anotherUid\") ?? \"123456789\";\n var defaultImageSharePermission = new AliCloud.Ecs.ImageSharePermission(\"default\", new()\n {\n ImageId = defaultImage.Id,\n AccountId = anotherUid,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tanotherUid := \"123456789\"\n\t\tif param := cfg.Get(\"anotherUid\"); param != \"\" {\n\t\t\tanotherUid = param\n\t\t}\n\t\t_, err = ecs.NewImageSharePermission(ctx, \"default\", \u0026ecs.ImageSharePermissionArgs{\n\t\t\tImageId: defaultImage.ID(),\n\t\t\tAccountId: pulumi.String(anotherUid),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.ecs.ImageSharePermission;\nimport com.pulumi.alicloud.ecs.ImageSharePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n final var anotherUid = config.get(\"anotherUid\").orElse(\"123456789\");\n var defaultImageSharePermission = new ImageSharePermission(\"defaultImageSharePermission\", ImageSharePermissionArgs.builder()\n .imageId(defaultImage.id())\n .accountId(anotherUid)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n anotherUid:\n type: string\n default: '123456789'\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultImageSharePermission:\n type: alicloud:ecs:ImageSharePermission\n name: default\n properties:\n imageId: ${defaultImage.id}\n accountId: ${anotherUid}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Attributes Reference0\n \n The following attributes are exported:\n \n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e - ID of the image. It formats as `\u003cimage_id\u003e:\u003caccount_id\u003e`\n\n## Import\n\nimage can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageSharePermission:ImageSharePermission default m-uf66yg1q:123456789\n```\n\n",
+ "description": "Manage image sharing permissions. You can share your custom image to other Alibaba Cloud users. The user can use the shared custom image to create ECS instances or replace the system disk of the instance.\n\n\u003e **NOTE:** You can only share your own custom images to other Alibaba Cloud users.\n\n\u003e **NOTE:** Each custom image can be shared with up to 50 Alibaba Cloud accounts. You can submit a ticket to share with more users.\n\n\u003e **NOTE:** After creating an ECS instance using a shared image, once the custom image owner releases the image sharing relationship or deletes the custom image, the instance cannot initialize the system disk.\n\n\u003e **NOTE:** Available in 1.68.0+.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = alicloud.getZones({\n availableResourceCreation: \"Instance\",\n});\nconst defaultGetInstanceTypes = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.sn1ne\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: \"terraform-example\",\n cidrBlock: \"172.17.3.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n name: \"terraform-example\",\n vpcId: defaultNetwork.id,\n});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n instanceName: \"terraform-example\",\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.ids?.[0]),\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.ids?.[0]),\n internetMaxBandwidthOut: 10,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultImage = new alicloud.ecs.Image(\"default\", {\n instanceId: defaultInstance.id,\n imageName: `terraform-example-${defaultInteger.result}`,\n description: \"terraform-example\",\n});\nconst config = new pulumi.Config();\nconst anotherUid = config.get(\"anotherUid\") || \"123456789\";\nconst defaultImageSharePermission = new alicloud.ecs.ImageSharePermission(\"default\", {\n imageId: defaultImage.id,\n accountId: anotherUid,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = alicloud.get_zones(available_resource_creation=\"Instance\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.sn1ne\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=\"terraform-example\",\n cidr_block=\"172.17.3.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n name=\"terraform-example\",\n vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default.zones[0].id,\n instance_name=\"terraform-example\",\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n instance_type=default_get_instance_types.ids[0],\n image_id=default_get_images.ids[0],\n internet_max_bandwidth_out=10)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_image = alicloud.ecs.Image(\"default\",\n instance_id=default_instance.id,\n image_name=f\"terraform-example-{default_integer['result']}\",\n description=\"terraform-example\")\nconfig = pulumi.Config()\nanother_uid = config.get(\"anotherUid\")\nif another_uid is None:\n another_uid = \"123456789\"\ndefault_image_share_permission = alicloud.ecs.ImageSharePermission(\"default\",\n image_id=default_image.id,\n account_id=another_uid)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"Instance\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.sn1ne\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = \"terraform-example\",\n CidrBlock = \"172.17.3.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n Name = \"terraform-example\",\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n InstanceName = \"terraform-example\",\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.Ids[0]),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Ids[0]),\n InternetMaxBandwidthOut = 10,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultImage = new AliCloud.Ecs.Image(\"default\", new()\n {\n InstanceId = defaultInstance.Id,\n ImageName = $\"terraform-example-{defaultInteger.Result}\",\n Description = \"terraform-example\",\n });\n\n var config = new Config();\n var anotherUid = config.Get(\"anotherUid\") ?? \"123456789\";\n var defaultImageSharePermission = new AliCloud.Ecs.ImageSharePermission(\"default\", new()\n {\n ImageId = defaultImage.Id,\n AccountId = anotherUid,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"Instance\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.sn1ne\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.17.3.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(_default.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.Ids[0]),\n\t\t\tImageId: pulumi.String(defaultGetImages.Ids[0]),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultImage, err := ecs.NewImage(ctx, \"default\", \u0026ecs.ImageArgs{\n\t\t\tInstanceId: defaultInstance.ID(),\n\t\t\tImageName: pulumi.Sprintf(\"terraform-example-%v\", defaultInteger.Result),\n\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\tanotherUid := \"123456789\"\n\t\tif param := cfg.Get(\"anotherUid\"); param != \"\" {\n\t\t\tanotherUid = param\n\t\t}\n\t\t_, err = ecs.NewImageSharePermission(ctx, \"default\", \u0026ecs.ImageSharePermissionArgs{\n\t\t\tImageId: defaultImage.ID(),\n\t\t\tAccountId: pulumi.String(anotherUid),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ecs.Image;\nimport com.pulumi.alicloud.ecs.ImageArgs;\nimport com.pulumi.alicloud.ecs.ImageSharePermission;\nimport com.pulumi.alicloud.ecs.ImageSharePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"Instance\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.sn1ne\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(\"terraform-example\")\n .cidrBlock(\"172.17.3.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .name(\"terraform-example\")\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .instanceName(\"terraform-example\")\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .instanceType(defaultGetInstanceTypes.ids()[0])\n .imageId(defaultGetImages.ids()[0])\n .internetMaxBandwidthOut(10)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .instanceId(defaultInstance.id())\n .imageName(String.format(\"terraform-example-%s\", defaultInteger.result()))\n .description(\"terraform-example\")\n .build());\n\n final var anotherUid = config.get(\"anotherUid\").orElse(\"123456789\");\n var defaultImageSharePermission = new ImageSharePermission(\"defaultImageSharePermission\", ImageSharePermissionArgs.builder()\n .imageId(defaultImage.id())\n .accountId(anotherUid)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n anotherUid:\n type: string\n default: '123456789'\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: terraform-example\n cidrBlock: 172.17.3.0/24\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: terraform-example\n cidrBlock: 172.17.3.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n name: terraform-example\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${default.zones[0].id}\n instanceName: terraform-example\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n instanceType: ${defaultGetInstanceTypes.ids[0]}\n imageId: ${defaultGetImages.ids[0]}\n internetMaxBandwidthOut: 10\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultImage:\n type: alicloud:ecs:Image\n name: default\n properties:\n instanceId: ${defaultInstance.id}\n imageName: terraform-example-${defaultInteger.result}\n description: terraform-example\n defaultImageSharePermission:\n type: alicloud:ecs:ImageSharePermission\n name: default\n properties:\n imageId: ${defaultImage.id}\n accountId: ${anotherUid}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: Instance\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.sn1ne\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Attributes Reference0\n \n The following attributes are exported:\n \n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e - ID of the image. It formats as `\u003cimage_id\u003e:\u003caccount_id\u003e`\n\n## Import\n\nimage can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/imageSharePermission:ImageSharePermission default m-uf66yg1q:123456789\n```\n\n",
"properties": {
"accountId": {
"type": "string",
@@ -158969,7 +161598,7 @@
}
},
"alicloud:ecs/instance:Instance": {
- "description": "Provides a ECS instance resource.\n\n\u003e **NOTE:** Available since v1.0.0\n\n\u003e **NOTE:** From version v1.213.0, you can specify \u003cspan pulumi-lang-nodejs=\"`launchTemplateId`\" pulumi-lang-dotnet=\"`LaunchTemplateId`\" pulumi-lang-go=\"`launchTemplateId`\" pulumi-lang-python=\"`launch_template_id`\" pulumi-lang-yaml=\"`launchTemplateId`\" pulumi-lang-java=\"`launchTemplateId`\"\u003e`launch_template_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`launchTemplateVersion`\" pulumi-lang-dotnet=\"`LaunchTemplateVersion`\" pulumi-lang-go=\"`launchTemplateVersion`\" pulumi-lang-python=\"`launch_template_version`\" pulumi-lang-yaml=\"`launchTemplateVersion`\" pulumi-lang-java=\"`launchTemplateVersion`\"\u003e`launch_template_version`\u003c/span\u003e to use a launch template. This eliminates the need to configure a large number of parameters every time you create instances.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst instanceType = config.get(\"instanceType\") || \"ecs.n4.large\";\nconst imageId = config.get(\"imageId\") || \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\n// Create a new ECS instance for VPC\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\n// Create a new ECS instance for a VPC\nconst group = new alicloud.ecs.SecurityGroup(\"group\", {\n securityGroupName: name,\n description: \"foo\",\n vpcId: vpc.id,\n});\nconst key = new alicloud.kms.Key(\"key\", {\n description: \"Hello KMS\",\n pendingWindowInDays: 7,\n status: \"Enabled\",\n});\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n availableInstanceType: instanceType,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n vpcId: vpc.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst instance = new alicloud.ecs.Instance(\"instance\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n securityGroups: [group].map(__item =\u003e __item.id),\n instanceType: instanceType,\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskName: name,\n systemDiskDescription: \"test_foo_system_disk_description\",\n imageId: imageId,\n instanceName: name,\n vswitchId: vswitch.id,\n internetMaxBandwidthOut: 10,\n dataDisks: [{\n name: \"disk2\",\n size: 20,\n category: \"cloud_efficiency\",\n description: \"disk2\",\n encrypted: true,\n kmsKeyId: key.id,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ninstance_type = config.get(\"instanceType\")\nif instance_type is None:\n instance_type = \"ecs.n4.large\"\nimage_id = config.get(\"imageId\")\nif image_id is None:\n image_id = \"ubuntu_18_04_64_20G_alibase_20190624.vhd\"\n# Create a new ECS instance for VPC\nvpc = alicloud.vpc.Network(\"vpc\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\n# Create a new ECS instance for a VPC\ngroup = alicloud.ecs.SecurityGroup(\"group\",\n security_group_name=name,\n description=\"foo\",\n vpc_id=vpc.id)\nkey = alicloud.kms.Key(\"key\",\n description=\"Hello KMS\",\n pending_window_in_days=7,\n status=\"Enabled\")\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\",\n available_instance_type=instance_type)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n vpc_id=vpc.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ninstance = alicloud.ecs.Instance(\"instance\",\n availability_zone=default.zones[0].id,\n security_groups=[__item.id for __item in [group]],\n instance_type=instance_type,\n system_disk_category=\"cloud_efficiency\",\n system_disk_name=name,\n system_disk_description=\"test_foo_system_disk_description\",\n image_id=image_id,\n instance_name=name,\n vswitch_id=vswitch.id,\n internet_max_bandwidth_out=10,\n data_disks=[{\n \"name\": \"disk2\",\n \"size\": 20,\n \"category\": \"cloud_efficiency\",\n \"description\": \"disk2\",\n \"encrypted\": True,\n \"kms_key_id\": key.id,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var instanceType = config.Get(\"instanceType\") ?? \"ecs.n4.large\";\n var imageId = config.Get(\"imageId\") ?? \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\n // Create a new ECS instance for VPC\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n // Create a new ECS instance for a VPC\n var @group = new AliCloud.Ecs.SecurityGroup(\"group\", new()\n {\n SecurityGroupName = name,\n Description = \"foo\",\n VpcId = vpc.Id,\n });\n\n var key = new AliCloud.Kms.Key(\"key\", new()\n {\n Description = \"Hello KMS\",\n PendingWindowInDays = 7,\n Status = \"Enabled\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n AvailableInstanceType = instanceType,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var instance = new AliCloud.Ecs.Instance(\"instance\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n SecurityGroups = new[]\n {\n @group,\n }.Select(__item =\u003e __item.Id).ToList(),\n InstanceType = instanceType,\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskName = name,\n SystemDiskDescription = \"test_foo_system_disk_description\",\n ImageId = imageId,\n InstanceName = name,\n VswitchId = vswitch.Id,\n InternetMaxBandwidthOut = 10,\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.InstanceDataDiskArgs\n {\n Name = \"disk2\",\n Size = 20,\n Category = \"cloud_efficiency\",\n Description = \"disk2\",\n Encrypted = true,\n KmsKeyId = key.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\ninstanceType := \"ecs.n4.large\";\nif param := cfg.Get(\"instanceType\"); param != \"\"{\ninstanceType = param\n}\nimageId := \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\nif param := cfg.Get(\"imageId\"); param != \"\"{\nimageId = param\n}\n// Create a new ECS instance for VPC\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\n// Create a new ECS instance for a VPC\ngroup, err := ecs.NewSecurityGroup(ctx, \"group\", \u0026ecs.SecurityGroupArgs{\nSecurityGroupName: pulumi.String(name),\nDescription: pulumi.String(\"foo\"),\nVpcId: vpc.ID(),\n})\nif err != nil {\nreturn err\n}\nkey, err := kms.NewKey(ctx, \"key\", \u0026kms.KeyArgs{\nDescription: pulumi.String(\"Hello KMS\"),\nPendingWindowInDays: pulumi.Int(7),\nStatus: pulumi.String(\"Enabled\"),\n})\nif err != nil {\nreturn err\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\nAvailableInstanceType: pulumi.StringRef(instanceType),\n}, nil);\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nVpcId: vpc.ID(),\nCidrBlock: pulumi.String(\"172.16.0.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\n_, err = ecs.NewInstance(ctx, \"instance\", \u0026ecs.InstanceArgs{\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nSecurityGroups: splat0,\nInstanceType: pulumi.String(instanceType),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskName: pulumi.String(name),\nSystemDiskDescription: pulumi.String(\"test_foo_system_disk_description\"),\nImageId: pulumi.String(imageId),\nInstanceName: pulumi.String(name),\nVswitchId: vswitch.ID(),\nInternetMaxBandwidthOut: pulumi.Int(10),\nDataDisks: ecs.InstanceDataDiskArray{\n\u0026ecs.InstanceDataDiskArgs{\nName: pulumi.String(\"disk2\"),\nSize: pulumi.Int(20),\nCategory: pulumi.String(\"cloud_efficiency\"),\nDescription: pulumi.String(\"disk2\"),\nEncrypted: pulumi.Bool(true),\nKmsKeyId: key.ID(),\n},\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.kms.Key;\nimport com.pulumi.alicloud.kms.KeyArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.inputs.InstanceDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var instanceType = config.get(\"instanceType\").orElse(\"ecs.n4.large\");\n final var imageId = config.get(\"imageId\").orElse(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\");\n // Create a new ECS instance for VPC\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n // Create a new ECS instance for a VPC\n var group = new SecurityGroup(\"group\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .description(\"foo\")\n .vpcId(vpc.id())\n .build());\n\n var key = new Key(\"key\", KeyArgs.builder()\n .description(\"Hello KMS\")\n .pendingWindowInDays(7)\n .status(\"Enabled\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .availableInstanceType(instanceType)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var instance = new Instance(\"instance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .securityGroups(group.stream().map(element -\u003e element.id()).collect(toList()))\n .instanceType(instanceType)\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskName(name)\n .systemDiskDescription(\"test_foo_system_disk_description\")\n .imageId(imageId)\n .instanceName(name)\n .vswitchId(vswitch.id())\n .internetMaxBandwidthOut(10)\n .dataDisks(InstanceDataDiskArgs.builder()\n .name(\"disk2\")\n .size(20)\n .category(\"cloud_efficiency\")\n .description(\"disk2\")\n .encrypted(true)\n .kmsKeyId(key.id())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Module Support\n\nYou can use the existing ecs-instance module\nto create several ECS instances one-click.\n\n## Import\n\nInstance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/instance:Instance example i-abc12345678\n```\n\n",
+ "description": "Provides a ECS instance resource.\n\n\u003e **NOTE:** Available since v1.0.0\n\n\u003e **NOTE:** From version v1.213.0, you can specify \u003cspan pulumi-lang-nodejs=\"`launchTemplateId`\" pulumi-lang-dotnet=\"`LaunchTemplateId`\" pulumi-lang-go=\"`launchTemplateId`\" pulumi-lang-python=\"`launch_template_id`\" pulumi-lang-yaml=\"`launchTemplateId`\" pulumi-lang-java=\"`launchTemplateId`\"\u003e`launch_template_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`launchTemplateVersion`\" pulumi-lang-dotnet=\"`LaunchTemplateVersion`\" pulumi-lang-go=\"`launchTemplateVersion`\" pulumi-lang-python=\"`launch_template_version`\" pulumi-lang-yaml=\"`launchTemplateVersion`\" pulumi-lang-java=\"`launchTemplateVersion`\"\u003e`launch_template_version`\u003c/span\u003e to use a launch template. This eliminates the need to configure a large number of parameters every time you create instances.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst instanceType = config.get(\"instanceType\") || \"ecs.n4.large\";\nconst imageId = config.get(\"imageId\") || \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\n// Create a new ECS instance for VPC\nconst vpc = new alicloud.vpc.Network(\"vpc\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\n// Create a new ECS instance for a VPC\nconst group = new alicloud.ecs.SecurityGroup(\"group\", {\n securityGroupName: name,\n description: \"foo\",\n vpcId: vpc.id,\n});\nconst key = new alicloud.kms.Key(\"key\", {\n description: \"Hello KMS\",\n pendingWindowInDays: 7,\n status: \"Enabled\",\n});\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n availableInstanceType: instanceType,\n});\nconst vswitch = new alicloud.vpc.Switch(\"vswitch\", {\n vpcId: vpc.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n vswitchName: name,\n});\nconst instance = new alicloud.ecs.Instance(\"instance\", {\n availabilityZone: _default.then(_default =\u003e _default.zones?.[0]?.id),\n securityGroups: [group].map(__item =\u003e __item.id),\n instanceType: instanceType,\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskName: name,\n systemDiskDescription: \"test_foo_system_disk_description\",\n imageId: imageId,\n instanceName: name,\n vswitchId: vswitch.id,\n internetMaxBandwidthOut: 10,\n dataDisks: [{\n name: \"disk2\",\n size: 20,\n category: \"cloud_efficiency\",\n description: \"disk2\",\n encrypted: true,\n kmsKeyId: key.id,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ninstance_type = config.get(\"instanceType\")\nif instance_type is None:\n instance_type = \"ecs.n4.large\"\nimage_id = config.get(\"imageId\")\nif image_id is None:\n image_id = \"ubuntu_18_04_64_20G_alibase_20190624.vhd\"\n# Create a new ECS instance for VPC\nvpc = alicloud.vpc.Network(\"vpc\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\n# Create a new ECS instance for a VPC\ngroup = alicloud.ecs.SecurityGroup(\"group\",\n security_group_name=name,\n description=\"foo\",\n vpc_id=vpc.id)\nkey = alicloud.kms.Key(\"key\",\n description=\"Hello KMS\",\n pending_window_in_days=7,\n status=\"Enabled\")\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\",\n available_instance_type=instance_type)\nvswitch = alicloud.vpc.Switch(\"vswitch\",\n vpc_id=vpc.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.zones[0].id,\n vswitch_name=name)\ninstance = alicloud.ecs.Instance(\"instance\",\n availability_zone=default.zones[0].id,\n security_groups=[__item.id for __item in [group]],\n instance_type=instance_type,\n system_disk_category=\"cloud_efficiency\",\n system_disk_name=name,\n system_disk_description=\"test_foo_system_disk_description\",\n image_id=image_id,\n instance_name=name,\n vswitch_id=vswitch.id,\n internet_max_bandwidth_out=10,\n data_disks=[{\n \"name\": \"disk2\",\n \"size\": 20,\n \"category\": \"cloud_efficiency\",\n \"description\": \"disk2\",\n \"encrypted\": True,\n \"kms_key_id\": key.id,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var instanceType = config.Get(\"instanceType\") ?? \"ecs.n4.large\";\n var imageId = config.Get(\"imageId\") ?? \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\n // Create a new ECS instance for VPC\n var vpc = new AliCloud.Vpc.Network(\"vpc\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n // Create a new ECS instance for a VPC\n var @group = new AliCloud.Ecs.SecurityGroup(\"group\", new()\n {\n SecurityGroupName = name,\n Description = \"foo\",\n VpcId = vpc.Id,\n });\n\n var key = new AliCloud.Kms.Key(\"key\", new()\n {\n Description = \"Hello KMS\",\n PendingWindowInDays = 7,\n Status = \"Enabled\",\n });\n\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n AvailableInstanceType = instanceType,\n });\n\n var vswitch = new AliCloud.Vpc.Switch(\"vswitch\", new()\n {\n VpcId = vpc.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n VswitchName = name,\n });\n\n var instance = new AliCloud.Ecs.Instance(\"instance\", new()\n {\n AvailabilityZone = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n SecurityGroups = new[]\n {\n @group,\n }.Select(__item =\u003e __item.Id).ToList(),\n InstanceType = instanceType,\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskName = name,\n SystemDiskDescription = \"test_foo_system_disk_description\",\n ImageId = imageId,\n InstanceName = name,\n VswitchId = vswitch.Id,\n InternetMaxBandwidthOut = 10,\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.InstanceDataDiskArgs\n {\n Name = \"disk2\",\n Size = 20,\n Category = \"cloud_efficiency\",\n Description = \"disk2\",\n Encrypted = true,\n KmsKeyId = key.Id,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kms\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\ninstanceType := \"ecs.n4.large\";\nif param := cfg.Get(\"instanceType\"); param != \"\"{\ninstanceType = param\n}\nimageId := \"ubuntu_18_04_64_20G_alibase_20190624.vhd\";\nif param := cfg.Get(\"imageId\"); param != \"\"{\nimageId = param\n}\n// Create a new ECS instance for VPC\nvpc, err := vpc.NewNetwork(ctx, \"vpc\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.String(name),\nCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\n// Create a new ECS instance for a VPC\ngroup, err := ecs.NewSecurityGroup(ctx, \"group\", \u0026ecs.SecurityGroupArgs{\nSecurityGroupName: pulumi.String(name),\nDescription: pulumi.String(\"foo\"),\nVpcId: vpc.ID(),\n})\nif err != nil {\nreturn err\n}\nkey, err := kms.NewKey(ctx, \"key\", \u0026kms.KeyArgs{\nDescription: pulumi.String(\"Hello KMS\"),\nPendingWindowInDays: pulumi.Int(7),\nStatus: pulumi.String(\"Enabled\"),\n})\nif err != nil {\nreturn err\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\nAvailableInstanceType: pulumi.StringRef(instanceType),\n}, nil);\nif err != nil {\nreturn err\n}\nvswitch, err := vpc.NewSwitch(ctx, \"vswitch\", \u0026vpc.SwitchArgs{\nVpcId: vpc.ID(),\nCidrBlock: pulumi.String(\"172.16.0.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\nVswitchName: pulumi.String(name),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\n_, err = ecs.NewInstance(ctx, \"instance\", \u0026ecs.InstanceArgs{\nAvailabilityZone: pulumi.String(_default.Zones[0].Id),\nSecurityGroups: splat0,\nInstanceType: pulumi.String(instanceType),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nSystemDiskName: pulumi.String(name),\nSystemDiskDescription: pulumi.String(\"test_foo_system_disk_description\"),\nImageId: pulumi.String(imageId),\nInstanceName: pulumi.String(name),\nVswitchId: vswitch.ID(),\nInternetMaxBandwidthOut: pulumi.Int(10),\nDataDisks: ecs.InstanceDataDiskArray{\n\u0026ecs.InstanceDataDiskArgs{\nName: pulumi.String(\"disk2\"),\nSize: pulumi.Int(20),\nCategory: pulumi.String(\"cloud_efficiency\"),\nDescription: pulumi.String(\"disk2\"),\nEncrypted: pulumi.Bool(true),\nKmsKeyId: key.ID(),\n},\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.kms.Key;\nimport com.pulumi.alicloud.kms.KeyArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.inputs.InstanceDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var instanceType = config.get(\"instanceType\").orElse(\"ecs.n4.large\");\n final var imageId = config.get(\"imageId\").orElse(\"ubuntu_18_04_64_20G_alibase_20190624.vhd\");\n // Create a new ECS instance for VPC\n var vpc = new Network(\"vpc\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n // Create a new ECS instance for a VPC\n var group = new SecurityGroup(\"group\", SecurityGroupArgs.builder()\n .securityGroupName(name)\n .description(\"foo\")\n .vpcId(vpc.id())\n .build());\n\n var key = new Key(\"key\", KeyArgs.builder()\n .description(\"Hello KMS\")\n .pendingWindowInDays(7)\n .status(\"Enabled\")\n .build());\n\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .availableInstanceType(instanceType)\n .build());\n\n var vswitch = new Switch(\"vswitch\", SwitchArgs.builder()\n .vpcId(vpc.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.zones()[0].id())\n .vswitchName(name)\n .build());\n\n var instance = new Instance(\"instance\", InstanceArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .securityGroups(group.stream().map(element -\u003e element.id()).collect(toList()))\n .instanceType(instanceType)\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskName(name)\n .systemDiskDescription(\"test_foo_system_disk_description\")\n .imageId(imageId)\n .instanceName(name)\n .vswitchId(vswitch.id())\n .internetMaxBandwidthOut(10)\n .dataDisks(InstanceDataDiskArgs.builder()\n .name(\"disk2\")\n .size(20)\n .category(\"cloud_efficiency\")\n .description(\"disk2\")\n .encrypted(true)\n .kmsKeyId(key.id())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Module Support\n\nYou can use the existing ecs-instance module\nto create several ECS instances one-click.\n\n## Import\n\nInstance can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/instance:Instance example i-abc12345678\n```\n\n",
"properties": {
"allocatePublicIp": {
"type": "boolean",
@@ -158992,6 +161621,10 @@
"type": "integer",
"description": "The number of vCPUs.\n"
},
+ "cpuOptions": {
+ "$ref": "#/types/alicloud:ecs/InstanceCpuOptions:InstanceCpuOptions",
+ "description": "The options of cpu. See \u003cspan pulumi-lang-nodejs=\"`cpuOptions`\" pulumi-lang-dotnet=\"`CpuOptions`\" pulumi-lang-go=\"`cpuOptions`\" pulumi-lang-python=\"`cpu_options`\" pulumi-lang-yaml=\"`cpuOptions`\" pulumi-lang-java=\"`cpuOptions`\"\u003e`cpu_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ },
"createTime": {
"type": "string",
"description": "(Available since v1.232.0) The time when the instance was created.\n"
@@ -159069,7 +161702,7 @@
},
"imageOptions": {
"$ref": "#/types/alicloud:ecs/InstanceImageOptions:InstanceImageOptions",
- "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n"
},
"includeDataDisks": {
"type": "boolean",
@@ -159367,6 +162000,7 @@
"required": [
"availabilityZone",
"cpu",
+ "cpuOptions",
"createTime",
"creditSpecification",
"deploymentSetGroupNo",
@@ -159444,6 +162078,10 @@
"description": "The Zone to start the instance in. It is ignored and will be computed when set \u003cspan pulumi-lang-nodejs=\"`vswitchId`\" pulumi-lang-dotnet=\"`VswitchId`\" pulumi-lang-go=\"`vswitchId`\" pulumi-lang-python=\"`vswitch_id`\" pulumi-lang-yaml=\"`vswitchId`\" pulumi-lang-java=\"`vswitchId`\"\u003e`vswitch_id`\u003c/span\u003e.\n",
"willReplaceOnChanges": true
},
+ "cpuOptions": {
+ "$ref": "#/types/alicloud:ecs/InstanceCpuOptions:InstanceCpuOptions",
+ "description": "The options of cpu. See \u003cspan pulumi-lang-nodejs=\"`cpuOptions`\" pulumi-lang-dotnet=\"`CpuOptions`\" pulumi-lang-go=\"`cpuOptions`\" pulumi-lang-python=\"`cpu_options`\" pulumi-lang-yaml=\"`cpuOptions`\" pulumi-lang-java=\"`cpuOptions`\"\u003e`cpu_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ },
"creditSpecification": {
"type": "string",
"description": "Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.\n"
@@ -159512,7 +162150,7 @@
},
"imageOptions": {
"$ref": "#/types/alicloud:ecs/InstanceImageOptions:InstanceImageOptions",
- "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n"
},
"includeDataDisks": {
"type": "boolean",
@@ -159817,6 +162455,10 @@
"type": "integer",
"description": "The number of vCPUs.\n"
},
+ "cpuOptions": {
+ "$ref": "#/types/alicloud:ecs/InstanceCpuOptions:InstanceCpuOptions",
+ "description": "The options of cpu. See \u003cspan pulumi-lang-nodejs=\"`cpuOptions`\" pulumi-lang-dotnet=\"`CpuOptions`\" pulumi-lang-go=\"`cpuOptions`\" pulumi-lang-python=\"`cpu_options`\" pulumi-lang-yaml=\"`cpuOptions`\" pulumi-lang-java=\"`cpuOptions`\"\u003e`cpu_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ },
"createTime": {
"type": "string",
"description": "(Available since v1.232.0) The time when the instance was created.\n"
@@ -159897,7 +162539,7 @@
},
"imageOptions": {
"$ref": "#/types/alicloud:ecs/InstanceImageOptions:InstanceImageOptions",
- "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n\n\u003e **NOTE:** System disk category \u003cspan pulumi-lang-nodejs=\"`cloud`\" pulumi-lang-dotnet=\"`Cloud`\" pulumi-lang-go=\"`cloud`\" pulumi-lang-python=\"`cloud`\" pulumi-lang-yaml=\"`cloud`\" pulumi-lang-java=\"`cloud`\"\u003e`cloud`\u003c/span\u003e has been outdated and it only can be used none I/O Optimized ECS instances. Recommend \u003cspan pulumi-lang-nodejs=\"`cloudEfficiency`\" pulumi-lang-dotnet=\"`CloudEfficiency`\" pulumi-lang-go=\"`cloudEfficiency`\" pulumi-lang-python=\"`cloud_efficiency`\" pulumi-lang-yaml=\"`cloudEfficiency`\" pulumi-lang-java=\"`cloudEfficiency`\"\u003e`cloud_efficiency`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cloudSsd`\" pulumi-lang-dotnet=\"`CloudSsd`\" pulumi-lang-go=\"`cloudSsd`\" pulumi-lang-python=\"`cloud_ssd`\" pulumi-lang-yaml=\"`cloudSsd`\" pulumi-lang-java=\"`cloudSsd`\"\u003e`cloud_ssd`\u003c/span\u003e disk.\n\n\u003e **NOTE:** From version 1.5.0, instance's charge type can be changed to `PrePaid` by specifying \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`periodUnit`\" pulumi-lang-dotnet=\"`PeriodUnit`\" pulumi-lang-go=\"`periodUnit`\" pulumi-lang-python=\"`period_unit`\" pulumi-lang-yaml=\"`periodUnit`\" pulumi-lang-java=\"`periodUnit`\"\u003e`period_unit`\u003c/span\u003e, but it is irreversible.\n\n\u003e **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance.\n\n\u003e **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect.\n\n\u003e **NOTE:** From version 1.7.0, setting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e larger than 0 can allocate a public IP for an instance.\nSetting \u003cspan pulumi-lang-nodejs=\"\"internetMaxBandwidthOut\"\" pulumi-lang-dotnet=\"\"InternetMaxBandwidthOut\"\" pulumi-lang-go=\"\"internetMaxBandwidthOut\"\" pulumi-lang-python=\"\"internet_max_bandwidth_out\"\" pulumi-lang-yaml=\"\"internetMaxBandwidthOut\"\" pulumi-lang-java=\"\"internetMaxBandwidthOut\"\"\u003e\"internet_max_bandwidth_out\"\u003c/span\u003e to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0).\nHowever, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is \"PayByBandwidth\".\n\n\u003e **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.\n"
+ "description": "The options of images. See \u003cspan pulumi-lang-nodejs=\"`imageOptions`\" pulumi-lang-dotnet=\"`ImageOptions`\" pulumi-lang-go=\"`imageOptions`\" pulumi-lang-python=\"`image_options`\" pulumi-lang-yaml=\"`imageOptions`\" pulumi-lang-java=\"`imageOptions`\"\u003e`image_options`\u003c/span\u003e below.\n"
},
"includeDataDisks": {
"type": "boolean",
@@ -160213,7 +162855,7 @@
}
},
"alicloud:ecs/keyPair:KeyPair": {
- "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-dotnet=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-go=\" ecs.EcsKeyPair \" pulumi-lang-python=\" ecs.EcsKeyPair \" pulumi-lang-yaml=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-java=\" alicloud.ecs.EcsKeyPair \"\u003e alicloud.ecs.EcsKeyPair \u003c/span\u003efrom version 1.121.0.\n\nProvides a key pair resource.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst basic = new alicloud.ecs.KeyPair(\"basic\", {keyName: \"terraform-test-key-pair\"});\n// Using name prefix to build key pair\nconst prefix = new alicloud.ecs.KeyPair(\"prefix\", {keyNamePrefix: \"terraform-test-key-pair-prefix\"});\n// Import an existing public key to build a alicloud key pair\nconst publickey = new alicloud.ecs.KeyPair(\"publickey\", {\n keyName: \"my_public_key\",\n publicKey: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nbasic = alicloud.ecs.KeyPair(\"basic\", key_name=\"terraform-test-key-pair\")\n# Using name prefix to build key pair\nprefix = alicloud.ecs.KeyPair(\"prefix\", key_name_prefix=\"terraform-test-key-pair-prefix\")\n# Import an existing public key to build a alicloud key pair\npublickey = alicloud.ecs.KeyPair(\"publickey\",\n key_name=\"my_public_key\",\n public_key=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var basic = new AliCloud.Ecs.KeyPair(\"basic\", new()\n {\n KeyName = \"terraform-test-key-pair\",\n });\n\n // Using name prefix to build key pair\n var prefix = new AliCloud.Ecs.KeyPair(\"prefix\", new()\n {\n KeyNamePrefix = \"terraform-test-key-pair-prefix\",\n });\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new AliCloud.Ecs.KeyPair(\"publickey\", new()\n {\n KeyName = \"my_public_key\",\n PublicKey = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewKeyPair(ctx, \"basic\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyName: pulumi.String(\"terraform-test-key-pair\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Using name prefix to build key pair\n\t\t_, err = ecs.NewKeyPair(ctx, \"prefix\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyNamePrefix: pulumi.String(\"terraform-test-key-pair-prefix\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Import an existing public key to build a alicloud key pair\n\t\t_, err = ecs.NewKeyPair(ctx, \"publickey\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyName: pulumi.String(\"my_public_key\"),\n\t\t\tPublicKey: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var basic = new KeyPair(\"basic\", KeyPairArgs.builder()\n .keyName(\"terraform-test-key-pair\")\n .build());\n\n // Using name prefix to build key pair\n var prefix = new KeyPair(\"prefix\", KeyPairArgs.builder()\n .keyNamePrefix(\"terraform-test-key-pair-prefix\")\n .build());\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new KeyPair(\"publickey\", KeyPairArgs.builder()\n .keyName(\"my_public_key\")\n .publicKey(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n basic:\n type: alicloud:ecs:KeyPair\n properties:\n keyName: terraform-test-key-pair\n # Using name prefix to build key pair\n prefix:\n type: alicloud:ecs:KeyPair\n properties:\n keyNamePrefix: terraform-test-key-pair-prefix\n # Import an existing public key to build a alicloud key pair\n publickey:\n type: alicloud:ecs:KeyPair\n properties:\n keyName: my_public_key\n publicKey: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nKey pair can be imported using the name, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/keyPair:KeyPair example my_public_key\n```\n\n",
+ "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-dotnet=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-go=\" ecs.EcsKeyPair \" pulumi-lang-python=\" ecs.EcsKeyPair \" pulumi-lang-yaml=\" alicloud.ecs.EcsKeyPair \" pulumi-lang-java=\" alicloud.ecs.EcsKeyPair \"\u003e alicloud.ecs.EcsKeyPair \u003c/span\u003efrom version 1.121.0.\n\nProvides a key pair resource.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst basic = new alicloud.ecs.KeyPair(\"basic\", {keyName: \"terraform-test-key-pair\"});\n// Using name prefix to build key pair\nconst prefix = new alicloud.ecs.KeyPair(\"prefix\", {keyNamePrefix: \"terraform-test-key-pair-prefix\"});\n// Import an existing public key to build a alicloud key pair\nconst publickey = new alicloud.ecs.KeyPair(\"publickey\", {\n keyName: \"my_public_key\",\n publicKey: \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nbasic = alicloud.ecs.KeyPair(\"basic\", key_name=\"terraform-test-key-pair\")\n# Using name prefix to build key pair\nprefix = alicloud.ecs.KeyPair(\"prefix\", key_name_prefix=\"terraform-test-key-pair-prefix\")\n# Import an existing public key to build a alicloud key pair\npublickey = alicloud.ecs.KeyPair(\"publickey\",\n key_name=\"my_public_key\",\n public_key=\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var basic = new AliCloud.Ecs.KeyPair(\"basic\", new()\n {\n KeyName = \"terraform-test-key-pair\",\n });\n\n // Using name prefix to build key pair\n var prefix = new AliCloud.Ecs.KeyPair(\"prefix\", new()\n {\n KeyNamePrefix = \"terraform-test-key-pair-prefix\",\n });\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new AliCloud.Ecs.KeyPair(\"publickey\", new()\n {\n KeyName = \"my_public_key\",\n PublicKey = \"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewKeyPair(ctx, \"basic\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyName: pulumi.String(\"terraform-test-key-pair\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Using name prefix to build key pair\n\t\t_, err = ecs.NewKeyPair(ctx, \"prefix\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyNamePrefix: pulumi.String(\"terraform-test-key-pair-prefix\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Import an existing public key to build a alicloud key pair\n\t\t_, err = ecs.NewKeyPair(ctx, \"publickey\", \u0026ecs.KeyPairArgs{\n\t\t\tKeyName: pulumi.String(\"my_public_key\"),\n\t\t\tPublicKey: pulumi.String(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.KeyPair;\nimport com.pulumi.alicloud.ecs.KeyPairArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var basic = new KeyPair(\"basic\", KeyPairArgs.builder()\n .keyName(\"terraform-test-key-pair\")\n .build());\n\n // Using name prefix to build key pair\n var prefix = new KeyPair(\"prefix\", KeyPairArgs.builder()\n .keyNamePrefix(\"terraform-test-key-pair-prefix\")\n .build());\n\n // Import an existing public key to build a alicloud key pair\n var publickey = new KeyPair(\"publickey\", KeyPairArgs.builder()\n .keyName(\"my_public_key\")\n .publicKey(\"ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n basic:\n type: alicloud:ecs:KeyPair\n properties:\n keyName: terraform-test-key-pair\n # Using name prefix to build key pair\n prefix:\n type: alicloud:ecs:KeyPair\n properties:\n keyNamePrefix: terraform-test-key-pair-prefix\n # Import an existing public key to build a alicloud key pair\n publickey:\n type: alicloud:ecs:KeyPair\n properties:\n keyName: my_public_key\n publicKey: ssh-rsa AAAAB3Nza12345678qwertyuudsfsg\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nKey pair can be imported using the name, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/keyPair:KeyPair example my_public_key\n```\n\n",
"properties": {
"createTime": {
"type": "string"
@@ -160426,7 +163068,7 @@
}
},
"alicloud:ecs/launchTemplate:LaunchTemplate": {
- "description": "Provides an ECS Launch Template resource.\n\nFor information about Launch Template and how to use it, see [Launch Template](https://www.alibabacloud.com/help/doc-detail/73916.html).\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.120.0`. Please use new resource alicloud_ecs_launch_template.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst images = alicloud.ecs.getImages({\n owners: \"system\",\n});\nconst instances = alicloud.ecs.getInstances({});\nconst template = new alicloud.ecs.LaunchTemplate(\"template\", {\n name: \"tf-test-template\",\n description: \"test1\",\n imageId: images.then(images =\u003e images.images?.[0]?.id),\n hostName: \"tf-test-host\",\n instanceChargeType: \"PrePaid\",\n instanceName: \"tf-instance-name\",\n instanceType: instances.then(instances =\u003e instances.instances?.[0]?.instanceType),\n internetChargeType: \"PayByBandwidth\",\n internetMaxBandwidthIn: 5,\n internetMaxBandwidthOut: 0,\n ioOptimized: \"none\",\n keyPairName: \"test-key-pair\",\n ramRoleName: \"xxxxx\",\n networkType: \"vpc\",\n securityEnhancementStrategy: \"Active\",\n spotPriceLimit: 5,\n spotStrategy: \"SpotWithPriceLimit\",\n securityGroupId: \"sg-zxcvj0lasdf102350asdf9a\",\n systemDiskCategory: \"cloud_ssd\",\n systemDiskDescription: \"test disk\",\n systemDiskName: \"hello\",\n systemDiskSize: 40,\n resourceGroupId: \"rg-zkdfjahg9zxncv0\",\n userdata: \"xxxxxxxxxxxxxx\",\n vswitchId: \"sw-ljkngaksdjfj0nnasdf\",\n vpcId: \"vpc-asdfnbg0as8dfk1nb2\",\n zoneId: \"beijing-a\",\n tags: {\n tag1: \"hello\",\n tag2: \"world\",\n },\n networkInterfaces: {\n name: \"eth0\",\n description: \"hello1\",\n primaryIp: \"10.0.0.2\",\n securityGroupId: \"xxxx\",\n vswitchId: \"xxxxxxx\",\n },\n dataDisks: [\n {\n name: \"disk1\",\n description: \"test1\",\n },\n {\n name: \"disk2\",\n description: \"test2\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nimages = alicloud.ecs.get_images(owners=\"system\")\ninstances = alicloud.ecs.get_instances()\ntemplate = alicloud.ecs.LaunchTemplate(\"template\",\n name=\"tf-test-template\",\n description=\"test1\",\n image_id=images.images[0].id,\n host_name=\"tf-test-host\",\n instance_charge_type=\"PrePaid\",\n instance_name=\"tf-instance-name\",\n instance_type=instances.instances[0].instance_type,\n internet_charge_type=\"PayByBandwidth\",\n internet_max_bandwidth_in=5,\n internet_max_bandwidth_out=0,\n io_optimized=\"none\",\n key_pair_name=\"test-key-pair\",\n ram_role_name=\"xxxxx\",\n network_type=\"vpc\",\n security_enhancement_strategy=\"Active\",\n spot_price_limit=5,\n spot_strategy=\"SpotWithPriceLimit\",\n security_group_id=\"sg-zxcvj0lasdf102350asdf9a\",\n system_disk_category=\"cloud_ssd\",\n system_disk_description=\"test disk\",\n system_disk_name=\"hello\",\n system_disk_size=40,\n resource_group_id=\"rg-zkdfjahg9zxncv0\",\n userdata=\"xxxxxxxxxxxxxx\",\n vswitch_id=\"sw-ljkngaksdjfj0nnasdf\",\n vpc_id=\"vpc-asdfnbg0as8dfk1nb2\",\n zone_id=\"beijing-a\",\n tags={\n \"tag1\": \"hello\",\n \"tag2\": \"world\",\n },\n network_interfaces={\n \"name\": \"eth0\",\n \"description\": \"hello1\",\n \"primary_ip\": \"10.0.0.2\",\n \"security_group_id\": \"xxxx\",\n \"vswitch_id\": \"xxxxxxx\",\n },\n data_disks=[\n {\n \"name\": \"disk1\",\n \"description\": \"test1\",\n },\n {\n \"name\": \"disk2\",\n \"description\": \"test2\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var images = AliCloud.Ecs.GetImages.Invoke(new()\n {\n Owners = \"system\",\n });\n\n var instances = AliCloud.Ecs.GetInstances.Invoke();\n\n var template = new AliCloud.Ecs.LaunchTemplate(\"template\", new()\n {\n Name = \"tf-test-template\",\n Description = \"test1\",\n ImageId = images.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n HostName = \"tf-test-host\",\n InstanceChargeType = \"PrePaid\",\n InstanceName = \"tf-instance-name\",\n InstanceType = instances.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.InstanceType),\n InternetChargeType = \"PayByBandwidth\",\n InternetMaxBandwidthIn = 5,\n InternetMaxBandwidthOut = 0,\n IoOptimized = \"none\",\n KeyPairName = \"test-key-pair\",\n RamRoleName = \"xxxxx\",\n NetworkType = \"vpc\",\n SecurityEnhancementStrategy = \"Active\",\n SpotPriceLimit = 5,\n SpotStrategy = \"SpotWithPriceLimit\",\n SecurityGroupId = \"sg-zxcvj0lasdf102350asdf9a\",\n SystemDiskCategory = \"cloud_ssd\",\n SystemDiskDescription = \"test disk\",\n SystemDiskName = \"hello\",\n SystemDiskSize = 40,\n ResourceGroupId = \"rg-zkdfjahg9zxncv0\",\n Userdata = \"xxxxxxxxxxxxxx\",\n VswitchId = \"sw-ljkngaksdjfj0nnasdf\",\n VpcId = \"vpc-asdfnbg0as8dfk1nb2\",\n ZoneId = \"beijing-a\",\n Tags = \n {\n { \"tag1\", \"hello\" },\n { \"tag2\", \"world\" },\n },\n NetworkInterfaces = new AliCloud.Ecs.Inputs.LaunchTemplateNetworkInterfacesArgs\n {\n Name = \"eth0\",\n Description = \"hello1\",\n PrimaryIp = \"10.0.0.2\",\n SecurityGroupId = \"xxxx\",\n VswitchId = \"xxxxxxx\",\n },\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.LaunchTemplateDataDiskArgs\n {\n Name = \"disk1\",\n Description = \"test1\",\n },\n new AliCloud.Ecs.Inputs.LaunchTemplateDataDiskArgs\n {\n Name = \"disk2\",\n Description = \"test2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\timages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinstances, err := ecs.GetInstances(ctx, \u0026ecs.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewLaunchTemplate(ctx, \"template\", \u0026ecs.LaunchTemplateArgs{\n\t\t\tName: pulumi.String(\"tf-test-template\"),\n\t\t\tDescription: pulumi.String(\"test1\"),\n\t\t\tImageId: pulumi.String(images.Images[0].Id),\n\t\t\tHostName: pulumi.String(\"tf-test-host\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PrePaid\"),\n\t\t\tInstanceName: pulumi.String(\"tf-instance-name\"),\n\t\t\tInstanceType: pulumi.String(instances.Instances[0].InstanceType),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tInternetMaxBandwidthIn: pulumi.Int(5),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(0),\n\t\t\tIoOptimized: pulumi.String(\"none\"),\n\t\t\tKeyPairName: pulumi.String(\"test-key-pair\"),\n\t\t\tRamRoleName: pulumi.String(\"xxxxx\"),\n\t\t\tNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSecurityEnhancementStrategy: pulumi.String(\"Active\"),\n\t\t\tSpotPriceLimit: pulumi.Float64(5),\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSecurityGroupId: pulumi.String(\"sg-zxcvj0lasdf102350asdf9a\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\tSystemDiskDescription: pulumi.String(\"test disk\"),\n\t\t\tSystemDiskName: pulumi.String(\"hello\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tResourceGroupId: pulumi.String(\"rg-zkdfjahg9zxncv0\"),\n\t\t\tUserdata: pulumi.String(\"xxxxxxxxxxxxxx\"),\n\t\t\tVswitchId: pulumi.String(\"sw-ljkngaksdjfj0nnasdf\"),\n\t\t\tVpcId: pulumi.String(\"vpc-asdfnbg0as8dfk1nb2\"),\n\t\t\tZoneId: pulumi.String(\"beijing-a\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"tag1\": pulumi.String(\"hello\"),\n\t\t\t\t\"tag2\": pulumi.String(\"world\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: \u0026ecs.LaunchTemplateNetworkInterfacesArgs{\n\t\t\t\tName: pulumi.String(\"eth0\"),\n\t\t\t\tDescription: pulumi.String(\"hello1\"),\n\t\t\t\tPrimaryIp: pulumi.String(\"10.0.0.2\"),\n\t\t\t\tSecurityGroupId: pulumi.String(\"xxxx\"),\n\t\t\t\tVswitchId: pulumi.String(\"xxxxxxx\"),\n\t\t\t},\n\t\t\tDataDisks: ecs.LaunchTemplateDataDiskArray{\n\t\t\t\t\u0026ecs.LaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk1\"),\n\t\t\t\t\tDescription: pulumi.String(\"test1\"),\n\t\t\t\t},\n\t\t\t\t\u0026ecs.LaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk2\"),\n\t\t\t\t\tDescription: pulumi.String(\"test2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.ecs.LaunchTemplate;\nimport com.pulumi.alicloud.ecs.LaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.inputs.LaunchTemplateNetworkInterfacesArgs;\nimport com.pulumi.alicloud.ecs.inputs.LaunchTemplateDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var images = EcsFunctions.getImages(GetImagesArgs.builder()\n .owners(\"system\")\n .build());\n\n final var instances = EcsFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n var template = new LaunchTemplate(\"template\", LaunchTemplateArgs.builder()\n .name(\"tf-test-template\")\n .description(\"test1\")\n .imageId(images.images()[0].id())\n .hostName(\"tf-test-host\")\n .instanceChargeType(\"PrePaid\")\n .instanceName(\"tf-instance-name\")\n .instanceType(instances.instances()[0].instanceType())\n .internetChargeType(\"PayByBandwidth\")\n .internetMaxBandwidthIn(5)\n .internetMaxBandwidthOut(0)\n .ioOptimized(\"none\")\n .keyPairName(\"test-key-pair\")\n .ramRoleName(\"xxxxx\")\n .networkType(\"vpc\")\n .securityEnhancementStrategy(\"Active\")\n .spotPriceLimit(5.0)\n .spotStrategy(\"SpotWithPriceLimit\")\n .securityGroupId(\"sg-zxcvj0lasdf102350asdf9a\")\n .systemDiskCategory(\"cloud_ssd\")\n .systemDiskDescription(\"test disk\")\n .systemDiskName(\"hello\")\n .systemDiskSize(40)\n .resourceGroupId(\"rg-zkdfjahg9zxncv0\")\n .userdata(\"xxxxxxxxxxxxxx\")\n .vswitchId(\"sw-ljkngaksdjfj0nnasdf\")\n .vpcId(\"vpc-asdfnbg0as8dfk1nb2\")\n .zoneId(\"beijing-a\")\n .tags(Map.ofEntries(\n Map.entry(\"tag1\", \"hello\"),\n Map.entry(\"tag2\", \"world\")\n ))\n .networkInterfaces(LaunchTemplateNetworkInterfacesArgs.builder()\n .name(\"eth0\")\n .description(\"hello1\")\n .primaryIp(\"10.0.0.2\")\n .securityGroupId(\"xxxx\")\n .vswitchId(\"xxxxxxx\")\n .build())\n .dataDisks( \n LaunchTemplateDataDiskArgs.builder()\n .name(\"disk1\")\n .description(\"test1\")\n .build(),\n LaunchTemplateDataDiskArgs.builder()\n .name(\"disk2\")\n .description(\"test2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n template:\n type: alicloud:ecs:LaunchTemplate\n properties:\n name: tf-test-template\n description: test1\n imageId: ${images.images[0].id}\n hostName: tf-test-host\n instanceChargeType: PrePaid\n instanceName: tf-instance-name\n instanceType: ${instances.instances[0].instanceType}\n internetChargeType: PayByBandwidth\n internetMaxBandwidthIn: 5\n internetMaxBandwidthOut: 0\n ioOptimized: none\n keyPairName: test-key-pair\n ramRoleName: xxxxx\n networkType: vpc\n securityEnhancementStrategy: Active\n spotPriceLimit: 5\n spotStrategy: SpotWithPriceLimit\n securityGroupId: sg-zxcvj0lasdf102350asdf9a\n systemDiskCategory: cloud_ssd\n systemDiskDescription: test disk\n systemDiskName: hello\n systemDiskSize: 40\n resourceGroupId: rg-zkdfjahg9zxncv0\n userdata: xxxxxxxxxxxxxx\n vswitchId: sw-ljkngaksdjfj0nnasdf\n vpcId: vpc-asdfnbg0as8dfk1nb2\n zoneId: beijing-a\n tags:\n tag1: hello\n tag2: world\n networkInterfaces:\n name: eth0\n description: hello1\n primaryIp: 10.0.0.2\n securityGroupId: xxxx\n vswitchId: xxxxxxx\n dataDisks:\n - name: disk1\n description: test1\n - name: disk2\n description: test2\nvariables:\n images:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n owners: system\n instances:\n fn::invoke:\n function: alicloud:ecs:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nLaunch Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/launchTemplate:LaunchTemplate lt lt-abc1234567890000\n```\n\n",
+ "description": "Provides an ECS Launch Template resource.\n\nFor information about Launch Template and how to use it, see [Launch Template](https://www.alibabacloud.com/help/doc-detail/73916.html).\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.120.0`. Please use new resource alicloud_ecs_launch_template.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst images = alicloud.ecs.getImages({\n owners: \"system\",\n});\nconst instances = alicloud.ecs.getInstances({});\nconst template = new alicloud.ecs.LaunchTemplate(\"template\", {\n name: \"tf-test-template\",\n description: \"test1\",\n imageId: images.then(images =\u003e images.images?.[0]?.id),\n hostName: \"tf-test-host\",\n instanceChargeType: \"PrePaid\",\n instanceName: \"tf-instance-name\",\n instanceType: instances.then(instances =\u003e instances.instances?.[0]?.instanceType),\n internetChargeType: \"PayByBandwidth\",\n internetMaxBandwidthIn: 5,\n internetMaxBandwidthOut: 0,\n ioOptimized: \"none\",\n keyPairName: \"test-key-pair\",\n ramRoleName: \"xxxxx\",\n networkType: \"vpc\",\n securityEnhancementStrategy: \"Active\",\n spotPriceLimit: 5,\n spotStrategy: \"SpotWithPriceLimit\",\n securityGroupId: \"sg-zxcvj0lasdf102350asdf9a\",\n systemDiskCategory: \"cloud_ssd\",\n systemDiskDescription: \"test disk\",\n systemDiskName: \"hello\",\n systemDiskSize: 40,\n resourceGroupId: \"rg-zkdfjahg9zxncv0\",\n userdata: \"xxxxxxxxxxxxxx\",\n vswitchId: \"sw-ljkngaksdjfj0nnasdf\",\n vpcId: \"vpc-asdfnbg0as8dfk1nb2\",\n zoneId: \"beijing-a\",\n tags: {\n tag1: \"hello\",\n tag2: \"world\",\n },\n networkInterfaces: {\n name: \"eth0\",\n description: \"hello1\",\n primaryIp: \"10.0.0.2\",\n securityGroupId: \"xxxx\",\n vswitchId: \"xxxxxxx\",\n },\n dataDisks: [\n {\n name: \"disk1\",\n description: \"test1\",\n },\n {\n name: \"disk2\",\n description: \"test2\",\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nimages = alicloud.ecs.get_images(owners=\"system\")\ninstances = alicloud.ecs.get_instances()\ntemplate = alicloud.ecs.LaunchTemplate(\"template\",\n name=\"tf-test-template\",\n description=\"test1\",\n image_id=images.images[0].id,\n host_name=\"tf-test-host\",\n instance_charge_type=\"PrePaid\",\n instance_name=\"tf-instance-name\",\n instance_type=instances.instances[0].instance_type,\n internet_charge_type=\"PayByBandwidth\",\n internet_max_bandwidth_in=5,\n internet_max_bandwidth_out=0,\n io_optimized=\"none\",\n key_pair_name=\"test-key-pair\",\n ram_role_name=\"xxxxx\",\n network_type=\"vpc\",\n security_enhancement_strategy=\"Active\",\n spot_price_limit=5,\n spot_strategy=\"SpotWithPriceLimit\",\n security_group_id=\"sg-zxcvj0lasdf102350asdf9a\",\n system_disk_category=\"cloud_ssd\",\n system_disk_description=\"test disk\",\n system_disk_name=\"hello\",\n system_disk_size=40,\n resource_group_id=\"rg-zkdfjahg9zxncv0\",\n userdata=\"xxxxxxxxxxxxxx\",\n vswitch_id=\"sw-ljkngaksdjfj0nnasdf\",\n vpc_id=\"vpc-asdfnbg0as8dfk1nb2\",\n zone_id=\"beijing-a\",\n tags={\n \"tag1\": \"hello\",\n \"tag2\": \"world\",\n },\n network_interfaces={\n \"name\": \"eth0\",\n \"description\": \"hello1\",\n \"primary_ip\": \"10.0.0.2\",\n \"security_group_id\": \"xxxx\",\n \"vswitch_id\": \"xxxxxxx\",\n },\n data_disks=[\n {\n \"name\": \"disk1\",\n \"description\": \"test1\",\n },\n {\n \"name\": \"disk2\",\n \"description\": \"test2\",\n },\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var images = AliCloud.Ecs.GetImages.Invoke(new()\n {\n Owners = \"system\",\n });\n\n var instances = AliCloud.Ecs.GetInstances.Invoke();\n\n var template = new AliCloud.Ecs.LaunchTemplate(\"template\", new()\n {\n Name = \"tf-test-template\",\n Description = \"test1\",\n ImageId = images.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n HostName = \"tf-test-host\",\n InstanceChargeType = \"PrePaid\",\n InstanceName = \"tf-instance-name\",\n InstanceType = instances.Apply(getInstancesResult =\u003e getInstancesResult.Instances[0]?.InstanceType),\n InternetChargeType = \"PayByBandwidth\",\n InternetMaxBandwidthIn = 5,\n InternetMaxBandwidthOut = 0,\n IoOptimized = \"none\",\n KeyPairName = \"test-key-pair\",\n RamRoleName = \"xxxxx\",\n NetworkType = \"vpc\",\n SecurityEnhancementStrategy = \"Active\",\n SpotPriceLimit = 5,\n SpotStrategy = \"SpotWithPriceLimit\",\n SecurityGroupId = \"sg-zxcvj0lasdf102350asdf9a\",\n SystemDiskCategory = \"cloud_ssd\",\n SystemDiskDescription = \"test disk\",\n SystemDiskName = \"hello\",\n SystemDiskSize = 40,\n ResourceGroupId = \"rg-zkdfjahg9zxncv0\",\n Userdata = \"xxxxxxxxxxxxxx\",\n VswitchId = \"sw-ljkngaksdjfj0nnasdf\",\n VpcId = \"vpc-asdfnbg0as8dfk1nb2\",\n ZoneId = \"beijing-a\",\n Tags = \n {\n { \"tag1\", \"hello\" },\n { \"tag2\", \"world\" },\n },\n NetworkInterfaces = new AliCloud.Ecs.Inputs.LaunchTemplateNetworkInterfacesArgs\n {\n Name = \"eth0\",\n Description = \"hello1\",\n PrimaryIp = \"10.0.0.2\",\n SecurityGroupId = \"xxxx\",\n VswitchId = \"xxxxxxx\",\n },\n DataDisks = new[]\n {\n new AliCloud.Ecs.Inputs.LaunchTemplateDataDiskArgs\n {\n Name = \"disk1\",\n Description = \"test1\",\n },\n new AliCloud.Ecs.Inputs.LaunchTemplateDataDiskArgs\n {\n Name = \"disk2\",\n Description = \"test2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\timages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinstances, err := ecs.GetInstances(ctx, \u0026ecs.GetInstancesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewLaunchTemplate(ctx, \"template\", \u0026ecs.LaunchTemplateArgs{\n\t\t\tName: pulumi.String(\"tf-test-template\"),\n\t\t\tDescription: pulumi.String(\"test1\"),\n\t\t\tImageId: pulumi.String(images.Images[0].Id),\n\t\t\tHostName: pulumi.String(\"tf-test-host\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PrePaid\"),\n\t\t\tInstanceName: pulumi.String(\"tf-instance-name\"),\n\t\t\tInstanceType: pulumi.String(instances.Instances[0].InstanceType),\n\t\t\tInternetChargeType: pulumi.String(\"PayByBandwidth\"),\n\t\t\tInternetMaxBandwidthIn: pulumi.Int(5),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(0),\n\t\t\tIoOptimized: pulumi.String(\"none\"),\n\t\t\tKeyPairName: pulumi.String(\"test-key-pair\"),\n\t\t\tRamRoleName: pulumi.String(\"xxxxx\"),\n\t\t\tNetworkType: pulumi.String(\"vpc\"),\n\t\t\tSecurityEnhancementStrategy: pulumi.String(\"Active\"),\n\t\t\tSpotPriceLimit: pulumi.Float64(5),\n\t\t\tSpotStrategy: pulumi.String(\"SpotWithPriceLimit\"),\n\t\t\tSecurityGroupId: pulumi.String(\"sg-zxcvj0lasdf102350asdf9a\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_ssd\"),\n\t\t\tSystemDiskDescription: pulumi.String(\"test disk\"),\n\t\t\tSystemDiskName: pulumi.String(\"hello\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tResourceGroupId: pulumi.String(\"rg-zkdfjahg9zxncv0\"),\n\t\t\tUserdata: pulumi.String(\"xxxxxxxxxxxxxx\"),\n\t\t\tVswitchId: pulumi.String(\"sw-ljkngaksdjfj0nnasdf\"),\n\t\t\tVpcId: pulumi.String(\"vpc-asdfnbg0as8dfk1nb2\"),\n\t\t\tZoneId: pulumi.String(\"beijing-a\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"tag1\": pulumi.String(\"hello\"),\n\t\t\t\t\"tag2\": pulumi.String(\"world\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: \u0026ecs.LaunchTemplateNetworkInterfacesArgs{\n\t\t\t\tName: pulumi.String(\"eth0\"),\n\t\t\t\tDescription: pulumi.String(\"hello1\"),\n\t\t\t\tPrimaryIp: pulumi.String(\"10.0.0.2\"),\n\t\t\t\tSecurityGroupId: pulumi.String(\"xxxx\"),\n\t\t\t\tVswitchId: pulumi.String(\"xxxxxxx\"),\n\t\t\t},\n\t\t\tDataDisks: ecs.LaunchTemplateDataDiskArray{\n\t\t\t\t\u0026ecs.LaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk1\"),\n\t\t\t\t\tDescription: pulumi.String(\"test1\"),\n\t\t\t\t},\n\t\t\t\t\u0026ecs.LaunchTemplateDataDiskArgs{\n\t\t\t\t\tName: pulumi.String(\"disk2\"),\n\t\t\t\t\tDescription: pulumi.String(\"test2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;\nimport com.pulumi.alicloud.ecs.LaunchTemplate;\nimport com.pulumi.alicloud.ecs.LaunchTemplateArgs;\nimport com.pulumi.alicloud.ecs.inputs.LaunchTemplateNetworkInterfacesArgs;\nimport com.pulumi.alicloud.ecs.inputs.LaunchTemplateDataDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var images = EcsFunctions.getImages(GetImagesArgs.builder()\n .owners(\"system\")\n .build());\n\n final var instances = EcsFunctions.getInstances(GetInstancesArgs.builder()\n .build());\n\n var template = new LaunchTemplate(\"template\", LaunchTemplateArgs.builder()\n .name(\"tf-test-template\")\n .description(\"test1\")\n .imageId(images.images()[0].id())\n .hostName(\"tf-test-host\")\n .instanceChargeType(\"PrePaid\")\n .instanceName(\"tf-instance-name\")\n .instanceType(instances.instances()[0].instanceType())\n .internetChargeType(\"PayByBandwidth\")\n .internetMaxBandwidthIn(5)\n .internetMaxBandwidthOut(0)\n .ioOptimized(\"none\")\n .keyPairName(\"test-key-pair\")\n .ramRoleName(\"xxxxx\")\n .networkType(\"vpc\")\n .securityEnhancementStrategy(\"Active\")\n .spotPriceLimit(5.0)\n .spotStrategy(\"SpotWithPriceLimit\")\n .securityGroupId(\"sg-zxcvj0lasdf102350asdf9a\")\n .systemDiskCategory(\"cloud_ssd\")\n .systemDiskDescription(\"test disk\")\n .systemDiskName(\"hello\")\n .systemDiskSize(40)\n .resourceGroupId(\"rg-zkdfjahg9zxncv0\")\n .userdata(\"xxxxxxxxxxxxxx\")\n .vswitchId(\"sw-ljkngaksdjfj0nnasdf\")\n .vpcId(\"vpc-asdfnbg0as8dfk1nb2\")\n .zoneId(\"beijing-a\")\n .tags(Map.ofEntries(\n Map.entry(\"tag1\", \"hello\"),\n Map.entry(\"tag2\", \"world\")\n ))\n .networkInterfaces(LaunchTemplateNetworkInterfacesArgs.builder()\n .name(\"eth0\")\n .description(\"hello1\")\n .primaryIp(\"10.0.0.2\")\n .securityGroupId(\"xxxx\")\n .vswitchId(\"xxxxxxx\")\n .build())\n .dataDisks( \n LaunchTemplateDataDiskArgs.builder()\n .name(\"disk1\")\n .description(\"test1\")\n .build(),\n LaunchTemplateDataDiskArgs.builder()\n .name(\"disk2\")\n .description(\"test2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n template:\n type: alicloud:ecs:LaunchTemplate\n properties:\n name: tf-test-template\n description: test1\n imageId: ${images.images[0].id}\n hostName: tf-test-host\n instanceChargeType: PrePaid\n instanceName: tf-instance-name\n instanceType: ${instances.instances[0].instanceType}\n internetChargeType: PayByBandwidth\n internetMaxBandwidthIn: 5\n internetMaxBandwidthOut: 0\n ioOptimized: none\n keyPairName: test-key-pair\n ramRoleName: xxxxx\n networkType: vpc\n securityEnhancementStrategy: Active\n spotPriceLimit: 5\n spotStrategy: SpotWithPriceLimit\n securityGroupId: sg-zxcvj0lasdf102350asdf9a\n systemDiskCategory: cloud_ssd\n systemDiskDescription: test disk\n systemDiskName: hello\n systemDiskSize: 40\n resourceGroupId: rg-zkdfjahg9zxncv0\n userdata: xxxxxxxxxxxxxx\n vswitchId: sw-ljkngaksdjfj0nnasdf\n vpcId: vpc-asdfnbg0as8dfk1nb2\n zoneId: beijing-a\n tags:\n tag1: hello\n tag2: world\n networkInterfaces:\n name: eth0\n description: hello1\n primaryIp: 10.0.0.2\n securityGroupId: xxxx\n vswitchId: xxxxxxx\n dataDisks:\n - name: disk1\n description: test1\n - name: disk2\n description: test2\nvariables:\n images:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n owners: system\n instances:\n fn::invoke:\n function: alicloud:ecs:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nLaunch Template can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/launchTemplate:LaunchTemplate lt lt-abc1234567890000\n```\n\n",
"properties": {
"autoReleaseTime": {
"type": "string",
@@ -161110,7 +163752,7 @@
}
},
"alicloud:ecs/ramRoleAttachment:RamRoleAttachment": {
- "description": "Provides a ECS Ram Role Attachment resource.\n\nMount RAM role.\n\nFor information about ECS Ram Role Attachment and how to use it, see [What is Ram Role Attachment](https://next.api.alibabacloud.com/document/Ecs/2014-05-26/AttachInstanceRamRole).\n\n\u003e **NOTE:** Available since v1.250.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n}));\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultRole = new alicloud.ram.Role(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n document: `\\\\t\\\\t{\n\\\\t\\\\t\\\\t\\\\\"Statement\\\\\": [\n\\\\t\\\\t\\\\t\\\\t{\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Action\\\\\": \\\\\"sts:AssumeRole\\\\\",\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Effect\\\\\": \\\\\"Allow\\\\\",\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Principal\\\\\": {\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Service\\\\\": [\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"ecs.aliyuncs.com\\\\\"\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t]\n\\\\t\\\\t\\\\t\\\\t\\\\t}\n\\\\t\\\\t\\\\t\\\\t}\n\\\\t\\\\t \\\\t],\n\\\\t\\\\t\\\\t\\\\\"Version\\\\\": \\\\\"1\\\\\"\n\\\\t\\\\t}\n`,\n force: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst defaultRamRoleAttachment = new alicloud.ecs.RamRoleAttachment(\"default\", {\n ramRoleName: defaultRole.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_role = alicloud.ram.Role(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n document=\"\"\"\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n\"\"\",\n force=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id,\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault_ram_role_attachment = alicloud.ecs.RamRoleAttachment(\"default\",\n ram_role_name=default_role.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultRole = new AliCloud.Ram.Role(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n Document = @\"\\t\\t{\n\\t\\t\\t\\\"\"Statement\\\"\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"\"Action\\\"\": \\\"\"sts:AssumeRole\\\"\",\n\\t\\t\\t\\t\\t\\\"\"Effect\\\"\": \\\"\"Allow\\\"\",\n\\t\\t\\t\\t\\t\\\"\"Principal\\\"\": {\n\\t\\t\\t\\t\\t\\t\\\"\"Service\\\"\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"\"ecs.aliyuncs.com\\\"\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"\"Version\\\"\": \\\"\"1\\\"\"\n\\t\\t}\n\",\n Force = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultRamRoleAttachment = new AliCloud.Ecs.RamRoleAttachment(\"default\", new()\n {\n RamRoleName = defaultRole.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\ndefaultRole, err := ram.NewRole(ctx, \"default\", \u0026ram.RoleArgs{\nName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nDocument: pulumi.String(`\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n`),\nForce: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\nInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewRamRoleAttachment(ctx, \"default\", \u0026ecs.RamRoleAttachmentArgs{\nRamRoleName: defaultRole.ID(),\nInstanceId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ram.Role;\nimport com.pulumi.alicloud.ram.RoleArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.RamRoleAttachment;\nimport com.pulumi.alicloud.ecs.RamRoleAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultRole = new Role(\"defaultRole\", RoleArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .document(\"\"\"\n\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n \"\"\")\n .force(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultRamRoleAttachment = new RamRoleAttachment(\"defaultRamRoleAttachment\", RamRoleAttachmentArgs.builder()\n .ramRoleName(defaultRole.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Ram Role Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ramRoleAttachment:RamRoleAttachment example \u003cinstance_id\u003e:\u003cram_role_name\u003e\n```\n\n",
+ "description": "Provides a ECS Ram Role Attachment resource.\n\nMount RAM role.\n\nFor information about ECS Ram Role Attachment and how to use it, see [What is Ram Role Attachment](https://next.api.alibabacloud.com/document/Ecs/2014-05-26/AttachInstanceRamRole).\n\n\u003e **NOTE:** Available since v1.250.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.getZones({\n availableDiskCategory: \"cloud_efficiency\",\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = Promise.all([_default, defaultGetImages]).then(([_default, defaultGetImages]) =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n imageId: defaultGetImages.images?.[0]?.id,\n}));\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultRole = new alicloud.ram.Role(\"default\", {\n name: `${name}-${defaultInteger.result}`,\n document: `\\\\t\\\\t{\n\\\\t\\\\t\\\\t\\\\\"Statement\\\\\": [\n\\\\t\\\\t\\\\t\\\\t{\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Action\\\\\": \\\\\"sts:AssumeRole\\\\\",\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Effect\\\\\": \\\\\"Allow\\\\\",\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Principal\\\\\": {\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"Service\\\\\": [\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\"ecs.aliyuncs.com\\\\\"\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t]\n\\\\t\\\\t\\\\t\\\\t\\\\t}\n\\\\t\\\\t\\\\t\\\\t}\n\\\\t\\\\t \\\\t],\n\\\\t\\\\t\\\\t\\\\\"Version\\\\\": \\\\\"1\\\\\"\n\\\\t\\\\t}\n`,\n force: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"192.168.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: `${name}-${defaultInteger.result}`,\n vpcId: defaultNetwork.id,\n cidrBlock: \"192.168.192.0/24\",\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup].map(__item =\u003e __item.id),\n internetChargeType: \"PayByTraffic\",\n internetMaxBandwidthOut: 10,\n availabilityZone: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.availabilityZones?.[0]),\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n vswitchId: defaultSwitch.id,\n instanceName: `${name}-${defaultInteger.result}`,\n});\nconst defaultRamRoleAttachment = new alicloud.ecs.RamRoleAttachment(\"default\", {\n ramRoleName: defaultRole.id,\n instanceId: defaultInstance.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.get_zones(available_disk_category=\"cloud_efficiency\",\n available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n image_id=default_get_images.images[0].id)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_role = alicloud.ram.Role(\"default\",\n name=f\"{name}-{default_integer['result']}\",\n document=\"\"\"\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n\"\"\",\n force=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"192.168.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=f\"{name}-{default_integer['result']}\",\n vpc_id=default_network.id,\n cidr_block=\"192.168.192.0/24\",\n zone_id=default.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[__item.id for __item in [default_security_group]],\n internet_charge_type=\"PayByTraffic\",\n internet_max_bandwidth_out=10,\n availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\",\n vswitch_id=default_switch.id,\n instance_name=f\"{name}-{default_integer['result']}\")\ndefault_ram_role_attachment = alicloud.ecs.RamRoleAttachment(\"default\",\n ram_role_name=default_role.id,\n instance_id=default_instance.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableDiskCategory = \"cloud_efficiency\",\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultRole = new AliCloud.Ram.Role(\"default\", new()\n {\n Name = $\"{name}-{defaultInteger.Result}\",\n Document = @\"\\t\\t{\n\\t\\t\\t\\\"\"Statement\\\"\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"\"Action\\\"\": \\\"\"sts:AssumeRole\\\"\",\n\\t\\t\\t\\t\\t\\\"\"Effect\\\"\": \\\"\"Allow\\\"\",\n\\t\\t\\t\\t\\t\\\"\"Principal\\\"\": {\n\\t\\t\\t\\t\\t\\t\\\"\"Service\\\"\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"\"ecs.aliyuncs.com\\\"\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"\"Version\\\"\": \\\"\"1\\\"\"\n\\t\\t}\n\",\n Force = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"192.168.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = $\"{name}-{defaultInteger.Result}\",\n VpcId = defaultNetwork.Id,\n CidrBlock = \"192.168.192.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup,\n }.Select(__item =\u003e __item.Id).ToList(),\n InternetChargeType = \"PayByTraffic\",\n InternetMaxBandwidthOut = 10,\n AvailabilityZone = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0]),\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n VswitchId = defaultSwitch.Id,\n InstanceName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultRamRoleAttachment = new AliCloud.Ecs.RamRoleAttachment(\"default\", new()\n {\n RamRoleName = defaultRole.Id,\n InstanceId = defaultInstance.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncfg := config.New(ctx, \"\")\nname := \"terraform-example\";\nif param := cfg.Get(\"name\"); param != \"\"{\nname = param\n}\n_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\nAvailableDiskCategory: pulumi.StringRef(\"cloud_efficiency\"),\nAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\nMostRecent: pulumi.BoolRef(true),\nOwners: pulumi.StringRef(\"system\"),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\nAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\nImageId: pulumi.StringRef(defaultGetImages.Images[0].Id),\n}, nil);\nif err != nil {\nreturn err\n}\ndefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\nMin: 10000,\nMax: 99999,\n})\nif err != nil {\nreturn err\n}\ndefaultRole, err := ram.NewRole(ctx, \"default\", \u0026ram.RoleArgs{\nName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nDocument: pulumi.String(`\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n`),\nForce: pulumi.Bool(true),\n})\nif err != nil {\nreturn err\n}\ndefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\nVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n})\nif err != nil {\nreturn err\n}\ndefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\nVswitchName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\nVpcId: defaultNetwork.ID(),\nCidrBlock: pulumi.String(\"192.168.192.0/24\"),\nZoneId: pulumi.String(_default.Zones[0].Id),\n})\nif err != nil {\nreturn err\n}\ndefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\nVpcId: defaultNetwork.ID(),\n})\nif err != nil {\nreturn err\n}\nvar splat0 pulumi.StringArray\nfor _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {\nsplat0 = append(splat0, val0.ID())\n}\ndefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\nImageId: pulumi.String(defaultGetImages.Images[0].Id),\nInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\nSecurityGroups: splat0,\nInternetChargeType: pulumi.String(\"PayByTraffic\"),\nInternetMaxBandwidthOut: pulumi.Int(10),\nAvailabilityZone: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].AvailabilityZones[0]),\nInstanceChargeType: pulumi.String(\"PostPaid\"),\nSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\nVswitchId: defaultSwitch.ID(),\nInstanceName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n})\nif err != nil {\nreturn err\n}\n_, err = ecs.NewRamRoleAttachment(ctx, \"default\", \u0026ecs.RamRoleAttachmentArgs{\nRamRoleName: defaultRole.ID(),\nInstanceId: defaultInstance.ID(),\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.ram.Role;\nimport com.pulumi.alicloud.ram.RoleArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.ecs.RamRoleAttachment;\nimport com.pulumi.alicloud.ecs.RamRoleAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableDiskCategory(\"cloud_efficiency\")\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .imageId(defaultGetImages.images()[0].id())\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultRole = new Role(\"defaultRole\", RoleArgs.builder()\n .name(String.format(\"%s-%s\", name,defaultInteger.result()))\n .document(\"\"\"\n\\t\\t{\n\\t\\t\\t\\\"Statement\\\": [\n\\t\\t\\t\\t{\n\\t\\t\\t\\t\\t\\\"Action\\\": \\\"sts:AssumeRole\\\",\n\\t\\t\\t\\t\\t\\\"Effect\\\": \\\"Allow\\\",\n\\t\\t\\t\\t\\t\\\"Principal\\\": {\n\\t\\t\\t\\t\\t\\t\\\"Service\\\": [\n\\t\\t\\t\\t\\t\\t\\t\\\"ecs.aliyuncs.com\\\"\n\\t\\t\\t\\t\\t\\t]\n\\t\\t\\t\\t\\t}\n\\t\\t\\t\\t}\n\\t\\t \\t],\n\\t\\t\\t\\\"Version\\\": \\\"1\\\"\n\\t\\t}\n \"\"\")\n .force(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"192.168.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"192.168.192.0/24\")\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.stream().map(element -\u003e element.id()).collect(toList()))\n .internetChargeType(\"PayByTraffic\")\n .internetMaxBandwidthOut(10)\n .availabilityZone(defaultGetInstanceTypes.instanceTypes()[0].availabilityZones()[0])\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .vswitchId(defaultSwitch.id())\n .instanceName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultRamRoleAttachment = new RamRoleAttachment(\"defaultRamRoleAttachment\", RamRoleAttachmentArgs.builder()\n .ramRoleName(defaultRole.id())\n .instanceId(defaultInstance.id())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Ram Role Attachment can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/ramRoleAttachment:RamRoleAttachment example \u003cinstance_id\u003e:\u003cram_role_name\u003e\n```\n\n",
"properties": {
"instanceId": {
"type": "string",
@@ -161171,7 +163813,7 @@
}
},
"alicloud:ecs/reservedInstance:ReservedInstance": {
- "description": "Provides an Reserved Instance resource.\n\n\u003e **NOTE:** Available since v1.65.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.g6\",\n});\nconst defaultReservedInstance = new alicloud.ecs.ReservedInstance(\"default\", {\n instanceType: _default.then(_default =\u003e _default.instanceTypes?.[0]?.id),\n instanceAmount: 1,\n periodUnit: \"Month\",\n offeringType: \"All Upfront\",\n reservedInstanceName: \"terraform-example\",\n description: \"ReservedInstance\",\n zoneId: _default.then(_default =\u003e _default.instanceTypes?.[0]?.availabilityZones?.[0]),\n scope: \"Zone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.g6\")\ndefault_reserved_instance = alicloud.ecs.ReservedInstance(\"default\",\n instance_type=default.instance_types[0].id,\n instance_amount=1,\n period_unit=\"Month\",\n offering_type=\"All Upfront\",\n reserved_instance_name=\"terraform-example\",\n description=\"ReservedInstance\",\n zone_id=default.instance_types[0].availability_zones[0],\n scope=\"Zone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.g6\",\n });\n\n var defaultReservedInstance = new AliCloud.Ecs.ReservedInstance(\"default\", new()\n {\n InstanceType = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n InstanceAmount = 1,\n PeriodUnit = \"Month\",\n OfferingType = \"All Upfront\",\n ReservedInstanceName = \"terraform-example\",\n Description = \"ReservedInstance\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0])),\n Scope = \"Zone\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewReservedInstance(ctx, \"default\", \u0026ecs.ReservedInstanceArgs{\n\t\t\tInstanceType: pulumi.String(_default.InstanceTypes[0].Id),\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tPeriodUnit: pulumi.String(\"Month\"),\n\t\t\tOfferingType: pulumi.String(\"All Upfront\"),\n\t\t\tReservedInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"ReservedInstance\"),\n\t\t\tZoneId: pulumi.String(_default.InstanceTypes[0].AvailabilityZones[0]),\n\t\t\tScope: pulumi.String(\"Zone\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.ReservedInstance;\nimport com.pulumi.alicloud.ecs.ReservedInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.g6\")\n .build());\n\n var defaultReservedInstance = new ReservedInstance(\"defaultReservedInstance\", ReservedInstanceArgs.builder()\n .instanceType(default_.instanceTypes()[0].id())\n .instanceAmount(1)\n .periodUnit(\"Month\")\n .offeringType(\"All Upfront\")\n .reservedInstanceName(\"terraform-example\")\n .description(\"ReservedInstance\")\n .zoneId(default_.instanceTypes()[0].availabilityZones()[0])\n .scope(\"Zone\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultReservedInstance:\n type: alicloud:ecs:ReservedInstance\n name: default\n properties:\n instanceType: ${default.instanceTypes[0].id}\n instanceAmount: '1'\n periodUnit: Month\n offeringType: All Upfront\n reservedInstanceName: terraform-example\n description: ReservedInstance\n zoneId: ${default.instanceTypes[0].availabilityZones[0]}\n scope: Zone\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.g6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nreservedInstance can be imported using id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/reservedInstance:ReservedInstance default ecsri-uf6df4xm0h3licit****\n```\n\n",
+ "description": "Provides an Reserved Instance resource.\n\n\u003e **NOTE:** Available since v1.65.0.\n\n## Example Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = alicloud.ecs.getInstanceTypes({\n instanceTypeFamily: \"ecs.g6\",\n});\nconst defaultReservedInstance = new alicloud.ecs.ReservedInstance(\"default\", {\n instanceType: _default.then(_default =\u003e _default.instanceTypes?.[0]?.id),\n instanceAmount: 1,\n periodUnit: \"Month\",\n offeringType: \"All Upfront\",\n reservedInstanceName: \"terraform-example\",\n description: \"ReservedInstance\",\n zoneId: _default.then(_default =\u003e _default.instanceTypes?.[0]?.availabilityZones?.[0]),\n scope: \"Zone\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.get_instance_types(instance_type_family=\"ecs.g6\")\ndefault_reserved_instance = alicloud.ecs.ReservedInstance(\"default\",\n instance_type=default.instance_types[0].id,\n instance_amount=1,\n period_unit=\"Month\",\n offering_type=\"All Upfront\",\n reserved_instance_name=\"terraform-example\",\n description=\"ReservedInstance\",\n zone_id=default.instance_types[0].availability_zones[0],\n scope=\"Zone\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n InstanceTypeFamily = \"ecs.g6\",\n });\n\n var defaultReservedInstance = new AliCloud.Ecs.ReservedInstance(\"default\", new()\n {\n InstanceType = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id)),\n InstanceAmount = 1,\n PeriodUnit = \"Month\",\n OfferingType = \"All Upfront\",\n ReservedInstanceName = \"terraform-example\",\n Description = \"ReservedInstance\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.AvailabilityZones[0])),\n Scope = \"Zone\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"ecs.g6\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewReservedInstance(ctx, \"default\", \u0026ecs.ReservedInstanceArgs{\n\t\t\tInstanceType: pulumi.String(_default.InstanceTypes[0].Id),\n\t\t\tInstanceAmount: pulumi.Int(1),\n\t\t\tPeriodUnit: pulumi.String(\"Month\"),\n\t\t\tOfferingType: pulumi.String(\"All Upfront\"),\n\t\t\tReservedInstanceName: pulumi.String(\"terraform-example\"),\n\t\t\tDescription: pulumi.String(\"ReservedInstance\"),\n\t\t\tZoneId: pulumi.String(_default.InstanceTypes[0].AvailabilityZones[0]),\n\t\t\tScope: pulumi.String(\"Zone\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.ecs.ReservedInstance;\nimport com.pulumi.alicloud.ecs.ReservedInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var default = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .instanceTypeFamily(\"ecs.g6\")\n .build());\n\n var defaultReservedInstance = new ReservedInstance(\"defaultReservedInstance\", ReservedInstanceArgs.builder()\n .instanceType(default_.instanceTypes()[0].id())\n .instanceAmount(1)\n .periodUnit(\"Month\")\n .offeringType(\"All Upfront\")\n .reservedInstanceName(\"terraform-example\")\n .description(\"ReservedInstance\")\n .zoneId(default_.instanceTypes()[0].availabilityZones()[0])\n .scope(\"Zone\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n defaultReservedInstance:\n type: alicloud:ecs:ReservedInstance\n name: default\n properties:\n instanceType: ${default.instanceTypes[0].id}\n instanceAmount: '1'\n periodUnit: Month\n offeringType: All Upfront\n reservedInstanceName: terraform-example\n description: ReservedInstance\n zoneId: ${default.instanceTypes[0].availabilityZones[0]}\n scope: Zone\nvariables:\n default:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n instanceTypeFamily: ecs.g6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nreservedInstance can be imported using id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/reservedInstance:ReservedInstance default ecsri-uf6df4xm0h3licit****\n```\n\n",
"properties": {
"allocationStatus": {
"type": "string",
@@ -161469,7 +164111,7 @@
}
},
"alicloud:ecs/securityGroup:SecurityGroup": {
- "description": "Provides a ECS Security Group resource.\n\n\n\nFor information about ECS Security Group and how to use it, see [What is Security Group](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-createsecuritygroup).\n\n\u003e **NOTE:** Available since v1.0.0.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-go=\"`ecs.SecurityGroup`\" pulumi-lang-python=\"`ecs.SecurityGroup`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroup`\"\u003e`alicloud.ecs.SecurityGroup`\u003c/span\u003e is used to build and manage a security group, and \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-go=\"`ecs.SecurityGroupRule`\" pulumi-lang-python=\"`ecs.SecurityGroupRule`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroupRule`\"\u003e`alicloud.ecs.SecurityGroupRule`\u003c/span\u003e can define ingress or egress rules for it.\n\n\u003e **NOTE:** From version 1.7.2, \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-go=\"`ecs.SecurityGroup`\" pulumi-lang-python=\"`ecs.SecurityGroup`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroup`\"\u003e`alicloud.ecs.SecurityGroup`\u003c/span\u003e has supported to segregate different ECS instance in which the same security group.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.SecurityGroup(\"default\", {securityGroupName: \"terraform-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.SecurityGroup(\"default\", security_group_name=\"terraform-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityGroup(\"default\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:SecurityGroup\n properties:\n securityGroupName: terraform-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nBasic Usage for VPC\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: \"terraform-example\",\n vpcId: _default.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.16.0.0/16\")\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=\"terraform-example\",\n vpc_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n VpcId = @default.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: _default.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .vpcId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: terraform-example\n cidrBlock: 172.16.0.0/16\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: terraform-example\n vpcId: ${default.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Module Support\n\nYou can use the existing security-group module \nto create a security group and add several rules one-click.\n\n## Import\n\nECS Security Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/securityGroup:SecurityGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Security Group resource.\n\n\n\nFor information about ECS Security Group and how to use it, see [What is Security Group](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-createsecuritygroup).\n\n\u003e **NOTE:** Available since v1.0.0.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-go=\"`ecs.SecurityGroup`\" pulumi-lang-python=\"`ecs.SecurityGroup`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroup`\"\u003e`alicloud.ecs.SecurityGroup`\u003c/span\u003e is used to build and manage a security group, and \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-go=\"`ecs.SecurityGroupRule`\" pulumi-lang-python=\"`ecs.SecurityGroupRule`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroupRule`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroupRule`\"\u003e`alicloud.ecs.SecurityGroupRule`\u003c/span\u003e can define ingress or egress rules for it.\n\n\u003e **NOTE:** From version 1.7.2, \u003cspan pulumi-lang-nodejs=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-dotnet=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-go=\"`ecs.SecurityGroup`\" pulumi-lang-python=\"`ecs.SecurityGroup`\" pulumi-lang-yaml=\"`alicloud.ecs.SecurityGroup`\" pulumi-lang-java=\"`alicloud.ecs.SecurityGroup`\"\u003e`alicloud.ecs.SecurityGroup`\u003c/span\u003e has supported to segregate different ECS instance in which the same security group.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.SecurityGroup(\"default\", {securityGroupName: \"terraform-example\"});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.SecurityGroup(\"default\", security_group_name=\"terraform-example\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityGroup(\"default\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:SecurityGroup\n properties:\n securityGroupName: terraform-example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nBasic Usage for VPC\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.vpc.Network(\"default\", {\n vpcName: \"terraform-example\",\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {\n securityGroupName: \"terraform-example\",\n vpcId: _default.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.vpc.Network(\"default\",\n vpc_name=\"terraform-example\",\n cidr_block=\"172.16.0.0/16\")\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\",\n security_group_name=\"terraform-example\",\n vpc_id=default.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = \"terraform-example\",\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"terraform-example\",\n VpcId = @default.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(\"terraform-example\"),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tVpcId: _default.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Network(\"default\", NetworkArgs.builder()\n .vpcName(\"terraform-example\")\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .securityGroupName(\"terraform-example\")\n .vpcId(default_.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:vpc:Network\n properties:\n vpcName: terraform-example\n cidrBlock: 172.16.0.0/16\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n securityGroupName: terraform-example\n vpcId: ${default.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Module Support\n\nYou can use the existing security-group module \nto create a security group and add several rules one-click.\n\n## Import\n\nECS Security Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/securityGroup:SecurityGroup example \u003cid\u003e\n```\n\n",
"properties": {
"createTime": {
"type": "string",
@@ -161626,7 +164268,7 @@
}
},
"alicloud:ecs/securityGroupRule:SecurityGroupRule": {
- "description": "Provides a Security Group Rule resource.\n\nFor information about Security Group Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/ecs/user-guide/security-group-rules).\n\n\u003e **NOTE:** Available since v0.1.0.\n\nRepresents a single \u003cspan pulumi-lang-nodejs=\"`ingress`\" pulumi-lang-dotnet=\"`Ingress`\" pulumi-lang-go=\"`ingress`\" pulumi-lang-python=\"`ingress`\" pulumi-lang-yaml=\"`ingress`\" pulumi-lang-java=\"`ingress`\"\u003e`ingress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e group rule, which can be added to external Security Groups.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`nicType`\" pulumi-lang-dotnet=\"`NicType`\" pulumi-lang-go=\"`nicType`\" pulumi-lang-python=\"`nic_type`\" pulumi-lang-yaml=\"`nicType`\" pulumi-lang-java=\"`nicType`\"\u003e`nic_type`\u003c/span\u003e should set to \u003cspan pulumi-lang-nodejs=\"`intranet`\" pulumi-lang-dotnet=\"`Intranet`\" pulumi-lang-go=\"`intranet`\" pulumi-lang-python=\"`intranet`\" pulumi-lang-yaml=\"`intranet`\" pulumi-lang-java=\"`intranet`\"\u003e`intranet`\u003c/span\u003e when security group type is \u003cspan pulumi-lang-nodejs=\"`vpc`\" pulumi-lang-dotnet=\"`Vpc`\" pulumi-lang-go=\"`vpc`\" pulumi-lang-python=\"`vpc`\" pulumi-lang-yaml=\"`vpc`\" pulumi-lang-java=\"`vpc`\"\u003e`vpc`\u003c/span\u003e or specifying the \u003cspan pulumi-lang-nodejs=\"`sourceSecurityGroupId`\" pulumi-lang-dotnet=\"`SourceSecurityGroupId`\" pulumi-lang-go=\"`sourceSecurityGroupId`\" pulumi-lang-python=\"`source_security_group_id`\" pulumi-lang-yaml=\"`sourceSecurityGroupId`\" pulumi-lang-java=\"`sourceSecurityGroupId`\"\u003e`source_security_group_id`\u003c/span\u003e. In this situation it does not distinguish between intranet and internet, the rule is effective on them both.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.SecurityGroup(\"default\", {securityGroupName: \"default\"});\nconst allowAllTcp = new alicloud.ecs.SecurityGroupRule(\"allow_all_tcp\", {\n type: \"ingress\",\n ipProtocol: \"tcp\",\n nicType: \"intranet\",\n policy: \"accept\",\n portRange: \"1/65535\",\n priority: 1,\n securityGroupId: _default.id,\n cidrIp: \"0.0.0.0/0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.SecurityGroup(\"default\", security_group_name=\"default\")\nallow_all_tcp = alicloud.ecs.SecurityGroupRule(\"allow_all_tcp\",\n type=\"ingress\",\n ip_protocol=\"tcp\",\n nic_type=\"intranet\",\n policy=\"accept\",\n port_range=\"1/65535\",\n priority=1,\n security_group_id=default.id,\n cidr_ip=\"0.0.0.0/0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"default\",\n });\n\n var allowAllTcp = new AliCloud.Ecs.SecurityGroupRule(\"allow_all_tcp\", new()\n {\n Type = \"ingress\",\n IpProtocol = \"tcp\",\n NicType = \"intranet\",\n Policy = \"accept\",\n PortRange = \"1/65535\",\n Priority = 1,\n SecurityGroupId = @default.Id,\n CidrIp = \"0.0.0.0/0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"default\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroupRule(ctx, \"allow_all_tcp\", \u0026ecs.SecurityGroupRuleArgs{\n\t\t\tType: pulumi.String(\"ingress\"),\n\t\t\tIpProtocol: pulumi.String(\"tcp\"),\n\t\t\tNicType: pulumi.String(\"intranet\"),\n\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\tPortRange: pulumi.String(\"1/65535\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tSecurityGroupId: _default.ID(),\n\t\t\tCidrIp: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroupRule;\nimport com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityGroup(\"default\", SecurityGroupArgs.builder()\n .securityGroupName(\"default\")\n .build());\n\n var allowAllTcp = new SecurityGroupRule(\"allowAllTcp\", SecurityGroupRuleArgs.builder()\n .type(\"ingress\")\n .ipProtocol(\"tcp\")\n .nicType(\"intranet\")\n .policy(\"accept\")\n .portRange(\"1/65535\")\n .priority(1)\n .securityGroupId(default_.id())\n .cidrIp(\"0.0.0.0/0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:SecurityGroup\n properties:\n securityGroupName: default\n allowAllTcp:\n type: alicloud:ecs:SecurityGroupRule\n name: allow_all_tcp\n properties:\n type: ingress\n ipProtocol: tcp\n nicType: intranet\n policy: accept\n portRange: 1/65535\n priority: 1\n securityGroupId: ${default.id}\n cidrIp: 0.0.0.0/0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Module Support\n\nYou can use the existing security-group module \nto create a security group and add several rules one-click.\n\n## Import\n\nSecurity Group Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/securityGroupRule:SecurityGroupRule example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Security Group Rule resource.\n\nFor information about Security Group Rule and how to use it, see [What is Rule](https://www.alibabacloud.com/help/en/ecs/user-guide/security-group-rules).\n\n\u003e **NOTE:** Available since v0.1.0.\n\nRepresents a single \u003cspan pulumi-lang-nodejs=\"`ingress`\" pulumi-lang-dotnet=\"`Ingress`\" pulumi-lang-go=\"`ingress`\" pulumi-lang-python=\"`ingress`\" pulumi-lang-yaml=\"`ingress`\" pulumi-lang-java=\"`ingress`\"\u003e`ingress`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`egress`\" pulumi-lang-dotnet=\"`Egress`\" pulumi-lang-go=\"`egress`\" pulumi-lang-python=\"`egress`\" pulumi-lang-yaml=\"`egress`\" pulumi-lang-java=\"`egress`\"\u003e`egress`\u003c/span\u003e group rule, which can be added to external Security Groups.\n\n\u003e **NOTE:** \u003cspan pulumi-lang-nodejs=\"`nicType`\" pulumi-lang-dotnet=\"`NicType`\" pulumi-lang-go=\"`nicType`\" pulumi-lang-python=\"`nic_type`\" pulumi-lang-yaml=\"`nicType`\" pulumi-lang-java=\"`nicType`\"\u003e`nic_type`\u003c/span\u003e should set to \u003cspan pulumi-lang-nodejs=\"`intranet`\" pulumi-lang-dotnet=\"`Intranet`\" pulumi-lang-go=\"`intranet`\" pulumi-lang-python=\"`intranet`\" pulumi-lang-yaml=\"`intranet`\" pulumi-lang-java=\"`intranet`\"\u003e`intranet`\u003c/span\u003e when security group type is \u003cspan pulumi-lang-nodejs=\"`vpc`\" pulumi-lang-dotnet=\"`Vpc`\" pulumi-lang-go=\"`vpc`\" pulumi-lang-python=\"`vpc`\" pulumi-lang-yaml=\"`vpc`\" pulumi-lang-java=\"`vpc`\"\u003e`vpc`\u003c/span\u003e or specifying the \u003cspan pulumi-lang-nodejs=\"`sourceSecurityGroupId`\" pulumi-lang-dotnet=\"`SourceSecurityGroupId`\" pulumi-lang-go=\"`sourceSecurityGroupId`\" pulumi-lang-python=\"`source_security_group_id`\" pulumi-lang-yaml=\"`sourceSecurityGroupId`\" pulumi-lang-java=\"`sourceSecurityGroupId`\"\u003e`source_security_group_id`\u003c/span\u003e. In this situation it does not distinguish between intranet and internet, the rule is effective on them both.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.SecurityGroup(\"default\", {securityGroupName: \"default\"});\nconst allowAllTcp = new alicloud.ecs.SecurityGroupRule(\"allow_all_tcp\", {\n type: \"ingress\",\n ipProtocol: \"tcp\",\n nicType: \"intranet\",\n policy: \"accept\",\n portRange: \"1/65535\",\n priority: 1,\n securityGroupId: _default.id,\n cidrIp: \"0.0.0.0/0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.SecurityGroup(\"default\", security_group_name=\"default\")\nallow_all_tcp = alicloud.ecs.SecurityGroupRule(\"allow_all_tcp\",\n type=\"ingress\",\n ip_protocol=\"tcp\",\n nic_type=\"intranet\",\n policy=\"accept\",\n port_range=\"1/65535\",\n priority=1,\n security_group_id=default.id,\n cidr_ip=\"0.0.0.0/0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n SecurityGroupName = \"default\",\n });\n\n var allowAllTcp = new AliCloud.Ecs.SecurityGroupRule(\"allow_all_tcp\", new()\n {\n Type = \"ingress\",\n IpProtocol = \"tcp\",\n NicType = \"intranet\",\n Policy = \"accept\",\n PortRange = \"1/65535\",\n Priority = 1,\n SecurityGroupId = @default.Id,\n CidrIp = \"0.0.0.0/0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tSecurityGroupName: pulumi.String(\"default\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.NewSecurityGroupRule(ctx, \"allow_all_tcp\", \u0026ecs.SecurityGroupRuleArgs{\n\t\t\tType: pulumi.String(\"ingress\"),\n\t\t\tIpProtocol: pulumi.String(\"tcp\"),\n\t\t\tNicType: pulumi.String(\"intranet\"),\n\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\tPortRange: pulumi.String(\"1/65535\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tSecurityGroupId: _default.ID(),\n\t\t\tCidrIp: pulumi.String(\"0.0.0.0/0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroupRule;\nimport com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new SecurityGroup(\"default\", SecurityGroupArgs.builder()\n .securityGroupName(\"default\")\n .build());\n\n var allowAllTcp = new SecurityGroupRule(\"allowAllTcp\", SecurityGroupRuleArgs.builder()\n .type(\"ingress\")\n .ipProtocol(\"tcp\")\n .nicType(\"intranet\")\n .policy(\"accept\")\n .portRange(\"1/65535\")\n .priority(1)\n .securityGroupId(default_.id())\n .cidrIp(\"0.0.0.0/0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:SecurityGroup\n properties:\n securityGroupName: default\n allowAllTcp:\n type: alicloud:ecs:SecurityGroupRule\n name: allow_all_tcp\n properties:\n type: ingress\n ipProtocol: tcp\n nicType: intranet\n policy: accept\n portRange: 1/65535\n priority: 1\n securityGroupId: ${default.id}\n cidrIp: 0.0.0.0/0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Module Support\n\nYou can use the existing security-group module \nto create a security group and add several rules one-click.\n\n## Import\n\nSecurity Group Rule can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/securityGroupRule:SecurityGroupRule example \u003cid\u003e\n```\n\n",
"properties": {
"cidrIp": {
"type": "string",
@@ -161840,7 +164482,7 @@
}
},
"alicloud:ecs/snapshot:Snapshot": {
- "description": "Provides an ECS snapshot resource.\n\nFor information about snapshot and how to use it, see [Snapshot](https://www.alibabacloud.com/help/doc-detail/25460.html).\n\n\u003e **NOTE:** Deprecated since v1.120.0.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-dotnet=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-go=\" ecs.EcsSnapshot \" pulumi-lang-python=\" ecs.EcsSnapshot \" pulumi-lang-yaml=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-java=\" alicloud.ecs.EcsSnapshot \"\u003e alicloud.ecs.EcsSnapshot \u003c/span\u003efrom version 1.120.0.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst snapshot = new alicloud.ecs.Snapshot(\"snapshot\", {\n diskId: instance_attachment.diskId,\n name: \"test-snapshot\",\n description: \"this snapshot is created for testing\",\n tags: {\n version: \"1.2\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsnapshot = alicloud.ecs.Snapshot(\"snapshot\",\n disk_id=instance_attachment[\"diskId\"],\n name=\"test-snapshot\",\n description=\"this snapshot is created for testing\",\n tags={\n \"version\": \"1.2\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var snapshot = new AliCloud.Ecs.Snapshot(\"snapshot\", new()\n {\n DiskId = instance_attachment.DiskId,\n Name = \"test-snapshot\",\n Description = \"this snapshot is created for testing\",\n Tags = \n {\n { \"version\", \"1.2\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSnapshot(ctx, \"snapshot\", \u0026ecs.SnapshotArgs{\n\t\t\tDiskId: pulumi.Any(instance_attachment.DiskId),\n\t\t\tName: pulumi.String(\"test-snapshot\"),\n\t\t\tDescription: pulumi.String(\"this snapshot is created for testing\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"1.2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Snapshot;\nimport com.pulumi.alicloud.ecs.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var snapshot = new Snapshot(\"snapshot\", SnapshotArgs.builder()\n .diskId(instance_attachment.diskId())\n .name(\"test-snapshot\")\n .description(\"this snapshot is created for testing\")\n .tags(Map.of(\"version\", \"1.2\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n snapshot:\n type: alicloud:ecs:Snapshot\n properties:\n diskId: ${[\"instance-attachment\"].diskId}\n name: test-snapshot\n description: this snapshot is created for testing\n tags:\n version: '1.2'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSnapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/snapshot:Snapshot snapshot s-abc1234567890000\n```\n\n",
+ "description": "Provides an ECS snapshot resource.\n\nFor information about snapshot and how to use it, see [Snapshot](https://www.alibabacloud.com/help/doc-detail/25460.html).\n\n\u003e **NOTE:** Deprecated since v1.120.0.\n\n\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-dotnet=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-go=\" ecs.EcsSnapshot \" pulumi-lang-python=\" ecs.EcsSnapshot \" pulumi-lang-yaml=\" alicloud.ecs.EcsSnapshot \" pulumi-lang-java=\" alicloud.ecs.EcsSnapshot \"\u003e alicloud.ecs.EcsSnapshot \u003c/span\u003efrom version 1.120.0.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst snapshot = new alicloud.ecs.Snapshot(\"snapshot\", {\n diskId: instance_attachment.diskId,\n name: \"test-snapshot\",\n description: \"this snapshot is created for testing\",\n tags: {\n version: \"1.2\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsnapshot = alicloud.ecs.Snapshot(\"snapshot\",\n disk_id=instance_attachment[\"diskId\"],\n name=\"test-snapshot\",\n description=\"this snapshot is created for testing\",\n tags={\n \"version\": \"1.2\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var snapshot = new AliCloud.Ecs.Snapshot(\"snapshot\", new()\n {\n DiskId = instance_attachment.DiskId,\n Name = \"test-snapshot\",\n Description = \"this snapshot is created for testing\",\n Tags = \n {\n { \"version\", \"1.2\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSnapshot(ctx, \"snapshot\", \u0026ecs.SnapshotArgs{\n\t\t\tDiskId: pulumi.Any(instance_attachment.DiskId),\n\t\t\tName: pulumi.String(\"test-snapshot\"),\n\t\t\tDescription: pulumi.String(\"this snapshot is created for testing\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"version\": pulumi.String(\"1.2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.Snapshot;\nimport com.pulumi.alicloud.ecs.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var snapshot = new Snapshot(\"snapshot\", SnapshotArgs.builder()\n .diskId(instance_attachment.diskId())\n .name(\"test-snapshot\")\n .description(\"this snapshot is created for testing\")\n .tags(Map.of(\"version\", \"1.2\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n snapshot:\n type: alicloud:ecs:Snapshot\n properties:\n diskId: ${[\"instance-attachment\"].diskId}\n name: test-snapshot\n description: this snapshot is created for testing\n tags:\n version: '1.2'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nSnapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/snapshot:Snapshot snapshot s-abc1234567890000\n```\n\n",
"properties": {
"category": {
"type": "string"
@@ -162019,7 +164661,7 @@
}
},
"alicloud:ecs/snapshotPolicy:SnapshotPolicy": {
- "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-dotnet=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-go=\" ecs.AutoSnapshotPolicy \" pulumi-lang-python=\" ecs.AutoSnapshotPolicy \" pulumi-lang-yaml=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-java=\" alicloud.ecs.AutoSnapshotPolicy \"\u003e alicloud.ecs.AutoSnapshotPolicy \u003c/span\u003efrom version 1.117.0.\n\nProvides an ECS snapshot policy resource.\n\nFor information about snapshot policy and how to use it, see [Snapshot](https://www.alibabacloud.com/help/doc-detail/25460.html).\n\n\u003e **NOTE:** Available in 1.42.0+.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst sp = new alicloud.ecs.SnapshotPolicy(\"sp\", {\n name: \"tf-testAcc-sp\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsp = alicloud.ecs.SnapshotPolicy(\"sp\",\n name=\"tf-testAcc-sp\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var sp = new AliCloud.Ecs.SnapshotPolicy(\"sp\", new()\n {\n Name = \"tf-testAcc-sp\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSnapshotPolicy(ctx, \"sp\", \u0026ecs.SnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc-sp\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var sp = new SnapshotPolicy(\"sp\", SnapshotPolicyArgs.builder()\n .name(\"tf-testAcc-sp\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n sp:\n type: alicloud:ecs:SnapshotPolicy\n properties:\n name: tf-testAcc-sp\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSnapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/snapshotPolicy:SnapshotPolicy snapshot sp-abc1234567890000\n```\n\n",
+ "description": "\u003e **DEPRECATED:** This resource has been renamed to\u003cspan pulumi-lang-nodejs=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-dotnet=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-go=\" ecs.AutoSnapshotPolicy \" pulumi-lang-python=\" ecs.AutoSnapshotPolicy \" pulumi-lang-yaml=\" alicloud.ecs.AutoSnapshotPolicy \" pulumi-lang-java=\" alicloud.ecs.AutoSnapshotPolicy \"\u003e alicloud.ecs.AutoSnapshotPolicy \u003c/span\u003efrom version 1.117.0.\n\nProvides an ECS snapshot policy resource.\n\nFor information about snapshot policy and how to use it, see [Snapshot](https://www.alibabacloud.com/help/doc-detail/25460.html).\n\n\u003e **NOTE:** Available in 1.42.0+.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst sp = new alicloud.ecs.SnapshotPolicy(\"sp\", {\n name: \"tf-testAcc-sp\",\n repeatWeekdays: [\n \"1\",\n \"2\",\n \"3\",\n ],\n retentionDays: -1,\n timePoints: [\n \"1\",\n \"22\",\n \"23\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nsp = alicloud.ecs.SnapshotPolicy(\"sp\",\n name=\"tf-testAcc-sp\",\n repeat_weekdays=[\n \"1\",\n \"2\",\n \"3\",\n ],\n retention_days=-1,\n time_points=[\n \"1\",\n \"22\",\n \"23\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var sp = new AliCloud.Ecs.SnapshotPolicy(\"sp\", new()\n {\n Name = \"tf-testAcc-sp\",\n RepeatWeekdays = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n RetentionDays = -1,\n TimePoints = new[]\n {\n \"1\",\n \"22\",\n \"23\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewSnapshotPolicy(ctx, \"sp\", \u0026ecs.SnapshotPolicyArgs{\n\t\t\tName: pulumi.String(\"tf-testAcc-sp\"),\n\t\t\tRepeatWeekdays: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\tpulumi.String(\"3\"),\n\t\t\t},\n\t\t\tRetentionDays: pulumi.Int(-1),\n\t\t\tTimePoints: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\tpulumi.String(\"22\"),\n\t\t\t\tpulumi.String(\"23\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.SnapshotPolicy;\nimport com.pulumi.alicloud.ecs.SnapshotPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var sp = new SnapshotPolicy(\"sp\", SnapshotPolicyArgs.builder()\n .name(\"tf-testAcc-sp\")\n .repeatWeekdays( \n \"1\",\n \"2\",\n \"3\")\n .retentionDays(-1)\n .timePoints( \n \"1\",\n \"22\",\n \"23\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n sp:\n type: alicloud:ecs:SnapshotPolicy\n properties:\n name: tf-testAcc-sp\n repeatWeekdays:\n - '1'\n - '2'\n - '3'\n retentionDays: -1\n timePoints:\n - '1'\n - '22'\n - '23'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nSnapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/snapshotPolicy:SnapshotPolicy snapshot sp-abc1234567890000\n```\n\n",
"properties": {
"autoSnapshotPolicyName": {
"type": "string"
@@ -162216,7 +164858,7 @@
}
},
"alicloud:ecs/storageCapacityUnit:StorageCapacityUnit": {
- "description": "Provides a ECS Storage Capacity Unit resource.\n\nFor information about ECS Storage Capacity Unit and how to use it, see [What is Storage Capacity Unit](https://www.alibabacloud.com/help/en/doc-detail/161157.html).\n\n\u003e **NOTE:** Available since v1.155.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.StorageCapacityUnit(\"default\", {\n capacity: 20,\n description: \"tftestdescription\",\n storageCapacityUnitName: \"tftestname\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.StorageCapacityUnit(\"default\",\n capacity=20,\n description=\"tftestdescription\",\n storage_capacity_unit_name=\"tftestname\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.StorageCapacityUnit(\"default\", new()\n {\n Capacity = 20,\n Description = \"tftestdescription\",\n StorageCapacityUnitName = \"tftestname\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewStorageCapacityUnit(ctx, \"default\", \u0026ecs.StorageCapacityUnitArgs{\n\t\t\tCapacity: pulumi.Int(20),\n\t\t\tDescription: pulumi.String(\"tftestdescription\"),\n\t\t\tStorageCapacityUnitName: pulumi.String(\"tftestname\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.StorageCapacityUnit;\nimport com.pulumi.alicloud.ecs.StorageCapacityUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new StorageCapacityUnit(\"default\", StorageCapacityUnitArgs.builder()\n .capacity(20)\n .description(\"tftestdescription\")\n .storageCapacityUnitName(\"tftestname\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:StorageCapacityUnit\n properties:\n capacity: 20\n description: tftestdescription\n storageCapacityUnitName: tftestname\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECS Storage Capacity Unit can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/storageCapacityUnit:StorageCapacityUnit example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECS Storage Capacity Unit resource.\n\nFor information about ECS Storage Capacity Unit and how to use it, see [What is Storage Capacity Unit](https://www.alibabacloud.com/help/en/doc-detail/161157.html).\n\n\u003e **NOTE:** Available since v1.155.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.ecs.StorageCapacityUnit(\"default\", {\n capacity: 20,\n description: \"tftestdescription\",\n storageCapacityUnitName: \"tftestname\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.ecs.StorageCapacityUnit(\"default\",\n capacity=20,\n description=\"tftestdescription\",\n storage_capacity_unit_name=\"tftestname\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Ecs.StorageCapacityUnit(\"default\", new()\n {\n Capacity = 20,\n Description = \"tftestdescription\",\n StorageCapacityUnitName = \"tftestname\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.NewStorageCapacityUnit(ctx, \"default\", \u0026ecs.StorageCapacityUnitArgs{\n\t\t\tCapacity: pulumi.Int(20),\n\t\t\tDescription: pulumi.String(\"tftestdescription\"),\n\t\t\tStorageCapacityUnitName: pulumi.String(\"tftestname\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.ecs.StorageCapacityUnit;\nimport com.pulumi.alicloud.ecs.StorageCapacityUnitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new StorageCapacityUnit(\"default\", StorageCapacityUnitArgs.builder()\n .capacity(20)\n .description(\"tftestdescription\")\n .storageCapacityUnitName(\"tftestname\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:ecs:StorageCapacityUnit\n properties:\n capacity: 20\n description: tftestdescription\n storageCapacityUnitName: tftestname\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECS Storage Capacity Unit can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:ecs/storageCapacityUnit:StorageCapacityUnit example \u003cid\u003e\n```\n\n",
"properties": {
"capacity": {
"type": "integer",
@@ -162324,7 +164966,7 @@
}
},
"alicloud:edas/application:Application": {
- "description": "Creates an EDAS ecs application on EDAS, see [What is EDAS Application](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertapplication). The application will be deployed when \u003cspan pulumi-lang-nodejs=\"`groupId`\" pulumi-lang-dotnet=\"`GroupId`\" pulumi-lang-go=\"`groupId`\" pulumi-lang-python=\"`group_id`\" pulumi-lang-yaml=\"`groupId`\" pulumi-lang-java=\"`groupId`\"\u003e`group_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`warUrl`\" pulumi-lang-dotnet=\"`WarUrl`\" pulumi-lang-go=\"`warUrl`\" pulumi-lang-python=\"`war_url`\" pulumi-lang-yaml=\"`warUrl`\" pulumi-lang-java=\"`warUrl`\"\u003e`war_url`\u003c/span\u003e are given.\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: `${name}-${defaultInteger.result}`,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: `${name}-${defaultInteger.result}`,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=f\"{name}-{default_integer['result']}\",\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=f\"{name}-{default_integer['result']}\",\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = $\"{name}-{defaultInteger.Result}\",\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = $\"{name}-{defaultInteger.Result}\",\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}-${defaultInteger.result}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}-${defaultInteger.result}\n clusterId: ${defaultCluster.id}\n packageType: JAR\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS application can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/application:Application app app_Id\n```\n\n",
+ "description": "Creates an EDAS ecs application on EDAS, see [What is EDAS Application](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertapplication). The application will be deployed when \u003cspan pulumi-lang-nodejs=\"`groupId`\" pulumi-lang-dotnet=\"`GroupId`\" pulumi-lang-go=\"`groupId`\" pulumi-lang-python=\"`group_id`\" pulumi-lang-yaml=\"`groupId`\" pulumi-lang-java=\"`groupId`\"\u003e`group_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`warUrl`\" pulumi-lang-dotnet=\"`WarUrl`\" pulumi-lang-go=\"`warUrl`\" pulumi-lang-python=\"`war_url`\" pulumi-lang-yaml=\"`warUrl`\" pulumi-lang-java=\"`warUrl`\"\u003e`war_url`\u003c/span\u003e are given.\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: `${name}-${defaultInteger.result}`,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: `${name}-${defaultInteger.result}`,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=f\"{name}-{default_integer['result']}\",\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=f\"{name}-{default_integer['result']}\",\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = $\"{name}-{defaultInteger.Result}\",\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = $\"{name}-{defaultInteger.Result}\",\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}-${defaultInteger.result}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}-${defaultInteger.result}\n clusterId: ${defaultCluster.id}\n packageType: JAR\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS application can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/application:Application app app_Id\n```\n\n",
"properties": {
"applicationName": {
"type": "string",
@@ -162492,7 +165134,7 @@
}
},
"alicloud:edas/applicationDeployment:ApplicationDeployment": {
- "description": "Deploys applications on EDAS, see [What is EDAS Application Deployment](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-deployapplication).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: name,\n});\nconst defaultApplicationDeployment = new alicloud.edas.ApplicationDeployment(\"default\", {\n appId: defaultApplication.id,\n groupId: \"all\",\n warUrl: \"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=name)\ndefault_application_deployment = alicloud.edas.ApplicationDeployment(\"default\",\n app_id=default_application.id,\n group_id=\"all\",\n war_url=\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = name,\n });\n\n var defaultApplicationDeployment = new AliCloud.Edas.ApplicationDeployment(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupId = \"all\",\n WarUrl = \"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewApplicationDeployment(ctx, \"default\", \u0026edas.ApplicationDeploymentArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupId: pulumi.String(\"all\"),\n\t\t\tWarUrl: pulumi.String(\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport com.pulumi.alicloud.edas.ApplicationDeployment;\nimport com.pulumi.alicloud.edas.ApplicationDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(name)\n .build());\n\n var defaultApplicationDeployment = new ApplicationDeployment(\"defaultApplicationDeployment\", ApplicationDeploymentArgs.builder()\n .appId(defaultApplication.id())\n .groupId(\"all\")\n .warUrl(\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultDeployGroup:\n type: alicloud:edas:DeployGroup\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupName: ${name}\n defaultApplicationDeployment:\n type: alicloud:edas:ApplicationDeployment\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupId: all\n warUrl: http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_[0-9]+_[0-9]+_x64*\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Deploys applications on EDAS, see [What is EDAS Application Deployment](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-deployapplication).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: name,\n});\nconst defaultApplicationDeployment = new alicloud.edas.ApplicationDeployment(\"default\", {\n appId: defaultApplication.id,\n groupId: \"all\",\n warUrl: \"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=name)\ndefault_application_deployment = alicloud.edas.ApplicationDeployment(\"default\",\n app_id=default_application.id,\n group_id=\"all\",\n war_url=\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = name,\n });\n\n var defaultApplicationDeployment = new AliCloud.Edas.ApplicationDeployment(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupId = \"all\",\n WarUrl = \"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewApplicationDeployment(ctx, \"default\", \u0026edas.ApplicationDeploymentArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupId: pulumi.String(\"all\"),\n\t\t\tWarUrl: pulumi.String(\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport com.pulumi.alicloud.edas.ApplicationDeployment;\nimport com.pulumi.alicloud.edas.ApplicationDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(name)\n .build());\n\n var defaultApplicationDeployment = new ApplicationDeployment(\"defaultApplicationDeployment\", ApplicationDeploymentArgs.builder()\n .appId(defaultApplication.id())\n .groupId(\"all\")\n .warUrl(\"http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultDeployGroup:\n type: alicloud:edas:DeployGroup\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupName: ${name}\n defaultApplicationDeployment:\n type: alicloud:edas:ApplicationDeployment\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupId: all\n warUrl: http://edas-sz.oss-cn-shenzhen.aliyuncs.com/prod/demo/SPRING_CLOUD_CONSUMER.jar\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_[0-9]+_[0-9]+_x64*\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"appId": {
"type": "string",
@@ -162581,7 +165223,7 @@
}
},
"alicloud:edas/applicationScale:ApplicationScale": {
- "description": "This operation is provided to scale out an EDAS application, see [What is EDAS Application Scale](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-scaleoutapplication).\n\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n internetMaxBandwidthOut: 10,\n internetChargeType: \"PayByTraffic\",\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"WAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: name,\n});\nconst defaultGetDeployGroups = alicloud.edas.getDeployGroupsOutput({\n appId: defaultDeployGroup.appId,\n});\nconst defaultApplicationScale = new alicloud.edas.ApplicationScale(\"default\", {\n appId: defaultApplication.id,\n deployGroup: defaultGetDeployGroups.apply(defaultGetDeployGroups =\u003e defaultGetDeployGroups.groups?.[0]?.groupId),\n ecuInfos: [pulumi.all([defaultInstanceClusterAttachment.ecuMap, defaultInstance.id]).apply(([ecuMap, id]) =\u003e ecuMap[id])],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n internet_max_bandwidth_out=10,\n internet_charge_type=\"PayByTraffic\",\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"WAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=name)\ndefault_get_deploy_groups = alicloud.edas.get_deploy_groups_output(app_id=default_deploy_group.app_id)\ndefault_application_scale = alicloud.edas.ApplicationScale(\"default\",\n app_id=default_application.id,\n deploy_group=default_get_deploy_groups.groups[0].group_id,\n ecu_infos=[pulumi.Output.all(\n ecu_map=default_instance_cluster_attachment.ecu_map,\n id=default_instance.id\n).apply(lambda resolved_outputs: resolved_outputs['ecu_map'][resolved_outputs['id']])\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InternetMaxBandwidthOut = 10,\n InternetChargeType = \"PayByTraffic\",\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"WAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = name,\n });\n\n var defaultGetDeployGroups = AliCloud.Edas.GetDeployGroups.Invoke(new()\n {\n AppId = defaultDeployGroup.AppId,\n });\n\n var defaultApplicationScale = new AliCloud.Edas.ApplicationScale(\"default\", new()\n {\n AppId = defaultApplication.Id,\n DeployGroup = defaultGetDeployGroups.Apply(getDeployGroupsResult =\u003e getDeployGroupsResult.Groups[0]?.GroupId),\n EcuInfos = new[]\n {\n Output.Tuple(defaultInstanceClusterAttachment.EcuMap, defaultInstance.Id).Apply(values =\u003e\n {\n var ecuMap = values.Item1;\n var id = values.Item2;\n return ecuMap[id];\n }),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstanceClusterAttachment, err := edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"WAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDeployGroup, err := edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetDeployGroups := edas.GetDeployGroupsOutput(ctx, edas.GetDeployGroupsOutputArgs{\n\t\t\tAppId: defaultDeployGroup.AppId,\n\t\t}, nil)\n\t\t_, err = edas.NewApplicationScale(ctx, \"default\", \u0026edas.ApplicationScaleArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tDeployGroup: pulumi.String(defaultGetDeployGroups.ApplyT(func(defaultGetDeployGroups edas.GetDeployGroupsResult) (*string, error) {\n\t\t\t\treturn \u0026defaultGetDeployGroups.Groups[0].GroupId, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tEcuInfos: pulumi.StringArray{\n\t\t\t\tpulumi.All(defaultInstanceClusterAttachment.EcuMap, defaultInstance.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\tecuMap := _args[0].(map[string]string)\n\t\t\t\t\tid := _args[1].(string)\n\t\t\t\t\treturn ecuMap[id], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport com.pulumi.alicloud.edas.EdasFunctions;\nimport com.pulumi.alicloud.edas.inputs.GetDeployGroupsArgs;\nimport com.pulumi.alicloud.edas.ApplicationScale;\nimport com.pulumi.alicloud.edas.ApplicationScaleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .internetMaxBandwidthOut(10)\n .internetChargeType(\"PayByTraffic\")\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"WAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(name)\n .build());\n\n final var defaultGetDeployGroups = EdasFunctions.getDeployGroups(GetDeployGroupsArgs.builder()\n .appId(defaultDeployGroup.appId())\n .build());\n\n var defaultApplicationScale = new ApplicationScale(\"defaultApplicationScale\", ApplicationScaleArgs.builder()\n .appId(defaultApplication.id())\n .deployGroup(defaultGetDeployGroups.applyValue(_defaultGetDeployGroups -\u003e _defaultGetDeployGroups.groups()[0].groupId()))\n .ecuInfos(Output.tuple(defaultInstanceClusterAttachment.ecuMap(), defaultInstance.id()).applyValue(values -\u003e {\n var ecuMap = values.t1;\n var id = values.t2;\n return ecuMap[id];\n }))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "This operation is provided to scale out an EDAS application, see [What is EDAS Application Scale](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-scaleoutapplication).\n\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n internetMaxBandwidthOut: 10,\n internetChargeType: \"PayByTraffic\",\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"WAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: name,\n});\nconst defaultGetDeployGroups = alicloud.edas.getDeployGroupsOutput({\n appId: defaultDeployGroup.appId,\n});\nconst defaultApplicationScale = new alicloud.edas.ApplicationScale(\"default\", {\n appId: defaultApplication.id,\n deployGroup: defaultGetDeployGroups.apply(defaultGetDeployGroups =\u003e defaultGetDeployGroups.groups?.[0]?.groupId),\n ecuInfos: [pulumi.all([defaultInstanceClusterAttachment.ecuMap, defaultInstance.id]).apply(([ecuMap, id]) =\u003e ecuMap[id])],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n internet_max_bandwidth_out=10,\n internet_charge_type=\"PayByTraffic\",\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"WAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=name)\ndefault_get_deploy_groups = alicloud.edas.get_deploy_groups_output(app_id=default_deploy_group.app_id)\ndefault_application_scale = alicloud.edas.ApplicationScale(\"default\",\n app_id=default_application.id,\n deploy_group=default_get_deploy_groups.groups[0].group_id,\n ecu_infos=[pulumi.Output.all(\n ecu_map=default_instance_cluster_attachment.ecu_map,\n id=default_instance.id\n).apply(lambda resolved_outputs: resolved_outputs['ecu_map'][resolved_outputs['id']])\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InternetMaxBandwidthOut = 10,\n InternetChargeType = \"PayByTraffic\",\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"WAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = name,\n });\n\n var defaultGetDeployGroups = AliCloud.Edas.GetDeployGroups.Invoke(new()\n {\n AppId = defaultDeployGroup.AppId,\n });\n\n var defaultApplicationScale = new AliCloud.Edas.ApplicationScale(\"default\", new()\n {\n AppId = defaultApplication.Id,\n DeployGroup = defaultGetDeployGroups.Apply(getDeployGroupsResult =\u003e getDeployGroupsResult.Groups[0]?.GroupId),\n EcuInfos = new[]\n {\n Output.Tuple(defaultInstanceClusterAttachment.EcuMap, defaultInstance.Id).Apply(values =\u003e\n {\n var ecuMap = values.Item1;\n var id = values.Item2;\n return ecuMap[id];\n }),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstanceClusterAttachment, err := edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"WAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDeployGroup, err := edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetDeployGroups := edas.GetDeployGroupsOutput(ctx, edas.GetDeployGroupsOutputArgs{\n\t\t\tAppId: defaultDeployGroup.AppId,\n\t\t}, nil)\n\t\t_, err = edas.NewApplicationScale(ctx, \"default\", \u0026edas.ApplicationScaleArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tDeployGroup: pulumi.String(defaultGetDeployGroups.ApplyT(func(defaultGetDeployGroups edas.GetDeployGroupsResult) (*string, error) {\n\t\t\t\treturn \u0026defaultGetDeployGroups.Groups[0].GroupId, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tEcuInfos: pulumi.StringArray{\n\t\t\t\tpulumi.All(defaultInstanceClusterAttachment.EcuMap, defaultInstance.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\tecuMap := _args[0].(map[string]string)\n\t\t\t\t\tid := _args[1].(string)\n\t\t\t\t\treturn ecuMap[id], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport com.pulumi.alicloud.edas.EdasFunctions;\nimport com.pulumi.alicloud.edas.inputs.GetDeployGroupsArgs;\nimport com.pulumi.alicloud.edas.ApplicationScale;\nimport com.pulumi.alicloud.edas.ApplicationScaleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .internetMaxBandwidthOut(10)\n .internetChargeType(\"PayByTraffic\")\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"WAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(name)\n .build());\n\n final var defaultGetDeployGroups = EdasFunctions.getDeployGroups(GetDeployGroupsArgs.builder()\n .appId(defaultDeployGroup.appId())\n .build());\n\n var defaultApplicationScale = new ApplicationScale(\"defaultApplicationScale\", ApplicationScaleArgs.builder()\n .appId(defaultApplication.id())\n .deployGroup(defaultGetDeployGroups.applyValue(_defaultGetDeployGroups -\u003e _defaultGetDeployGroups.groups()[0].groupId()))\n .ecuInfos(Output.tuple(defaultInstanceClusterAttachment.ecuMap(), defaultInstance.id()).applyValue(values -\u003e {\n var ecuMap = values.t1;\n var id = values.t2;\n return ecuMap[id];\n }))\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"appId": {
"type": "string",
@@ -162676,7 +165318,7 @@
}
},
"alicloud:edas/cluster:Cluster": {
- "description": "Provides an EDAS cluster resource, see [What is EDAS Cluster](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertcluster).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/cluster:Cluster cluster cluster_id\n```\n\n",
+ "description": "Provides an EDAS cluster resource, see [What is EDAS Cluster](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertcluster).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/cluster:Cluster cluster cluster_id\n```\n\n",
"properties": {
"clusterName": {
"type": "string",
@@ -162769,7 +165411,7 @@
}
},
"alicloud:edas/deployGroup:DeployGroup": {
- "description": "Provides an EDAS deploy group resource, see [What is EDAS Deploy Group](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertdeploygroup).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: `${name}-${defaultInteger.result}`,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: `${name}-${defaultInteger.result}`,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=f\"{name}-{default_integer['result']}\",\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=f\"{name}-{default_integer['result']}\",\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = $\"{name}-{defaultInteger.Result}\",\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = $\"{name}-{defaultInteger.Result}\",\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}-${defaultInteger.result}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}-${defaultInteger.result}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultDeployGroup:\n type: alicloud:edas:DeployGroup\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupName: ${name}-${defaultInteger.result}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS deploy group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/deployGroup:DeployGroup group app_id:group_name:group_id\n```\n\n",
+ "description": "Provides an EDAS deploy group resource, see [What is EDAS Deploy Group](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertdeploygroup).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: `${name}-${defaultInteger.result}`,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: `${name}-${defaultInteger.result}`,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: `${name}-${defaultInteger.result}`,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultDeployGroup = new alicloud.edas.DeployGroup(\"default\", {\n appId: defaultApplication.id,\n groupName: `${name}-${defaultInteger.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault = alicloud.get_regions(current=True)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=f\"{name}-{default_integer['result']}\",\n cidr_block=\"10.4.0.0/16\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=f\"{name}-{default_integer['result']}\",\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=f\"{name}-{default_integer['result']}\",\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_deploy_group = alicloud.edas.DeployGroup(\"default\",\n app_id=default_application.id,\n group_name=f\"{name}-{default_integer['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = $\"{name}-{defaultInteger.Result}\",\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = $\"{name}-{defaultInteger.Result}\",\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = $\"{name}-{defaultInteger.Result}\",\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultDeployGroup = new AliCloud.Edas.DeployGroup(\"default\", new()\n {\n AppId = defaultApplication.Id,\n GroupName = $\"{name}-{defaultInteger.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewDeployGroup(ctx, \"default\", \u0026edas.DeployGroupArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tGroupName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.edas.DeployGroup;\nimport com.pulumi.alicloud.edas.DeployGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultDeployGroup = new DeployGroup(\"defaultDeployGroup\", DeployGroupArgs.builder()\n .appId(defaultApplication.id())\n .groupName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}-${defaultInteger.result}\n cidrBlock: 10.4.0.0/16\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}-${defaultInteger.result}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}-${defaultInteger.result}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultDeployGroup:\n type: alicloud:edas:DeployGroup\n name: default\n properties:\n appId: ${defaultApplication.id}\n groupName: ${name}-${defaultInteger.result}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS deploy group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/deployGroup:DeployGroup group app_id:group_name:group_id\n```\n\n",
"properties": {
"appId": {
"type": "string",
@@ -162828,7 +165470,7 @@
}
},
"alicloud:edas/instanceClusterAttachment:InstanceClusterAttachment": {
- "description": "Provides an EDAS instance cluster attachment resource, see [What is EDAS Instance Cluster Attachment](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-installagent).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Provides an EDAS instance cluster attachment resource, see [What is EDAS Instance Cluster Attachment](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-installagent).\n\n\u003e **NOTE:** Available since v1.82.0.\n\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id)\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"clusterId": {
"type": "string",
@@ -162931,7 +165573,7 @@
}
},
"alicloud:edas/k8sApplication:K8sApplication": {
- "description": "Create an EDAS k8s application.For information about EDAS K8s Application and how to use it, see [What is EDAS K8s Application](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertk8sapplication). \n\n\u003e **NOTE:** Available since v1.105.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\nconst defaultK8sApplication = new alicloud.edas.K8sApplication(\"default\", {\n applicationName: name,\n clusterId: defaultK8sCluster.id,\n packageType: \"FatJar\",\n packageUrl: \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk: \"Open JDK 8\",\n replicas: 2,\n readiness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n applicationDescriotion: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\ndefault_k8s_application = alicloud.edas.K8sApplication(\"default\",\n application_name=name,\n cluster_id=default_k8s_cluster.id,\n package_type=\"FatJar\",\n package_url=\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk=\"Open JDK 8\",\n replicas=2,\n readiness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n application_descriotion=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultK8sApplication = new AliCloud.Edas.K8sApplication(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultK8sCluster.Id,\n PackageType = \"FatJar\",\n PackageUrl = \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n Jdk = \"Open JDK 8\",\n Replicas = 2,\n Readiness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n Liveness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n ApplicationDescriotion = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sCluster, err := edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sApplication(ctx, \"default\", \u0026edas.K8sApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultK8sCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"FatJar\"),\n\t\t\tPackageUrl: pulumi.String(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\"),\n\t\t\tJdk: pulumi.String(\"Open JDK 8\"),\n\t\t\tReplicas: pulumi.Int(2),\n\t\t\tReadiness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tLiveness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tApplicationDescriotion: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport com.pulumi.alicloud.edas.K8sApplication;\nimport com.pulumi.alicloud.edas.K8sApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultK8sApplication = new K8sApplication(\"defaultK8sApplication\", K8sApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultK8sCluster.id())\n .packageType(\"FatJar\")\n .packageUrl(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\")\n .jdk(\"Open JDK 8\")\n .replicas(2)\n .readiness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .liveness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .applicationDescriotion(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\n defaultK8sApplication:\n type: alicloud:edas:K8sApplication\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultK8sCluster.id}\n packageType: FatJar\n packageUrl: http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\n jdk: Open JDK 8\n replicas: 2\n readiness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n liveness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n applicationDescriotion: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS k8s application can be imported as below, e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sApplication:K8sApplication new_k8s_application application_id\n```\n\n",
+ "description": "Create an EDAS k8s application.For information about EDAS K8s Application and how to use it, see [What is EDAS K8s Application](https://www.alibabacloud.com/help/en/edas/developer-reference/api-edas-2017-08-01-insertk8sapplication). \n\n\u003e **NOTE:** Available since v1.105.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\nconst defaultK8sApplication = new alicloud.edas.K8sApplication(\"default\", {\n applicationName: name,\n clusterId: defaultK8sCluster.id,\n packageType: \"FatJar\",\n packageUrl: \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk: \"Open JDK 8\",\n replicas: 2,\n readiness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n applicationDescriotion: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\ndefault_k8s_application = alicloud.edas.K8sApplication(\"default\",\n application_name=name,\n cluster_id=default_k8s_cluster.id,\n package_type=\"FatJar\",\n package_url=\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk=\"Open JDK 8\",\n replicas=2,\n readiness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n application_descriotion=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultK8sApplication = new AliCloud.Edas.K8sApplication(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultK8sCluster.Id,\n PackageType = \"FatJar\",\n PackageUrl = \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n Jdk = \"Open JDK 8\",\n Replicas = 2,\n Readiness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n Liveness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n ApplicationDescriotion = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sCluster, err := edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sApplication(ctx, \"default\", \u0026edas.K8sApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultK8sCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"FatJar\"),\n\t\t\tPackageUrl: pulumi.String(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\"),\n\t\t\tJdk: pulumi.String(\"Open JDK 8\"),\n\t\t\tReplicas: pulumi.Int(2),\n\t\t\tReadiness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tLiveness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tApplicationDescriotion: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport com.pulumi.alicloud.edas.K8sApplication;\nimport com.pulumi.alicloud.edas.K8sApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultK8sApplication = new K8sApplication(\"defaultK8sApplication\", K8sApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultK8sCluster.id())\n .packageType(\"FatJar\")\n .packageUrl(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\")\n .jdk(\"Open JDK 8\")\n .replicas(2)\n .readiness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .liveness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .applicationDescriotion(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\n defaultK8sApplication:\n type: alicloud:edas:K8sApplication\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultK8sCluster.id}\n packageType: FatJar\n packageUrl: http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\n jdk: Open JDK 8\n replicas: 2\n readiness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n liveness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n applicationDescriotion: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS k8s application can be imported as below, e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sApplication:K8sApplication new_k8s_application application_id\n```\n\n",
"properties": {
"applicationDescriotion": {
"type": "string",
@@ -163369,7 +166011,7 @@
}
},
"alicloud:edas/k8sCluster:K8sCluster": {
- "description": "Provides an EDAS K8s cluster resource. For information about EDAS K8s Cluster and how to use it, see[What is EDAS K8s Cluster](https://www.alibabacloud.com/help/en/doc-detail/85108.htm).\n\n\u003e **NOTE:** Available since v1.93.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sCluster:K8sCluster cluster cluster_id\n```\n\n",
+ "description": "Provides an EDAS K8s cluster resource. For information about EDAS K8s Cluster and how to use it, see[What is EDAS K8s Cluster](https://www.alibabacloud.com/help/en/doc-detail/85108.htm).\n\n\u003e **NOTE:** Available since v1.93.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sCluster:K8sCluster cluster cluster_id\n```\n\n",
"properties": {
"clusterImportStatus": {
"type": "integer",
@@ -163461,7 +166103,7 @@
}
},
"alicloud:edas/k8sSlbAttachment:K8sSlbAttachment": {
- "description": "Binds SLBs to an EDAS k8s application.\n\nFor information about EDAS k8s slb attachment and how to use it, see [What is k8s slb attachment](https://www.alibabacloud.com/help/en/enterprise-distributed-application-service/latest/bindk8sslb).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\nconst defaultK8sApplication = new alicloud.edas.K8sApplication(\"default\", {\n applicationName: name,\n clusterId: defaultK8sCluster.id,\n packageType: \"FatJar\",\n packageUrl: \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk: \"Open JDK 8\",\n replicas: 2,\n readiness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n applicationDescriotion: name,\n});\nconst defaultK8sSlbAttachment = new alicloud.edas.K8sSlbAttachment(\"default\", {\n appId: defaultK8sApplication.id,\n slbConfigs: [{\n type: \"internet\",\n scheduler: \"rr\",\n portMappings: [{\n loadbalancerProtocol: \"TCP\",\n servicePort: {\n port: 80,\n protocol: \"TCP\",\n targetPort: 8080,\n },\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\ndefault_k8s_application = alicloud.edas.K8sApplication(\"default\",\n application_name=name,\n cluster_id=default_k8s_cluster.id,\n package_type=\"FatJar\",\n package_url=\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk=\"Open JDK 8\",\n replicas=2,\n readiness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n application_descriotion=name)\ndefault_k8s_slb_attachment = alicloud.edas.K8sSlbAttachment(\"default\",\n app_id=default_k8s_application.id,\n slb_configs=[{\n \"type\": \"internet\",\n \"scheduler\": \"rr\",\n \"port_mappings\": [{\n \"loadbalancer_protocol\": \"TCP\",\n \"service_port\": {\n \"port\": 80,\n \"protocol\": \"TCP\",\n \"target_port\": 8080,\n },\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultK8sApplication = new AliCloud.Edas.K8sApplication(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultK8sCluster.Id,\n PackageType = \"FatJar\",\n PackageUrl = \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n Jdk = \"Open JDK 8\",\n Replicas = 2,\n Readiness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n Liveness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n ApplicationDescriotion = name,\n });\n\n var defaultK8sSlbAttachment = new AliCloud.Edas.K8sSlbAttachment(\"default\", new()\n {\n AppId = defaultK8sApplication.Id,\n SlbConfigs = new[]\n {\n new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigArgs\n {\n Type = \"internet\",\n Scheduler = \"rr\",\n PortMappings = new[]\n {\n new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigPortMappingArgs\n {\n LoadbalancerProtocol = \"TCP\",\n ServicePort = new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigPortMappingServicePortArgs\n {\n Port = 80,\n Protocol = \"TCP\",\n TargetPort = 8080,\n },\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sCluster, err := edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sApplication, err := edas.NewK8sApplication(ctx, \"default\", \u0026edas.K8sApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultK8sCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"FatJar\"),\n\t\t\tPackageUrl: pulumi.String(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\"),\n\t\t\tJdk: pulumi.String(\"Open JDK 8\"),\n\t\t\tReplicas: pulumi.Int(2),\n\t\t\tReadiness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tLiveness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tApplicationDescriotion: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sSlbAttachment(ctx, \"default\", \u0026edas.K8sSlbAttachmentArgs{\n\t\t\tAppId: defaultK8sApplication.ID(),\n\t\t\tSlbConfigs: edas.K8sSlbAttachmentSlbConfigArray{\n\t\t\t\t\u0026edas.K8sSlbAttachmentSlbConfigArgs{\n\t\t\t\t\tType: pulumi.String(\"internet\"),\n\t\t\t\t\tScheduler: pulumi.String(\"rr\"),\n\t\t\t\t\tPortMappings: edas.K8sSlbAttachmentSlbConfigPortMappingArray{\n\t\t\t\t\t\t\u0026edas.K8sSlbAttachmentSlbConfigPortMappingArgs{\n\t\t\t\t\t\t\tLoadbalancerProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t\tServicePort: \u0026edas.K8sSlbAttachmentSlbConfigPortMappingServicePortArgs{\n\t\t\t\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t\t\tTargetPort: pulumi.Int(8080),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport com.pulumi.alicloud.edas.K8sApplication;\nimport com.pulumi.alicloud.edas.K8sApplicationArgs;\nimport com.pulumi.alicloud.edas.K8sSlbAttachment;\nimport com.pulumi.alicloud.edas.K8sSlbAttachmentArgs;\nimport com.pulumi.alicloud.edas.inputs.K8sSlbAttachmentSlbConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultK8sApplication = new K8sApplication(\"defaultK8sApplication\", K8sApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultK8sCluster.id())\n .packageType(\"FatJar\")\n .packageUrl(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\")\n .jdk(\"Open JDK 8\")\n .replicas(2)\n .readiness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .liveness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .applicationDescriotion(name)\n .build());\n\n var defaultK8sSlbAttachment = new K8sSlbAttachment(\"defaultK8sSlbAttachment\", K8sSlbAttachmentArgs.builder()\n .appId(defaultK8sApplication.id())\n .slbConfigs(K8sSlbAttachmentSlbConfigArgs.builder()\n .type(\"internet\")\n .scheduler(\"rr\")\n .portMappings(K8sSlbAttachmentSlbConfigPortMappingArgs.builder()\n .loadbalancerProtocol(\"TCP\")\n .servicePort(K8sSlbAttachmentSlbConfigPortMappingServicePortArgs.builder()\n .port(80)\n .protocol(\"TCP\")\n .targetPort(8080)\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\n defaultK8sApplication:\n type: alicloud:edas:K8sApplication\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultK8sCluster.id}\n packageType: FatJar\n packageUrl: http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\n jdk: Open JDK 8\n replicas: 2\n readiness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n liveness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n applicationDescriotion: ${name}\n defaultK8sSlbAttachment:\n type: alicloud:edas:K8sSlbAttachment\n name: default\n properties:\n appId: ${defaultK8sApplication.id}\n slbConfigs:\n - type: internet\n scheduler: rr\n portMappings:\n - loadbalancerProtocol: TCP\n servicePort:\n port: 80\n protocol: TCP\n targetPort: 8080\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSlb information of EDAS k8s application can be imported using the ID of an EDAS k8s application. e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sSlbAttachment:K8sSlbAttachment example \u003cEDAS k8s app id\u003e\n```\n\n",
+ "description": "Binds SLBs to an EDAS k8s application.\n\nFor information about EDAS k8s slb attachment and how to use it, see [What is k8s slb attachment](https://www.alibabacloud.com/help/en/enterprise-distributed-application-service/latest/bindk8sslb).\n\n\u003e **NOTE:** Available since v1.194.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as std from \"@pulumi/std\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_18.*64\",\n mostRecent: true,\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = _default.then(_default =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: _default.zones?.[0]?.id,\n cpuCoreCount: 4,\n memorySize: 8,\n kubernetesNodeRole: \"Worker\",\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: _default.then(_default =\u003e _default.zones?.[0]?.id),\n});\nconst defaultManagedKubernetes = new alicloud.cs.ManagedKubernetes(\"default\", {\n namePrefix: name,\n clusterSpec: \"ack.pro.small\",\n workerVswitchIds: [defaultSwitch.id],\n newNatGateway: true,\n podCidr: std.cidrsubnet({\n input: \"10.0.0.0/8\",\n newbits: 8,\n netnum: 36,\n }).then(invoke =\u003e invoke.result),\n serviceCidr: std.cidrsubnet({\n input: \"172.16.0.0/16\",\n newbits: 4,\n netnum: 7,\n }).then(invoke =\u003e invoke.result),\n slbInternetEnabled: true,\n});\nconst defaultNodePool = new alicloud.cs.NodePool(\"default\", {\n name: name,\n clusterId: defaultManagedKubernetes.id,\n vswitchIds: [defaultSwitch.id],\n instanceTypes: [defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id)],\n systemDiskCategory: \"cloud_efficiency\",\n systemDiskSize: 40,\n desiredSize: \"2\",\n});\nconst defaultK8sCluster = new alicloud.edas.K8sCluster(\"default\", {csClusterId: defaultNodePool.clusterId});\nconst defaultK8sApplication = new alicloud.edas.K8sApplication(\"default\", {\n applicationName: name,\n clusterId: defaultK8sCluster.id,\n packageType: \"FatJar\",\n packageUrl: \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk: \"Open JDK 8\",\n replicas: 2,\n readiness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness: \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n applicationDescriotion: name,\n});\nconst defaultK8sSlbAttachment = new alicloud.edas.K8sSlbAttachment(\"default\", {\n appId: defaultK8sApplication.id,\n slbConfigs: [{\n type: \"internet\",\n scheduler: \"rr\",\n portMappings: [{\n loadbalancerProtocol: \"TCP\",\n servicePort: {\n port: 80,\n protocol: \"TCP\",\n targetPort: 8080,\n },\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_std as std\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_18.*64\",\n most_recent=True,\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,\n cpu_core_count=4,\n memory_size=8,\n kubernetes_node_role=\"Worker\")\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default.zones[0].id)\ndefault_managed_kubernetes = alicloud.cs.ManagedKubernetes(\"default\",\n name_prefix=name,\n cluster_spec=\"ack.pro.small\",\n worker_vswitch_ids=[default_switch.id],\n new_nat_gateway=True,\n pod_cidr=std.cidrsubnet(input=\"10.0.0.0/8\",\n newbits=8,\n netnum=36).result,\n service_cidr=std.cidrsubnet(input=\"172.16.0.0/16\",\n newbits=4,\n netnum=7).result,\n slb_internet_enabled=True)\ndefault_node_pool = alicloud.cs.NodePool(\"default\",\n name=name,\n cluster_id=default_managed_kubernetes.id,\n vswitch_ids=[default_switch.id],\n instance_types=[default_get_instance_types.instance_types[0].id],\n system_disk_category=\"cloud_efficiency\",\n system_disk_size=40,\n desired_size=\"2\")\ndefault_k8s_cluster = alicloud.edas.K8sCluster(\"default\", cs_cluster_id=default_node_pool.cluster_id)\ndefault_k8s_application = alicloud.edas.K8sApplication(\"default\",\n application_name=name,\n cluster_id=default_k8s_cluster.id,\n package_type=\"FatJar\",\n package_url=\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n jdk=\"Open JDK 8\",\n replicas=2,\n readiness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n liveness=\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n application_descriotion=name)\ndefault_k8s_slb_attachment = alicloud.edas.K8sSlbAttachment(\"default\",\n app_id=default_k8s_application.id,\n slb_configs=[{\n \"type\": \"internet\",\n \"scheduler\": \"rr\",\n \"port_mappings\": [{\n \"loadbalancer_protocol\": \"TCP\",\n \"service_port\": {\n \"port\": 80,\n \"protocol\": \"TCP\",\n \"target_port\": 8080,\n },\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_18.*64\",\n MostRecent = true,\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 4,\n MemorySize = 8,\n KubernetesNodeRole = \"Worker\",\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id)),\n });\n\n var defaultManagedKubernetes = new AliCloud.CS.ManagedKubernetes(\"default\", new()\n {\n NamePrefix = name,\n ClusterSpec = \"ack.pro.small\",\n WorkerVswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n NewNatGateway = true,\n PodCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"10.0.0.0/8\",\n Newbits = 8,\n Netnum = 36,\n }).Apply(invoke =\u003e invoke.Result),\n ServiceCidr = Std.Cidrsubnet.Invoke(new()\n {\n Input = \"172.16.0.0/16\",\n Newbits = 4,\n Netnum = 7,\n }).Apply(invoke =\u003e invoke.Result),\n SlbInternetEnabled = true,\n });\n\n var defaultNodePool = new AliCloud.CS.NodePool(\"default\", new()\n {\n Name = name,\n ClusterId = defaultManagedKubernetes.Id,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n InstanceTypes = new[]\n {\n defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n },\n SystemDiskCategory = \"cloud_efficiency\",\n SystemDiskSize = 40,\n DesiredSize = \"2\",\n });\n\n var defaultK8sCluster = new AliCloud.Edas.K8sCluster(\"default\", new()\n {\n CsClusterId = defaultNodePool.ClusterId,\n });\n\n var defaultK8sApplication = new AliCloud.Edas.K8sApplication(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultK8sCluster.Id,\n PackageType = \"FatJar\",\n PackageUrl = \"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\",\n Jdk = \"Open JDK 8\",\n Replicas = 2,\n Readiness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n Liveness = \"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\",\n ApplicationDescriotion = name,\n });\n\n var defaultK8sSlbAttachment = new AliCloud.Edas.K8sSlbAttachment(\"default\", new()\n {\n AppId = defaultK8sApplication.Id,\n SlbConfigs = new[]\n {\n new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigArgs\n {\n Type = \"internet\",\n Scheduler = \"rr\",\n PortMappings = new[]\n {\n new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigPortMappingArgs\n {\n LoadbalancerProtocol = \"TCP\",\n ServicePort = new AliCloud.Edas.Inputs.K8sSlbAttachmentSlbConfigPortMappingServicePortArgs\n {\n Port = 80,\n Protocol = \"TCP\",\n TargetPort = 8080,\n },\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_18.*64\"),\n\t\t\tMostRecent: pulumi.BoolRef(true),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.Float64Ref(8),\n\t\t\tKubernetesNodeRole: pulumi.StringRef(\"Worker\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(_default.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"10.0.0.0/8\",\n\t\t\tNewbits: 8,\n\t\t\tNetnum: 36,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokeCidrsubnet1, err := std.Cidrsubnet(ctx, \u0026std.CidrsubnetArgs{\n\t\t\tInput: \"172.16.0.0/16\",\n\t\t\tNewbits: 4,\n\t\t\tNetnum: 7,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultManagedKubernetes, err := cs.NewManagedKubernetes(ctx, \"default\", \u0026cs.ManagedKubernetesArgs{\n\t\t\tNamePrefix: pulumi.String(name),\n\t\t\tClusterSpec: pulumi.String(\"ack.pro.small\"),\n\t\t\tWorkerVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tNewNatGateway: pulumi.Bool(true),\n\t\t\tPodCidr: pulumi.String(invokeCidrsubnet.Result),\n\t\t\tServiceCidr: pulumi.String(invokeCidrsubnet1.Result),\n\t\t\tSlbInternetEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNodePool, err := cs.NewNodePool(ctx, \"default\", \u0026cs.NodePoolArgs{\n\t\t\tName: pulumi.String(name),\n\t\t\tClusterId: defaultManagedKubernetes.ID(),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t\tInstanceTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\t},\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t\tSystemDiskSize: pulumi.Int(40),\n\t\t\tDesiredSize: pulumi.String(\"2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sCluster, err := edas.NewK8sCluster(ctx, \"default\", \u0026edas.K8sClusterArgs{\n\t\t\tCsClusterId: defaultNodePool.ClusterId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultK8sApplication, err := edas.NewK8sApplication(ctx, \"default\", \u0026edas.K8sApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultK8sCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"FatJar\"),\n\t\t\tPackageUrl: pulumi.String(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\"),\n\t\t\tJdk: pulumi.String(\"Open JDK 8\"),\n\t\t\tReplicas: pulumi.Int(2),\n\t\t\tReadiness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tLiveness: pulumi.String(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\"),\n\t\t\tApplicationDescriotion: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewK8sSlbAttachment(ctx, \"default\", \u0026edas.K8sSlbAttachmentArgs{\n\t\t\tAppId: defaultK8sApplication.ID(),\n\t\t\tSlbConfigs: edas.K8sSlbAttachmentSlbConfigArray{\n\t\t\t\t\u0026edas.K8sSlbAttachmentSlbConfigArgs{\n\t\t\t\t\tType: pulumi.String(\"internet\"),\n\t\t\t\t\tScheduler: pulumi.String(\"rr\"),\n\t\t\t\t\tPortMappings: edas.K8sSlbAttachmentSlbConfigPortMappingArray{\n\t\t\t\t\t\t\u0026edas.K8sSlbAttachmentSlbConfigPortMappingArgs{\n\t\t\t\t\t\t\tLoadbalancerProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t\tServicePort: \u0026edas.K8sSlbAttachmentSlbConfigPortMappingServicePortArgs{\n\t\t\t\t\t\t\t\tPort: pulumi.Int(80),\n\t\t\t\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\t\t\t\tTargetPort: pulumi.Int(8080),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.cs.ManagedKubernetes;\nimport com.pulumi.alicloud.cs.ManagedKubernetesArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.CidrsubnetArgs;\nimport com.pulumi.alicloud.cs.NodePool;\nimport com.pulumi.alicloud.cs.NodePoolArgs;\nimport com.pulumi.alicloud.edas.K8sCluster;\nimport com.pulumi.alicloud.edas.K8sClusterArgs;\nimport com.pulumi.alicloud.edas.K8sApplication;\nimport com.pulumi.alicloud.edas.K8sApplicationArgs;\nimport com.pulumi.alicloud.edas.K8sSlbAttachment;\nimport com.pulumi.alicloud.edas.K8sSlbAttachmentArgs;\nimport com.pulumi.alicloud.edas.inputs.K8sSlbAttachmentSlbConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_18.*64\")\n .mostRecent(true)\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(default_.zones()[0].id())\n .cpuCoreCount(4)\n .memorySize(8)\n .kubernetesNodeRole(\"Worker\")\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(default_.zones()[0].id())\n .build());\n\n var defaultManagedKubernetes = new ManagedKubernetes(\"defaultManagedKubernetes\", ManagedKubernetesArgs.builder()\n .namePrefix(name)\n .clusterSpec(\"ack.pro.small\")\n .workerVswitchIds(defaultSwitch.id())\n .newNatGateway(true)\n .podCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"10.0.0.0/8\")\n .newbits(8)\n .netnum(36)\n .build()).result())\n .serviceCidr(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()\n .input(\"172.16.0.0/16\")\n .newbits(4)\n .netnum(7)\n .build()).result())\n .slbInternetEnabled(true)\n .build());\n\n var defaultNodePool = new NodePool(\"defaultNodePool\", NodePoolArgs.builder()\n .name(name)\n .clusterId(defaultManagedKubernetes.id())\n .vswitchIds(defaultSwitch.id())\n .instanceTypes(defaultGetInstanceTypes.instanceTypes()[0].id())\n .systemDiskCategory(\"cloud_efficiency\")\n .systemDiskSize(40)\n .desiredSize(\"2\")\n .build());\n\n var defaultK8sCluster = new K8sCluster(\"defaultK8sCluster\", K8sClusterArgs.builder()\n .csClusterId(defaultNodePool.clusterId())\n .build());\n\n var defaultK8sApplication = new K8sApplication(\"defaultK8sApplication\", K8sApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultK8sCluster.id())\n .packageType(\"FatJar\")\n .packageUrl(\"http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\")\n .jdk(\"Open JDK 8\")\n .replicas(2)\n .readiness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .liveness(\"{\\\"failureThreshold\\\": 3,\\\"initialDelaySeconds\\\": 5,\\\"successThreshold\\\": 1,\\\"timeoutSeconds\\\": 1,\\\"tcpSocket\\\":{\\\"port\\\":18081}}\")\n .applicationDescriotion(name)\n .build());\n\n var defaultK8sSlbAttachment = new K8sSlbAttachment(\"defaultK8sSlbAttachment\", K8sSlbAttachmentArgs.builder()\n .appId(defaultK8sApplication.id())\n .slbConfigs(K8sSlbAttachmentSlbConfigArgs.builder()\n .type(\"internet\")\n .scheduler(\"rr\")\n .portMappings(K8sSlbAttachmentSlbConfigPortMappingArgs.builder()\n .loadbalancerProtocol(\"TCP\")\n .servicePort(K8sSlbAttachmentSlbConfigPortMappingServicePortArgs.builder()\n .port(80)\n .protocol(\"TCP\")\n .targetPort(8080)\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${default.zones[0].id}\n defaultManagedKubernetes:\n type: alicloud:cs:ManagedKubernetes\n name: default\n properties:\n namePrefix: ${name}\n clusterSpec: ack.pro.small\n workerVswitchIds:\n - ${defaultSwitch.id}\n newNatGateway: true\n podCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 10.0.0.0/8\n newbits: 8\n netnum: 36\n return: result\n serviceCidr:\n fn::invoke:\n function: std:cidrsubnet\n arguments:\n input: 172.16.0.0/16\n newbits: 4\n netnum: 7\n return: result\n slbInternetEnabled: true\n defaultNodePool:\n type: alicloud:cs:NodePool\n name: default\n properties:\n name: ${name}\n clusterId: ${defaultManagedKubernetes.id}\n vswitchIds:\n - ${defaultSwitch.id}\n instanceTypes:\n - ${defaultGetInstanceTypes.instanceTypes[0].id}\n systemDiskCategory: cloud_efficiency\n systemDiskSize: 40\n desiredSize: 2\n defaultK8sCluster:\n type: alicloud:edas:K8sCluster\n name: default\n properties:\n csClusterId: ${defaultNodePool.clusterId}\n defaultK8sApplication:\n type: alicloud:edas:K8sApplication\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultK8sCluster.id}\n packageType: FatJar\n packageUrl: http://edas-bj.oss-cn-beijing.aliyuncs.com/prod/demo/SPRING_CLOUD_PROVIDER.jar\n jdk: Open JDK 8\n replicas: 2\n readiness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n liveness: '{\"failureThreshold\": 3,\"initialDelaySeconds\": 5,\"successThreshold\": 1,\"timeoutSeconds\": 1,\"tcpSocket\":{\"port\":18081}}'\n applicationDescriotion: ${name}\n defaultK8sSlbAttachment:\n type: alicloud:edas:K8sSlbAttachment\n name: default\n properties:\n appId: ${defaultK8sApplication.id}\n slbConfigs:\n - type: internet\n scheduler: rr\n portMappings:\n - loadbalancerProtocol: TCP\n servicePort:\n port: 80\n protocol: TCP\n targetPort: 8080\nvariables:\n default:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_18.*64\n mostRecent: true\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${default.zones[0].id}\n cpuCoreCount: 4\n memorySize: 8\n kubernetesNodeRole: Worker\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nSlb information of EDAS k8s application can be imported using the ID of an EDAS k8s application. e.g.\n\n```sh\n$ pulumi import alicloud:edas/k8sSlbAttachment:K8sSlbAttachment example \u003cEDAS k8s app id\u003e\n```\n\n",
"properties": {
"appId": {
"type": "string",
@@ -163516,7 +166158,7 @@
}
},
"alicloud:edas/namespace:Namespace": {
- "description": "Provides a EDAS Namespace resource.\n\nFor information about EDAS Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/enterprise-distributed-application-service/latest/insertorupdateregion).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = new alicloud.edas.Namespace(\"default\", {\n debugEnable: false,\n description: name,\n namespaceLogicalId: `${region}:${name}`,\n namespaceName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.edas.Namespace(\"default\",\n debug_enable=False,\n description=name,\n namespace_logical_id=f\"{region}:{name}\",\n namespace_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = new AliCloud.Edas.Namespace(\"default\", new()\n {\n DebugEnable = false,\n Description = name,\n NamespaceLogicalId = $\"{region}:{name}\",\n NamespaceName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := edas.NewNamespace(ctx, \"default\", \u0026edas.NamespaceArgs{\n\t\t\tDebugEnable: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespaceLogicalId: pulumi.Sprintf(\"%v:%v\", region, name),\n\t\t\tNamespaceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.edas.Namespace;\nimport com.pulumi.alicloud.edas.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var name = config.get(\"name\").orElse(\"tfexample\");\n var default_ = new Namespace(\"default\", NamespaceArgs.builder()\n .debugEnable(false)\n .description(name)\n .namespaceLogicalId(String.format(\"%s:%s\", region,name))\n .namespaceName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region:\n type: string\n default: cn-hangzhou\n name:\n type: string\n default: tfexample\nresources:\n default:\n type: alicloud:edas:Namespace\n properties:\n debugEnable: false\n description: ${name}\n namespaceLogicalId: ${region}:${name}\n namespaceName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEDAS Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/namespace:Namespace example \u003cid\u003e\n```\n\n",
+ "description": "Provides a EDAS Namespace resource.\n\nFor information about EDAS Namespace and how to use it, see [What is Namespace](https://www.alibabacloud.com/help/en/enterprise-distributed-application-service/latest/insertorupdateregion).\n\n\u003e **NOTE:** Available since v1.173.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst region = config.get(\"region\") || \"cn-hangzhou\";\nconst name = config.get(\"name\") || \"tfexample\";\nconst _default = new alicloud.edas.Namespace(\"default\", {\n debugEnable: false,\n description: name,\n namespaceLogicalId: `${region}:${name}`,\n namespaceName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nregion = config.get(\"region\")\nif region is None:\n region = \"cn-hangzhou\"\nname = config.get(\"name\")\nif name is None:\n name = \"tfexample\"\ndefault = alicloud.edas.Namespace(\"default\",\n debug_enable=False,\n description=name,\n namespace_logical_id=f\"{region}:{name}\",\n namespace_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var region = config.Get(\"region\") ?? \"cn-hangzhou\";\n var name = config.Get(\"name\") ?? \"tfexample\";\n var @default = new AliCloud.Edas.Namespace(\"default\", new()\n {\n DebugEnable = false,\n Description = name,\n NamespaceLogicalId = $\"{region}:{name}\",\n NamespaceName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tregion := \"cn-hangzhou\"\n\t\tif param := cfg.Get(\"region\"); param != \"\" {\n\t\t\tregion = param\n\t\t}\n\t\tname := \"tfexample\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_, err := edas.NewNamespace(ctx, \"default\", \u0026edas.NamespaceArgs{\n\t\t\tDebugEnable: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(name),\n\t\t\tNamespaceLogicalId: pulumi.Sprintf(\"%v:%v\", region, name),\n\t\t\tNamespaceName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.edas.Namespace;\nimport com.pulumi.alicloud.edas.NamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var region = config.get(\"region\").orElse(\"cn-hangzhou\");\n final var name = config.get(\"name\").orElse(\"tfexample\");\n var default_ = new Namespace(\"default\", NamespaceArgs.builder()\n .debugEnable(false)\n .description(name)\n .namespaceLogicalId(String.format(\"%s:%s\", region,name))\n .namespaceName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n region:\n type: string\n default: cn-hangzhou\n name:\n type: string\n default: tfexample\nresources:\n default:\n type: alicloud:edas:Namespace\n properties:\n debugEnable: false\n description: ${name}\n namespaceLogicalId: ${region}:${name}\n namespaceName: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nEDAS Namespace can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:edas/namespace:Namespace example \u003cid\u003e\n```\n\n",
"properties": {
"debugEnable": {
"type": "boolean",
@@ -163588,7 +166230,7 @@
}
},
"alicloud:edas/slbAttachment:SlbAttachment": {
- "description": "Binds SLB to an EDAS application.\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n internetMaxBandwidthOut: 10,\n internetChargeType: \"PayByTraffic\",\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultApplicationLoadBalancer = new alicloud.slb.ApplicationLoadBalancer(\"default\", {\n loadBalancerName: name,\n vswitchId: defaultSwitch.id,\n loadBalancerSpec: \"slb.s2.small\",\n addressType: \"intranet\",\n});\nconst defaultSlbAttachment = new alicloud.edas.SlbAttachment(\"default\", {\n appId: defaultApplication.id,\n slbId: defaultApplicationLoadBalancer.id,\n slbIp: defaultApplicationLoadBalancer.address,\n type: defaultApplicationLoadBalancer.addressType,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n internet_max_bandwidth_out=10,\n internet_charge_type=\"PayByTraffic\",\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_application_load_balancer = alicloud.slb.ApplicationLoadBalancer(\"default\",\n load_balancer_name=name,\n vswitch_id=default_switch.id,\n load_balancer_spec=\"slb.s2.small\",\n address_type=\"intranet\")\ndefault_slb_attachment = alicloud.edas.SlbAttachment(\"default\",\n app_id=default_application.id,\n slb_id=default_application_load_balancer.id,\n slb_ip=default_application_load_balancer.address,\n type=default_application_load_balancer.address_type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InternetMaxBandwidthOut = 10,\n InternetChargeType = \"PayByTraffic\",\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultApplicationLoadBalancer = new AliCloud.Slb.ApplicationLoadBalancer(\"default\", new()\n {\n LoadBalancerName = name,\n VswitchId = defaultSwitch.Id,\n LoadBalancerSpec = \"slb.s2.small\",\n AddressType = \"intranet\",\n });\n\n var defaultSlbAttachment = new AliCloud.Edas.SlbAttachment(\"default\", new()\n {\n AppId = defaultApplication.Id,\n SlbId = defaultApplicationLoadBalancer.Id,\n SlbIp = defaultApplicationLoadBalancer.Address,\n Type = defaultApplicationLoadBalancer.AddressType,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/slb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplicationLoadBalancer, err := slb.NewApplicationLoadBalancer(ctx, \"default\", \u0026slb.ApplicationLoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tLoadBalancerSpec: pulumi.String(\"slb.s2.small\"),\n\t\t\tAddressType: pulumi.String(\"intranet\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewSlbAttachment(ctx, \"default\", \u0026edas.SlbAttachmentArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tSlbId: defaultApplicationLoadBalancer.ID(),\n\t\t\tSlbIp: defaultApplicationLoadBalancer.Address,\n\t\t\tType: defaultApplicationLoadBalancer.AddressType,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.slb.ApplicationLoadBalancer;\nimport com.pulumi.alicloud.slb.ApplicationLoadBalancerArgs;\nimport com.pulumi.alicloud.edas.SlbAttachment;\nimport com.pulumi.alicloud.edas.SlbAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .internetMaxBandwidthOut(10)\n .internetChargeType(\"PayByTraffic\")\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultApplicationLoadBalancer = new ApplicationLoadBalancer(\"defaultApplicationLoadBalancer\", ApplicationLoadBalancerArgs.builder()\n .loadBalancerName(name)\n .vswitchId(defaultSwitch.id())\n .loadBalancerSpec(\"slb.s2.small\")\n .addressType(\"intranet\")\n .build());\n\n var defaultSlbAttachment = new SlbAttachment(\"defaultSlbAttachment\", SlbAttachmentArgs.builder()\n .appId(defaultApplication.id())\n .slbId(defaultApplicationLoadBalancer.id())\n .slbIp(defaultApplicationLoadBalancer.address())\n .type(defaultApplicationLoadBalancer.addressType())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n internetMaxBandwidthOut: '10'\n internetChargeType: PayByTraffic\n instanceChargeType: PostPaid\n systemDiskCategory: cloud_efficiency\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultApplicationLoadBalancer:\n type: alicloud:slb:ApplicationLoadBalancer\n name: default\n properties:\n loadBalancerName: ${name}\n vswitchId: ${defaultSwitch.id}\n loadBalancerSpec: slb.s2.small\n addressType: intranet\n defaultSlbAttachment:\n type: alicloud:edas:SlbAttachment\n name: default\n properties:\n appId: ${defaultApplication.id}\n slbId: ${defaultApplicationLoadBalancer.id}\n slbIp: ${defaultApplicationLoadBalancer.address}\n type: ${defaultApplicationLoadBalancer.addressType}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_[0-9]+_[0-9]+_x64*\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
+ "description": "Binds SLB to an EDAS application.\n\n\u003e **NOTE:** Available since v1.82.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"tf-example\";\nconst _default = alicloud.getRegions({\n current: true,\n});\nconst defaultGetZones = alicloud.getZones({\n availableResourceCreation: \"VSwitch\",\n});\nconst defaultGetImages = alicloud.ecs.getImages({\n nameRegex: \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners: \"system\",\n});\nconst defaultGetInstanceTypes = defaultGetZones.then(defaultGetZones =\u003e alicloud.ecs.getInstanceTypes({\n availabilityZone: defaultGetZones.zones?.[0]?.id,\n cpuCoreCount: 1,\n memorySize: 2,\n}));\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"10.4.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vswitchName: name,\n cidrBlock: \"10.4.0.0/24\",\n vpcId: defaultNetwork.id,\n zoneId: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n});\nconst defaultSecurityGroup = new alicloud.ecs.SecurityGroup(\"default\", {vpcId: defaultNetwork.id});\nconst defaultInstance = new alicloud.ecs.Instance(\"default\", {\n availabilityZone: defaultGetZones.then(defaultGetZones =\u003e defaultGetZones.zones?.[0]?.id),\n instanceName: name,\n imageId: defaultGetImages.then(defaultGetImages =\u003e defaultGetImages.images?.[0]?.id),\n instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes =\u003e defaultGetInstanceTypes.instanceTypes?.[0]?.id),\n securityGroups: [defaultSecurityGroup.id],\n vswitchId: defaultSwitch.id,\n internetMaxBandwidthOut: 10,\n internetChargeType: \"PayByTraffic\",\n instanceChargeType: \"PostPaid\",\n systemDiskCategory: \"cloud_efficiency\",\n});\nconst defaultCluster = new alicloud.edas.Cluster(\"default\", {\n clusterName: name,\n clusterType: 2,\n networkMode: 2,\n logicalRegionId: _default.then(_default =\u003e _default.regions?.[0]?.id),\n vpcId: defaultNetwork.id,\n});\nconst defaultInstanceClusterAttachment = new alicloud.edas.InstanceClusterAttachment(\"default\", {\n clusterId: defaultCluster.id,\n instanceIds: [defaultInstance.id],\n});\nconst defaultApplication = new alicloud.edas.Application(\"default\", {\n applicationName: name,\n clusterId: defaultCluster.id,\n packageType: \"JAR\",\n});\nconst defaultApplicationLoadBalancer = new alicloud.slb.ApplicationLoadBalancer(\"default\", {\n loadBalancerName: name,\n vswitchId: defaultSwitch.id,\n loadBalancerSpec: \"slb.s2.small\",\n addressType: \"intranet\",\n});\nconst defaultSlbAttachment = new alicloud.edas.SlbAttachment(\"default\", {\n appId: defaultApplication.id,\n slbId: defaultApplicationLoadBalancer.id,\n slbIp: defaultApplicationLoadBalancer.address,\n type: defaultApplicationLoadBalancer.addressType,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"tf-example\"\ndefault = alicloud.get_regions(current=True)\ndefault_get_zones = alicloud.get_zones(available_resource_creation=\"VSwitch\")\ndefault_get_images = alicloud.ecs.get_images(name_regex=\"^ubuntu_[0-9]+_[0-9]+_x64*\",\n owners=\"system\")\ndefault_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_get_zones.zones[0].id,\n cpu_core_count=1,\n memory_size=2)\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"10.4.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vswitch_name=name,\n cidr_block=\"10.4.0.0/24\",\n vpc_id=default_network.id,\n zone_id=default_get_zones.zones[0].id)\ndefault_security_group = alicloud.ecs.SecurityGroup(\"default\", vpc_id=default_network.id)\ndefault_instance = alicloud.ecs.Instance(\"default\",\n availability_zone=default_get_zones.zones[0].id,\n instance_name=name,\n image_id=default_get_images.images[0].id,\n instance_type=default_get_instance_types.instance_types[0].id,\n security_groups=[default_security_group.id],\n vswitch_id=default_switch.id,\n internet_max_bandwidth_out=10,\n internet_charge_type=\"PayByTraffic\",\n instance_charge_type=\"PostPaid\",\n system_disk_category=\"cloud_efficiency\")\ndefault_cluster = alicloud.edas.Cluster(\"default\",\n cluster_name=name,\n cluster_type=2,\n network_mode=2,\n logical_region_id=default.regions[0].id,\n vpc_id=default_network.id)\ndefault_instance_cluster_attachment = alicloud.edas.InstanceClusterAttachment(\"default\",\n cluster_id=default_cluster.id,\n instance_ids=[default_instance.id])\ndefault_application = alicloud.edas.Application(\"default\",\n application_name=name,\n cluster_id=default_cluster.id,\n package_type=\"JAR\")\ndefault_application_load_balancer = alicloud.slb.ApplicationLoadBalancer(\"default\",\n load_balancer_name=name,\n vswitch_id=default_switch.id,\n load_balancer_spec=\"slb.s2.small\",\n address_type=\"intranet\")\ndefault_slb_attachment = alicloud.edas.SlbAttachment(\"default\",\n app_id=default_application.id,\n slb_id=default_application_load_balancer.id,\n slb_ip=default_application_load_balancer.address,\n type=default_application_load_balancer.address_type)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"tf-example\";\n var @default = AliCloud.GetRegions.Invoke(new()\n {\n Current = true,\n });\n\n var defaultGetZones = AliCloud.GetZones.Invoke(new()\n {\n AvailableResourceCreation = \"VSwitch\",\n });\n\n var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()\n {\n NameRegex = \"^ubuntu_[0-9]+_[0-9]+_x64*\",\n Owners = \"system\",\n });\n\n var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n CpuCoreCount = 1,\n MemorySize = 2,\n });\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"10.4.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VswitchName = name,\n CidrBlock = \"10.4.0.0/24\",\n VpcId = defaultNetwork.Id,\n ZoneId = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n });\n\n var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstance = new AliCloud.Ecs.Instance(\"default\", new()\n {\n AvailabilityZone = defaultGetZones.Apply(getZonesResult =\u003e getZonesResult.Zones[0]?.Id),\n InstanceName = name,\n ImageId = defaultGetImages.Apply(getImagesResult =\u003e getImagesResult.Images[0]?.Id),\n InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult =\u003e getInstanceTypesResult.InstanceTypes[0]?.Id),\n SecurityGroups = new[]\n {\n defaultSecurityGroup.Id,\n },\n VswitchId = defaultSwitch.Id,\n InternetMaxBandwidthOut = 10,\n InternetChargeType = \"PayByTraffic\",\n InstanceChargeType = \"PostPaid\",\n SystemDiskCategory = \"cloud_efficiency\",\n });\n\n var defaultCluster = new AliCloud.Edas.Cluster(\"default\", new()\n {\n ClusterName = name,\n ClusterType = 2,\n NetworkMode = 2,\n LogicalRegionId = @default.Apply(@default =\u003e @default.Apply(getRegionsResult =\u003e getRegionsResult.Regions[0]?.Id)),\n VpcId = defaultNetwork.Id,\n });\n\n var defaultInstanceClusterAttachment = new AliCloud.Edas.InstanceClusterAttachment(\"default\", new()\n {\n ClusterId = defaultCluster.Id,\n InstanceIds = new[]\n {\n defaultInstance.Id,\n },\n });\n\n var defaultApplication = new AliCloud.Edas.Application(\"default\", new()\n {\n ApplicationName = name,\n ClusterId = defaultCluster.Id,\n PackageType = \"JAR\",\n });\n\n var defaultApplicationLoadBalancer = new AliCloud.Slb.ApplicationLoadBalancer(\"default\", new()\n {\n LoadBalancerName = name,\n VswitchId = defaultSwitch.Id,\n LoadBalancerSpec = \"slb.s2.small\",\n AddressType = \"intranet\",\n });\n\n var defaultSlbAttachment = new AliCloud.Edas.SlbAttachment(\"default\", new()\n {\n AppId = defaultApplication.Id,\n SlbId = defaultApplicationLoadBalancer.Id,\n SlbIp = defaultApplicationLoadBalancer.Address,\n Type = defaultApplicationLoadBalancer.AddressType,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/edas\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/slb\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"tf-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := alicloud.GetRegions(ctx, \u0026alicloud.GetRegionsArgs{\n\t\t\tCurrent: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetZones, err := alicloud.GetZones(ctx, \u0026alicloud.GetZonesArgs{\n\t\t\tAvailableResourceCreation: pulumi.StringRef(\"VSwitch\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetImages, err := ecs.GetImages(ctx, \u0026ecs.GetImagesArgs{\n\t\t\tNameRegex: pulumi.StringRef(\"^ubuntu_[0-9]+_[0-9]+_x64*\"),\n\t\t\tOwners: pulumi.StringRef(\"system\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, \u0026ecs.GetInstanceTypesArgs{\n\t\t\tAvailabilityZone: pulumi.StringRef(defaultGetZones.Zones[0].Id),\n\t\t\tCpuCoreCount: pulumi.IntRef(1),\n\t\t\tMemorySize: pulumi.Float64Ref(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVswitchName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"10.4.0.0/24\"),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tZoneId: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"default\", \u0026ecs.SecurityGroupArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInstance, err := ecs.NewInstance(ctx, \"default\", \u0026ecs.InstanceArgs{\n\t\t\tAvailabilityZone: pulumi.String(defaultGetZones.Zones[0].Id),\n\t\t\tInstanceName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(defaultGetImages.Images[0].Id),\n\t\t\tInstanceType: pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),\n\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\tdefaultSecurityGroup.ID(),\n\t\t\t},\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tInternetMaxBandwidthOut: pulumi.Int(10),\n\t\t\tInternetChargeType: pulumi.String(\"PayByTraffic\"),\n\t\t\tInstanceChargeType: pulumi.String(\"PostPaid\"),\n\t\t\tSystemDiskCategory: pulumi.String(\"cloud_efficiency\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultCluster, err := edas.NewCluster(ctx, \"default\", \u0026edas.ClusterArgs{\n\t\t\tClusterName: pulumi.String(name),\n\t\t\tClusterType: pulumi.Int(2),\n\t\t\tNetworkMode: pulumi.Int(2),\n\t\t\tLogicalRegionId: pulumi.String(_default.Regions[0].Id),\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewInstanceClusterAttachment(ctx, \"default\", \u0026edas.InstanceClusterAttachmentArgs{\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tInstanceIds: pulumi.StringArray{\n\t\t\t\tdefaultInstance.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplication, err := edas.NewApplication(ctx, \"default\", \u0026edas.ApplicationArgs{\n\t\t\tApplicationName: pulumi.String(name),\n\t\t\tClusterId: defaultCluster.ID(),\n\t\t\tPackageType: pulumi.String(\"JAR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultApplicationLoadBalancer, err := slb.NewApplicationLoadBalancer(ctx, \"default\", \u0026slb.ApplicationLoadBalancerArgs{\n\t\t\tLoadBalancerName: pulumi.String(name),\n\t\t\tVswitchId: defaultSwitch.ID(),\n\t\t\tLoadBalancerSpec: pulumi.String(\"slb.s2.small\"),\n\t\t\tAddressType: pulumi.String(\"intranet\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = edas.NewSlbAttachment(ctx, \"default\", \u0026edas.SlbAttachmentArgs{\n\t\t\tAppId: defaultApplication.ID(),\n\t\t\tSlbId: defaultApplicationLoadBalancer.ID(),\n\t\t\tSlbIp: defaultApplicationLoadBalancer.Address,\n\t\t\tType: defaultApplicationLoadBalancer.AddressType,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.AlicloudFunctions;\nimport com.pulumi.alicloud.inputs.GetRegionsArgs;\nimport com.pulumi.alicloud.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.ecs.EcsFunctions;\nimport com.pulumi.alicloud.ecs.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.ecs.Instance;\nimport com.pulumi.alicloud.ecs.InstanceArgs;\nimport com.pulumi.alicloud.edas.Cluster;\nimport com.pulumi.alicloud.edas.ClusterArgs;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachment;\nimport com.pulumi.alicloud.edas.InstanceClusterAttachmentArgs;\nimport com.pulumi.alicloud.edas.Application;\nimport com.pulumi.alicloud.edas.ApplicationArgs;\nimport com.pulumi.alicloud.slb.ApplicationLoadBalancer;\nimport com.pulumi.alicloud.slb.ApplicationLoadBalancerArgs;\nimport com.pulumi.alicloud.edas.SlbAttachment;\nimport com.pulumi.alicloud.edas.SlbAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"tf-example\");\n final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()\n .current(true)\n .build());\n\n final var defaultGetZones = AlicloudFunctions.getZones(GetZonesArgs.builder()\n .availableResourceCreation(\"VSwitch\")\n .build());\n\n final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()\n .nameRegex(\"^ubuntu_[0-9]+_[0-9]+_x64*\")\n .owners(\"system\")\n .build());\n\n final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .cpuCoreCount(1)\n .memorySize(2)\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"10.4.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vswitchName(name)\n .cidrBlock(\"10.4.0.0/24\")\n .vpcId(defaultNetwork.id())\n .zoneId(defaultGetZones.zones()[0].id())\n .build());\n\n var defaultSecurityGroup = new SecurityGroup(\"defaultSecurityGroup\", SecurityGroupArgs.builder()\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstance = new Instance(\"defaultInstance\", InstanceArgs.builder()\n .availabilityZone(defaultGetZones.zones()[0].id())\n .instanceName(name)\n .imageId(defaultGetImages.images()[0].id())\n .instanceType(defaultGetInstanceTypes.instanceTypes()[0].id())\n .securityGroups(defaultSecurityGroup.id())\n .vswitchId(defaultSwitch.id())\n .internetMaxBandwidthOut(10)\n .internetChargeType(\"PayByTraffic\")\n .instanceChargeType(\"PostPaid\")\n .systemDiskCategory(\"cloud_efficiency\")\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterName(name)\n .clusterType(2)\n .networkMode(2)\n .logicalRegionId(default_.regions()[0].id())\n .vpcId(defaultNetwork.id())\n .build());\n\n var defaultInstanceClusterAttachment = new InstanceClusterAttachment(\"defaultInstanceClusterAttachment\", InstanceClusterAttachmentArgs.builder()\n .clusterId(defaultCluster.id())\n .instanceIds(defaultInstance.id())\n .build());\n\n var defaultApplication = new Application(\"defaultApplication\", ApplicationArgs.builder()\n .applicationName(name)\n .clusterId(defaultCluster.id())\n .packageType(\"JAR\")\n .build());\n\n var defaultApplicationLoadBalancer = new ApplicationLoadBalancer(\"defaultApplicationLoadBalancer\", ApplicationLoadBalancerArgs.builder()\n .loadBalancerName(name)\n .vswitchId(defaultSwitch.id())\n .loadBalancerSpec(\"slb.s2.small\")\n .addressType(\"intranet\")\n .build());\n\n var defaultSlbAttachment = new SlbAttachment(\"defaultSlbAttachment\", SlbAttachmentArgs.builder()\n .appId(defaultApplication.id())\n .slbId(defaultApplicationLoadBalancer.id())\n .slbIp(defaultApplicationLoadBalancer.address())\n .type(defaultApplicationLoadBalancer.addressType())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: tf-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 10.4.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vswitchName: ${name}\n cidrBlock: 10.4.0.0/24\n vpcId: ${defaultNetwork.id}\n zoneId: ${defaultGetZones.zones[0].id}\n defaultSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n defaultInstance:\n type: alicloud:ecs:Instance\n name: default\n properties:\n availabilityZone: ${defaultGetZones.zones[0].id}\n instanceName: ${name}\n imageId: ${defaultGetImages.images[0].id}\n instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}\n securityGroups:\n - ${defaultSecurityGroup.id}\n vswitchId: ${defaultSwitch.id}\n internetMaxBandwidthOut: '10'\n internetChargeType: PayByTraffic\n instanceChargeType: PostPaid\n systemDiskCategory: cloud_efficiency\n defaultCluster:\n type: alicloud:edas:Cluster\n name: default\n properties:\n clusterName: ${name}\n clusterType: '2'\n networkMode: '2'\n logicalRegionId: ${default.regions[0].id}\n vpcId: ${defaultNetwork.id}\n defaultInstanceClusterAttachment:\n type: alicloud:edas:InstanceClusterAttachment\n name: default\n properties:\n clusterId: ${defaultCluster.id}\n instanceIds:\n - ${defaultInstance.id}\n defaultApplication:\n type: alicloud:edas:Application\n name: default\n properties:\n applicationName: ${name}\n clusterId: ${defaultCluster.id}\n packageType: JAR\n defaultApplicationLoadBalancer:\n type: alicloud:slb:ApplicationLoadBalancer\n name: default\n properties:\n loadBalancerName: ${name}\n vswitchId: ${defaultSwitch.id}\n loadBalancerSpec: slb.s2.small\n addressType: intranet\n defaultSlbAttachment:\n type: alicloud:edas:SlbAttachment\n name: default\n properties:\n appId: ${defaultApplication.id}\n slbId: ${defaultApplicationLoadBalancer.id}\n slbIp: ${defaultApplicationLoadBalancer.address}\n type: ${defaultApplicationLoadBalancer.addressType}\nvariables:\n default:\n fn::invoke:\n function: alicloud:getRegions\n arguments:\n current: true\n defaultGetZones:\n fn::invoke:\n function: alicloud:getZones\n arguments:\n availableResourceCreation: VSwitch\n defaultGetImages:\n fn::invoke:\n function: alicloud:ecs:getImages\n arguments:\n nameRegex: ^ubuntu_[0-9]+_[0-9]+_x64*\n owners: system\n defaultGetInstanceTypes:\n fn::invoke:\n function: alicloud:ecs:getInstanceTypes\n arguments:\n availabilityZone: ${defaultGetZones.zones[0].id}\n cpuCoreCount: 1\n memorySize: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n",
"properties": {
"appId": {
"type": "string",
@@ -163715,7 +166357,7 @@
}
},
"alicloud:eds/adConnectorDirectory:AdConnectorDirectory": {
- "description": "Provides a ECD Ad Connector Directory resource.\n\nFor information about ECD Ad Connector Directory and how to use it, see [What is Ad Connector Directory](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createadconnectordirectory).\n\n\u003e **NOTE:** Available since v1.174.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchName: name,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAdConnectorDirectory = new alicloud.eds.AdConnectorDirectory(\"default\", {\n directoryName: `${name}-${defaultInteger.result}`,\n desktopAccessType: \"INTERNET\",\n dnsAddresses: [\"127.0.0.2\"],\n domainName: \"corp.example.com\",\n domainPassword: \"Example1234\",\n domainUserName: \"sAMAccountName\",\n enableAdminAccess: false,\n mfaEnabled: false,\n specification: 1,\n subDomainDnsAddresses: [\"127.0.0.3\"],\n subDomainName: \"child.example.com\",\n vswitchIds: [defaultSwitch.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.ids[0],\n vswitch_name=name)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_ad_connector_directory = alicloud.eds.AdConnectorDirectory(\"default\",\n directory_name=f\"{name}-{default_integer['result']}\",\n desktop_access_type=\"INTERNET\",\n dns_addresses=[\"127.0.0.2\"],\n domain_name=\"corp.example.com\",\n domain_password=\"Example1234\",\n domain_user_name=\"sAMAccountName\",\n enable_admin_access=False,\n mfa_enabled=False,\n specification=1,\n sub_domain_dns_addresses=[\"127.0.0.3\"],\n sub_domain_name=\"child.example.com\",\n vswitch_ids=[default_switch.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchName = name,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAdConnectorDirectory = new AliCloud.Eds.AdConnectorDirectory(\"default\", new()\n {\n DirectoryName = $\"{name}-{defaultInteger.Result}\",\n DesktopAccessType = \"INTERNET\",\n DnsAddresses = new[]\n {\n \"127.0.0.2\",\n },\n DomainName = \"corp.example.com\",\n DomainPassword = \"Example1234\",\n DomainUserName = \"sAMAccountName\",\n EnableAdminAccess = false,\n MfaEnabled = false,\n Specification = 1,\n SubDomainDnsAddresses = new[]\n {\n \"127.0.0.3\",\n },\n SubDomainName = \"child.example.com\",\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetZones(ctx, \u0026eds.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewAdConnectorDirectory(ctx, \"default\", \u0026eds.AdConnectorDirectoryArgs{\n\t\t\tDirectoryName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.2\"),\n\t\t\t},\n\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\tDomainPassword: pulumi.String(\"Example1234\"),\n\t\t\tDomainUserName: pulumi.String(\"sAMAccountName\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tMfaEnabled: pulumi.Bool(false),\n\t\t\tSpecification: pulumi.Int(1),\n\t\t\tSubDomainDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.3\"),\n\t\t\t},\n\t\t\tSubDomainName: pulumi.String(\"child.example.com\"),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.AdConnectorDirectory;\nimport com.pulumi.alicloud.eds.AdConnectorDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.ids()[0])\n .vswitchName(name)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAdConnectorDirectory = new AdConnectorDirectory(\"defaultAdConnectorDirectory\", AdConnectorDirectoryArgs.builder()\n .directoryName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .desktopAccessType(\"INTERNET\")\n .dnsAddresses(\"127.0.0.2\")\n .domainName(\"corp.example.com\")\n .domainPassword(\"Example1234\")\n .domainUserName(\"sAMAccountName\")\n .enableAdminAccess(false)\n .mfaEnabled(false)\n .specification(1)\n .subDomainDnsAddresses(\"127.0.0.3\")\n .subDomainName(\"child.example.com\")\n .vswitchIds(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.ids[0]}\n vswitchName: ${name}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultAdConnectorDirectory:\n type: alicloud:eds:AdConnectorDirectory\n name: default\n properties:\n directoryName: ${name}-${defaultInteger.result}\n desktopAccessType: INTERNET\n dnsAddresses:\n - 127.0.0.2\n domainName: corp.example.com\n domainPassword: Example1234\n domainUserName: sAMAccountName\n enableAdminAccess: false\n mfaEnabled: false\n specification: 1\n subDomainDnsAddresses:\n - 127.0.0.3\n subDomainName: child.example.com\n vswitchIds:\n - ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Ad Connector Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/adConnectorDirectory:AdConnectorDirectory example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Ad Connector Directory resource.\n\nFor information about ECD Ad Connector Directory and how to use it, see [What is Ad Connector Directory](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createadconnectordirectory).\n\n\u003e **NOTE:** Available since v1.174.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchName: name,\n});\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultAdConnectorDirectory = new alicloud.eds.AdConnectorDirectory(\"default\", {\n directoryName: `${name}-${defaultInteger.result}`,\n desktopAccessType: \"INTERNET\",\n dnsAddresses: [\"127.0.0.2\"],\n domainName: \"corp.example.com\",\n domainPassword: \"Example1234\",\n domainUserName: \"sAMAccountName\",\n enableAdminAccess: false,\n mfaEnabled: false,\n specification: 1,\n subDomainDnsAddresses: [\"127.0.0.3\"],\n subDomainName: \"child.example.com\",\n vswitchIds: [defaultSwitch.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.ids[0],\n vswitch_name=name)\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_ad_connector_directory = alicloud.eds.AdConnectorDirectory(\"default\",\n directory_name=f\"{name}-{default_integer['result']}\",\n desktop_access_type=\"INTERNET\",\n dns_addresses=[\"127.0.0.2\"],\n domain_name=\"corp.example.com\",\n domain_password=\"Example1234\",\n domain_user_name=\"sAMAccountName\",\n enable_admin_access=False,\n mfa_enabled=False,\n specification=1,\n sub_domain_dns_addresses=[\"127.0.0.3\"],\n sub_domain_name=\"child.example.com\",\n vswitch_ids=[default_switch.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchName = name,\n });\n\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultAdConnectorDirectory = new AliCloud.Eds.AdConnectorDirectory(\"default\", new()\n {\n DirectoryName = $\"{name}-{defaultInteger.Result}\",\n DesktopAccessType = \"INTERNET\",\n DnsAddresses = new[]\n {\n \"127.0.0.2\",\n },\n DomainName = \"corp.example.com\",\n DomainPassword = \"Example1234\",\n DomainUserName = \"sAMAccountName\",\n EnableAdminAccess = false,\n MfaEnabled = false,\n Specification = 1,\n SubDomainDnsAddresses = new[]\n {\n \"127.0.0.3\",\n },\n SubDomainName = \"child.example.com\",\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetZones(ctx, \u0026eds.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewAdConnectorDirectory(ctx, \"default\", \u0026eds.AdConnectorDirectoryArgs{\n\t\t\tDirectoryName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.2\"),\n\t\t\t},\n\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\tDomainPassword: pulumi.String(\"Example1234\"),\n\t\t\tDomainUserName: pulumi.String(\"sAMAccountName\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tMfaEnabled: pulumi.Bool(false),\n\t\t\tSpecification: pulumi.Int(1),\n\t\t\tSubDomainDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.3\"),\n\t\t\t},\n\t\t\tSubDomainName: pulumi.String(\"child.example.com\"),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.AdConnectorDirectory;\nimport com.pulumi.alicloud.eds.AdConnectorDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.ids()[0])\n .vswitchName(name)\n .build());\n\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultAdConnectorDirectory = new AdConnectorDirectory(\"defaultAdConnectorDirectory\", AdConnectorDirectoryArgs.builder()\n .directoryName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .desktopAccessType(\"INTERNET\")\n .dnsAddresses(\"127.0.0.2\")\n .domainName(\"corp.example.com\")\n .domainPassword(\"Example1234\")\n .domainUserName(\"sAMAccountName\")\n .enableAdminAccess(false)\n .mfaEnabled(false)\n .specification(1)\n .subDomainDnsAddresses(\"127.0.0.3\")\n .subDomainName(\"child.example.com\")\n .vswitchIds(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.ids[0]}\n vswitchName: ${name}\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultAdConnectorDirectory:\n type: alicloud:eds:AdConnectorDirectory\n name: default\n properties:\n directoryName: ${name}-${defaultInteger.result}\n desktopAccessType: INTERNET\n dnsAddresses:\n - 127.0.0.2\n domainName: corp.example.com\n domainPassword: Example1234\n domainUserName: sAMAccountName\n enableAdminAccess: false\n mfaEnabled: false\n specification: 1\n subDomainDnsAddresses:\n - 127.0.0.3\n subDomainName: child.example.com\n vswitchIds:\n - ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Ad Connector Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/adConnectorDirectory:AdConnectorDirectory example \u003cid\u003e\n```\n\n",
"properties": {
"desktopAccessType": {
"type": "string",
@@ -163950,7 +166592,7 @@
}
},
"alicloud:eds/adConnectorOfficeSite:AdConnectorOfficeSite": {
- "description": "Provides a ECD Ad Connector Office Site resource.\n\nFor information about ECD Ad Connector Office Site and how to use it, see [What is Ad Connector Office Site](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createadconnectorofficesite).\n\n\u003e **NOTE:** Available since v1.176.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultAdConnectorOfficeSite = new alicloud.eds.AdConnectorOfficeSite(\"default\", {\n adConnectorOfficeSiteName: name,\n bandwidth: 100,\n cenId: _default.id,\n cidrBlock: \"10.0.0.0/12\",\n desktopAccessType: \"INTERNET\",\n dnsAddresses: [\"127.0.0.2\"],\n domainName: \"corp.example.com\",\n domainPassword: \"Example1234\",\n domainUserName: \"sAMAccountName\",\n enableAdminAccess: false,\n enableInternetAccess: false,\n mfaEnabled: false,\n subDomainDnsAddresses: [\"127.0.0.3\"],\n subDomainName: \"child.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_ad_connector_office_site = alicloud.eds.AdConnectorOfficeSite(\"default\",\n ad_connector_office_site_name=name,\n bandwidth=100,\n cen_id=default.id,\n cidr_block=\"10.0.0.0/12\",\n desktop_access_type=\"INTERNET\",\n dns_addresses=[\"127.0.0.2\"],\n domain_name=\"corp.example.com\",\n domain_password=\"Example1234\",\n domain_user_name=\"sAMAccountName\",\n enable_admin_access=False,\n enable_internet_access=False,\n mfa_enabled=False,\n sub_domain_dns_addresses=[\"127.0.0.3\"],\n sub_domain_name=\"child.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultAdConnectorOfficeSite = new AliCloud.Eds.AdConnectorOfficeSite(\"default\", new()\n {\n AdConnectorOfficeSiteName = name,\n Bandwidth = 100,\n CenId = @default.Id,\n CidrBlock = \"10.0.0.0/12\",\n DesktopAccessType = \"INTERNET\",\n DnsAddresses = new[]\n {\n \"127.0.0.2\",\n },\n DomainName = \"corp.example.com\",\n DomainPassword = \"Example1234\",\n DomainUserName = \"sAMAccountName\",\n EnableAdminAccess = false,\n EnableInternetAccess = false,\n MfaEnabled = false,\n SubDomainDnsAddresses = new[]\n {\n \"127.0.0.3\",\n },\n SubDomainName = \"child.example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewAdConnectorOfficeSite(ctx, \"default\", \u0026eds.AdConnectorOfficeSiteArgs{\n\t\t\tAdConnectorOfficeSiteName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.Int(100),\n\t\t\tCenId: _default.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/12\"),\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.2\"),\n\t\t\t},\n\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\tDomainPassword: pulumi.String(\"Example1234\"),\n\t\t\tDomainUserName: pulumi.String(\"sAMAccountName\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tEnableInternetAccess: pulumi.Bool(false),\n\t\t\tMfaEnabled: pulumi.Bool(false),\n\t\t\tSubDomainDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.3\"),\n\t\t\t},\n\t\t\tSubDomainName: pulumi.String(\"child.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.eds.AdConnectorOfficeSite;\nimport com.pulumi.alicloud.eds.AdConnectorOfficeSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultAdConnectorOfficeSite = new AdConnectorOfficeSite(\"defaultAdConnectorOfficeSite\", AdConnectorOfficeSiteArgs.builder()\n .adConnectorOfficeSiteName(name)\n .bandwidth(100)\n .cenId(default_.id())\n .cidrBlock(\"10.0.0.0/12\")\n .desktopAccessType(\"INTERNET\")\n .dnsAddresses(\"127.0.0.2\")\n .domainName(\"corp.example.com\")\n .domainPassword(\"Example1234\")\n .domainUserName(\"sAMAccountName\")\n .enableAdminAccess(false)\n .enableInternetAccess(false)\n .mfaEnabled(false)\n .subDomainDnsAddresses(\"127.0.0.3\")\n .subDomainName(\"child.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultAdConnectorOfficeSite:\n type: alicloud:eds:AdConnectorOfficeSite\n name: default\n properties:\n adConnectorOfficeSiteName: ${name}\n bandwidth: 100\n cenId: ${default.id}\n cidrBlock: 10.0.0.0/12\n desktopAccessType: INTERNET\n dnsAddresses:\n - 127.0.0.2\n domainName: corp.example.com\n domainPassword: Example1234\n domainUserName: sAMAccountName\n enableAdminAccess: false\n enableInternetAccess: false\n mfaEnabled: false\n subDomainDnsAddresses:\n - 127.0.0.3\n subDomainName: child.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Ad Connector Office Site can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/adConnectorOfficeSite:AdConnectorOfficeSite example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Ad Connector Office Site resource.\n\nFor information about ECD Ad Connector Office Site and how to use it, see [What is Ad Connector Office Site](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createadconnectorofficesite).\n\n\u003e **NOTE:** Available since v1.176.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new alicloud.cen.Instance(\"default\", {\n cenInstanceName: name,\n protectionLevel: \"REDUCED\",\n});\nconst defaultAdConnectorOfficeSite = new alicloud.eds.AdConnectorOfficeSite(\"default\", {\n adConnectorOfficeSiteName: name,\n bandwidth: 100,\n cenId: _default.id,\n cidrBlock: \"10.0.0.0/12\",\n desktopAccessType: \"INTERNET\",\n dnsAddresses: [\"127.0.0.2\"],\n domainName: \"corp.example.com\",\n domainPassword: \"Example1234\",\n domainUserName: \"sAMAccountName\",\n enableAdminAccess: false,\n enableInternetAccess: false,\n mfaEnabled: false,\n subDomainDnsAddresses: [\"127.0.0.3\"],\n subDomainName: \"child.example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.cen.Instance(\"default\",\n cen_instance_name=name,\n protection_level=\"REDUCED\")\ndefault_ad_connector_office_site = alicloud.eds.AdConnectorOfficeSite(\"default\",\n ad_connector_office_site_name=name,\n bandwidth=100,\n cen_id=default.id,\n cidr_block=\"10.0.0.0/12\",\n desktop_access_type=\"INTERNET\",\n dns_addresses=[\"127.0.0.2\"],\n domain_name=\"corp.example.com\",\n domain_password=\"Example1234\",\n domain_user_name=\"sAMAccountName\",\n enable_admin_access=False,\n enable_internet_access=False,\n mfa_enabled=False,\n sub_domain_dns_addresses=[\"127.0.0.3\"],\n sub_domain_name=\"child.example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new AliCloud.Cen.Instance(\"default\", new()\n {\n CenInstanceName = name,\n ProtectionLevel = \"REDUCED\",\n });\n\n var defaultAdConnectorOfficeSite = new AliCloud.Eds.AdConnectorOfficeSite(\"default\", new()\n {\n AdConnectorOfficeSiteName = name,\n Bandwidth = 100,\n CenId = @default.Id,\n CidrBlock = \"10.0.0.0/12\",\n DesktopAccessType = \"INTERNET\",\n DnsAddresses = new[]\n {\n \"127.0.0.2\",\n },\n DomainName = \"corp.example.com\",\n DomainPassword = \"Example1234\",\n DomainUserName = \"sAMAccountName\",\n EnableAdminAccess = false,\n EnableInternetAccess = false,\n MfaEnabled = false,\n SubDomainDnsAddresses = new[]\n {\n \"127.0.0.3\",\n },\n SubDomainName = \"child.example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := cen.NewInstance(ctx, \"default\", \u0026cen.InstanceArgs{\n\t\t\tCenInstanceName: pulumi.String(name),\n\t\t\tProtectionLevel: pulumi.String(\"REDUCED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewAdConnectorOfficeSite(ctx, \"default\", \u0026eds.AdConnectorOfficeSiteArgs{\n\t\t\tAdConnectorOfficeSiteName: pulumi.String(name),\n\t\t\tBandwidth: pulumi.Int(100),\n\t\t\tCenId: _default.ID(),\n\t\t\tCidrBlock: pulumi.String(\"10.0.0.0/12\"),\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.2\"),\n\t\t\t},\n\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\tDomainPassword: pulumi.String(\"Example1234\"),\n\t\t\tDomainUserName: pulumi.String(\"sAMAccountName\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tEnableInternetAccess: pulumi.Bool(false),\n\t\t\tMfaEnabled: pulumi.Bool(false),\n\t\t\tSubDomainDnsAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"127.0.0.3\"),\n\t\t\t},\n\t\t\tSubDomainName: pulumi.String(\"child.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.cen.Instance;\nimport com.pulumi.alicloud.cen.InstanceArgs;\nimport com.pulumi.alicloud.eds.AdConnectorOfficeSite;\nimport com.pulumi.alicloud.eds.AdConnectorOfficeSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Instance(\"default\", InstanceArgs.builder()\n .cenInstanceName(name)\n .protectionLevel(\"REDUCED\")\n .build());\n\n var defaultAdConnectorOfficeSite = new AdConnectorOfficeSite(\"defaultAdConnectorOfficeSite\", AdConnectorOfficeSiteArgs.builder()\n .adConnectorOfficeSiteName(name)\n .bandwidth(100)\n .cenId(default_.id())\n .cidrBlock(\"10.0.0.0/12\")\n .desktopAccessType(\"INTERNET\")\n .dnsAddresses(\"127.0.0.2\")\n .domainName(\"corp.example.com\")\n .domainPassword(\"Example1234\")\n .domainUserName(\"sAMAccountName\")\n .enableAdminAccess(false)\n .enableInternetAccess(false)\n .mfaEnabled(false)\n .subDomainDnsAddresses(\"127.0.0.3\")\n .subDomainName(\"child.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: alicloud:cen:Instance\n properties:\n cenInstanceName: ${name}\n protectionLevel: REDUCED\n defaultAdConnectorOfficeSite:\n type: alicloud:eds:AdConnectorOfficeSite\n name: default\n properties:\n adConnectorOfficeSiteName: ${name}\n bandwidth: 100\n cenId: ${default.id}\n cidrBlock: 10.0.0.0/12\n desktopAccessType: INTERNET\n dnsAddresses:\n - 127.0.0.2\n domainName: corp.example.com\n domainPassword: Example1234\n domainUserName: sAMAccountName\n enableAdminAccess: false\n enableInternetAccess: false\n mfaEnabled: false\n subDomainDnsAddresses:\n - 127.0.0.3\n subDomainName: child.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Ad Connector Office Site can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/adConnectorOfficeSite:AdConnectorOfficeSite example \u003cid\u003e\n```\n\n",
"properties": {
"adConnectorOfficeSiteName": {
"type": "string",
@@ -164248,7 +166890,7 @@
}
},
"alicloud:eds/bundle:Bundle": {
- "description": "Provides a ECD Bundle resource.\n\nFor information about ECD Bundle and how to use it, see [What is Bundle](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createbundle).\n\n\u003e **NOTE:** Available since v1.170.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getImages({\n imageType: \"SYSTEM\",\n osType: \"Windows\",\n desktopInstanceType: \"eds.hf.4c8g\",\n});\nconst defaultGetDesktopTypes = alicloud.eds.getDesktopTypes({\n instanceTypeFamily: \"eds.hf\",\n cpuCount: 4,\n memorySize: 8192,\n});\nconst defaultBundle = new alicloud.eds.Bundle(\"default\", {\n description: name,\n desktopType: defaultGetDesktopTypes.then(defaultGetDesktopTypes =\u003e defaultGetDesktopTypes.ids?.[0]),\n bundleName: name,\n imageId: _default.then(_default =\u003e _default.ids?.[0]),\n userDiskSizeGibs: [70],\n rootDiskSizeGib: 80,\n rootDiskPerformanceLevel: \"PL1\",\n userDiskPerformanceLevel: \"PL1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_images(image_type=\"SYSTEM\",\n os_type=\"Windows\",\n desktop_instance_type=\"eds.hf.4c8g\")\ndefault_get_desktop_types = alicloud.eds.get_desktop_types(instance_type_family=\"eds.hf\",\n cpu_count=4,\n memory_size=8192)\ndefault_bundle = alicloud.eds.Bundle(\"default\",\n description=name,\n desktop_type=default_get_desktop_types.ids[0],\n bundle_name=name,\n image_id=default.ids[0],\n user_disk_size_gibs=[70],\n root_disk_size_gib=80,\n root_disk_performance_level=\"PL1\",\n user_disk_performance_level=\"PL1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetImages.Invoke(new()\n {\n ImageType = \"SYSTEM\",\n OsType = \"Windows\",\n DesktopInstanceType = \"eds.hf.4c8g\",\n });\n\n var defaultGetDesktopTypes = AliCloud.Eds.GetDesktopTypes.Invoke(new()\n {\n InstanceTypeFamily = \"eds.hf\",\n CpuCount = 4,\n MemorySize = 8192,\n });\n\n var defaultBundle = new AliCloud.Eds.Bundle(\"default\", new()\n {\n Description = name,\n DesktopType = defaultGetDesktopTypes.Apply(getDesktopTypesResult =\u003e getDesktopTypesResult.Ids[0]),\n BundleName = name,\n ImageId = @default.Apply(@default =\u003e @default.Apply(getImagesResult =\u003e getImagesResult.Ids[0])),\n UserDiskSizeGibs = new[]\n {\n 70,\n },\n RootDiskSizeGib = 80,\n RootDiskPerformanceLevel = \"PL1\",\n UserDiskPerformanceLevel = \"PL1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetImages(ctx, \u0026eds.GetImagesArgs{\n\t\t\tImageType: pulumi.StringRef(\"SYSTEM\"),\n\t\t\tOsType: pulumi.StringRef(\"Windows\"),\n\t\t\tDesktopInstanceType: pulumi.StringRef(\"eds.hf.4c8g\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetDesktopTypes, err := eds.GetDesktopTypes(ctx, \u0026eds.GetDesktopTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"eds.hf\"),\n\t\t\tCpuCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.IntRef(8192),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewBundle(ctx, \"default\", \u0026eds.BundleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDesktopType: pulumi.String(defaultGetDesktopTypes.Ids[0]),\n\t\t\tBundleName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(_default.Ids[0]),\n\t\t\tUserDiskSizeGibs: pulumi.IntArray{\n\t\t\t\tpulumi.Int(70),\n\t\t\t},\n\t\t\tRootDiskSizeGib: pulumi.Int(80),\n\t\t\tRootDiskPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tUserDiskPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.eds.inputs.GetDesktopTypesArgs;\nimport com.pulumi.alicloud.eds.Bundle;\nimport com.pulumi.alicloud.eds.BundleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getImages(GetImagesArgs.builder()\n .imageType(\"SYSTEM\")\n .osType(\"Windows\")\n .desktopInstanceType(\"eds.hf.4c8g\")\n .build());\n\n final var defaultGetDesktopTypes = EdsFunctions.getDesktopTypes(GetDesktopTypesArgs.builder()\n .instanceTypeFamily(\"eds.hf\")\n .cpuCount(4)\n .memorySize(8192)\n .build());\n\n var defaultBundle = new Bundle(\"defaultBundle\", BundleArgs.builder()\n .description(name)\n .desktopType(defaultGetDesktopTypes.ids()[0])\n .bundleName(name)\n .imageId(default_.ids()[0])\n .userDiskSizeGibs(70)\n .rootDiskSizeGib(80)\n .rootDiskPerformanceLevel(\"PL1\")\n .userDiskPerformanceLevel(\"PL1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultBundle:\n type: alicloud:eds:Bundle\n name: default\n properties:\n description: ${name}\n desktopType: ${defaultGetDesktopTypes.ids[0]}\n bundleName: ${name}\n imageId: ${default.ids[0]}\n userDiskSizeGibs:\n - 70\n rootDiskSizeGib: 80\n rootDiskPerformanceLevel: PL1\n userDiskPerformanceLevel: PL1\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getImages\n arguments:\n imageType: SYSTEM\n osType: Windows\n desktopInstanceType: eds.hf.4c8g\n defaultGetDesktopTypes:\n fn::invoke:\n function: alicloud:eds:getDesktopTypes\n arguments:\n instanceTypeFamily: eds.hf\n cpuCount: 4\n memorySize: 8192\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Bundle can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/bundle:Bundle example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Bundle resource.\n\nFor information about ECD Bundle and how to use it, see [What is Bundle](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createbundle).\n\n\u003e **NOTE:** Available since v1.170.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getImages({\n imageType: \"SYSTEM\",\n osType: \"Windows\",\n desktopInstanceType: \"eds.hf.4c8g\",\n});\nconst defaultGetDesktopTypes = alicloud.eds.getDesktopTypes({\n instanceTypeFamily: \"eds.hf\",\n cpuCount: 4,\n memorySize: 8192,\n});\nconst defaultBundle = new alicloud.eds.Bundle(\"default\", {\n description: name,\n desktopType: defaultGetDesktopTypes.then(defaultGetDesktopTypes =\u003e defaultGetDesktopTypes.ids?.[0]),\n bundleName: name,\n imageId: _default.then(_default =\u003e _default.ids?.[0]),\n userDiskSizeGibs: [70],\n rootDiskSizeGib: 80,\n rootDiskPerformanceLevel: \"PL1\",\n userDiskPerformanceLevel: \"PL1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_images(image_type=\"SYSTEM\",\n os_type=\"Windows\",\n desktop_instance_type=\"eds.hf.4c8g\")\ndefault_get_desktop_types = alicloud.eds.get_desktop_types(instance_type_family=\"eds.hf\",\n cpu_count=4,\n memory_size=8192)\ndefault_bundle = alicloud.eds.Bundle(\"default\",\n description=name,\n desktop_type=default_get_desktop_types.ids[0],\n bundle_name=name,\n image_id=default.ids[0],\n user_disk_size_gibs=[70],\n root_disk_size_gib=80,\n root_disk_performance_level=\"PL1\",\n user_disk_performance_level=\"PL1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetImages.Invoke(new()\n {\n ImageType = \"SYSTEM\",\n OsType = \"Windows\",\n DesktopInstanceType = \"eds.hf.4c8g\",\n });\n\n var defaultGetDesktopTypes = AliCloud.Eds.GetDesktopTypes.Invoke(new()\n {\n InstanceTypeFamily = \"eds.hf\",\n CpuCount = 4,\n MemorySize = 8192,\n });\n\n var defaultBundle = new AliCloud.Eds.Bundle(\"default\", new()\n {\n Description = name,\n DesktopType = defaultGetDesktopTypes.Apply(getDesktopTypesResult =\u003e getDesktopTypesResult.Ids[0]),\n BundleName = name,\n ImageId = @default.Apply(@default =\u003e @default.Apply(getImagesResult =\u003e getImagesResult.Ids[0])),\n UserDiskSizeGibs = new[]\n {\n 70,\n },\n RootDiskSizeGib = 80,\n RootDiskPerformanceLevel = \"PL1\",\n UserDiskPerformanceLevel = \"PL1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetImages(ctx, \u0026eds.GetImagesArgs{\n\t\t\tImageType: pulumi.StringRef(\"SYSTEM\"),\n\t\t\tOsType: pulumi.StringRef(\"Windows\"),\n\t\t\tDesktopInstanceType: pulumi.StringRef(\"eds.hf.4c8g\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultGetDesktopTypes, err := eds.GetDesktopTypes(ctx, \u0026eds.GetDesktopTypesArgs{\n\t\t\tInstanceTypeFamily: pulumi.StringRef(\"eds.hf\"),\n\t\t\tCpuCount: pulumi.IntRef(4),\n\t\t\tMemorySize: pulumi.IntRef(8192),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewBundle(ctx, \"default\", \u0026eds.BundleArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDesktopType: pulumi.String(defaultGetDesktopTypes.Ids[0]),\n\t\t\tBundleName: pulumi.String(name),\n\t\t\tImageId: pulumi.String(_default.Ids[0]),\n\t\t\tUserDiskSizeGibs: pulumi.IntArray{\n\t\t\t\tpulumi.Int(70),\n\t\t\t},\n\t\t\tRootDiskSizeGib: pulumi.Int(80),\n\t\t\tRootDiskPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t\tUserDiskPerformanceLevel: pulumi.String(\"PL1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetImagesArgs;\nimport com.pulumi.alicloud.eds.inputs.GetDesktopTypesArgs;\nimport com.pulumi.alicloud.eds.Bundle;\nimport com.pulumi.alicloud.eds.BundleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getImages(GetImagesArgs.builder()\n .imageType(\"SYSTEM\")\n .osType(\"Windows\")\n .desktopInstanceType(\"eds.hf.4c8g\")\n .build());\n\n final var defaultGetDesktopTypes = EdsFunctions.getDesktopTypes(GetDesktopTypesArgs.builder()\n .instanceTypeFamily(\"eds.hf\")\n .cpuCount(4)\n .memorySize(8192)\n .build());\n\n var defaultBundle = new Bundle(\"defaultBundle\", BundleArgs.builder()\n .description(name)\n .desktopType(defaultGetDesktopTypes.ids()[0])\n .bundleName(name)\n .imageId(default_.ids()[0])\n .userDiskSizeGibs(70)\n .rootDiskSizeGib(80)\n .rootDiskPerformanceLevel(\"PL1\")\n .userDiskPerformanceLevel(\"PL1\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultBundle:\n type: alicloud:eds:Bundle\n name: default\n properties:\n description: ${name}\n desktopType: ${defaultGetDesktopTypes.ids[0]}\n bundleName: ${name}\n imageId: ${default.ids[0]}\n userDiskSizeGibs:\n - 70\n rootDiskSizeGib: 80\n rootDiskPerformanceLevel: PL1\n userDiskPerformanceLevel: PL1\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getImages\n arguments:\n imageType: SYSTEM\n osType: Windows\n desktopInstanceType: eds.hf.4c8g\n defaultGetDesktopTypes:\n fn::invoke:\n function: alicloud:eds:getDesktopTypes\n arguments:\n instanceTypeFamily: eds.hf\n cpuCount: 4\n memorySize: 8192\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Bundle can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/bundle:Bundle example \u003cid\u003e\n```\n\n",
"properties": {
"bundleName": {
"type": "string",
@@ -164402,7 +167044,7 @@
}
},
"alicloud:eds/command:Command": {
- "description": "Provides a ECD Command resource.\n\nFor information about ECD Command and how to use it, see [What is Command](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-runcommand).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n bundleIds: [\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n ],\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[0]?.id),\n desktopName: name,\n});\nconst defaultCommand = new alicloud.eds.Command(\"default\", {\n commandContent: \"ipconfig\",\n commandType: \"RunPowerShellScript\",\n desktopId: defaultDesktop.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\",\n bundle_ids=[\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n ])\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[0].id,\n desktop_name=name)\ndefault_command = alicloud.eds.Command(\"default\",\n command_content=\"ipconfig\",\n command_type=\"RunPowerShellScript\",\n desktop_id=default_desktop.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n BundleIds = new[]\n {\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n },\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[0]?.Id)),\n DesktopName = name,\n });\n\n var defaultCommand = new AliCloud.Eds.Command(\"default\", new()\n {\n CommandContent = \"ipconfig\",\n CommandType = \"RunPowerShellScript\",\n DesktopId = defaultDesktop.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t\tBundleIds: []string{\n\t\t\t\t\"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n\t\t\t\t\"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[0].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewCommand(ctx, \"default\", \u0026eds.CommandArgs{\n\t\t\tCommandContent: pulumi.String(\"ipconfig\"),\n\t\t\tCommandType: pulumi.String(\"RunPowerShellScript\"),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Command;\nimport com.pulumi.alicloud.eds.CommandArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .bundleIds( \n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[0].id())\n .desktopName(name)\n .build());\n\n var defaultCommand = new Command(\"defaultCommand\", CommandArgs.builder()\n .commandContent(\"ipconfig\")\n .commandType(\"RunPowerShellScript\")\n .desktopId(defaultDesktop.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[0].id}\n desktopName: ${name}\n defaultCommand:\n type: alicloud:eds:Command\n name: default\n properties:\n commandContent: ipconfig\n commandType: RunPowerShellScript\n desktopId: ${defaultDesktop.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n bundleIds:\n - bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\n - bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Command can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/command:Command example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Command resource.\n\nFor information about ECD Command and how to use it, see [What is Command](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-runcommand).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n bundleIds: [\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n ],\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[0]?.id),\n desktopName: name,\n});\nconst defaultCommand = new alicloud.eds.Command(\"default\", {\n commandContent: \"ipconfig\",\n commandType: \"RunPowerShellScript\",\n desktopId: defaultDesktop.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\",\n bundle_ids=[\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n ])\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[0].id,\n desktop_name=name)\ndefault_command = alicloud.eds.Command(\"default\",\n command_content=\"ipconfig\",\n command_type=\"RunPowerShellScript\",\n desktop_id=default_desktop.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n BundleIds = new[]\n {\n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n },\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[0]?.Id)),\n DesktopName = name,\n });\n\n var defaultCommand = new AliCloud.Eds.Command(\"default\", new()\n {\n CommandContent = \"ipconfig\",\n CommandType = \"RunPowerShellScript\",\n DesktopId = defaultDesktop.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t\tBundleIds: []string{\n\t\t\t\t\"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n\t\t\t\t\"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[0].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewCommand(ctx, \"default\", \u0026eds.CommandArgs{\n\t\t\tCommandContent: pulumi.String(\"ipconfig\"),\n\t\t\tCommandType: pulumi.String(\"RunPowerShellScript\"),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Command;\nimport com.pulumi.alicloud.eds.CommandArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .bundleIds( \n \"bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\",\n \"bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[0].id())\n .desktopName(name)\n .build());\n\n var defaultCommand = new Command(\"defaultCommand\", CommandArgs.builder()\n .commandContent(\"ipconfig\")\n .commandType(\"RunPowerShellScript\")\n .desktopId(defaultDesktop.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[0].id}\n desktopName: ${name}\n defaultCommand:\n type: alicloud:eds:Command\n name: default\n properties:\n commandContent: ipconfig\n commandType: RunPowerShellScript\n desktopId: ${defaultDesktop.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n bundleIds:\n - bundle_eds_enterprise_office_4c8g_s8d2_win2019_edu\n - bundle_eds_enterprise_office_8c16g_s8d2_win2019_edu\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Command can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/command:Command example \u003cid\u003e\n```\n\n",
"properties": {
"commandContent": {
"type": "string",
@@ -164500,7 +167142,7 @@
}
},
"alicloud:eds/customProperty:CustomProperty": {
- "description": "Provides a ECD Custom Property resource.\n\nFor information about ECD Custom Property and how to use it, see [What is Custom Property](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-eds-user-2021-03-08-createproperty-desktop).\n\n\u003e **NOTE:** Available since v1.176.0.\n\n\u003e **NOTE:** Up to 10 different attributes can be created under an alibaba cloud account. Up to 50 different attribute values can be added under an attribute.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.eds.CustomProperty(\"example\", {\n propertyKey: \"example_key\",\n propertyValues: [{\n propertyValue: \"example_value\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.eds.CustomProperty(\"example\",\n property_key=\"example_key\",\n property_values=[{\n \"property_value\": \"example_value\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Eds.CustomProperty(\"example\", new()\n {\n PropertyKey = \"example_key\",\n PropertyValues = new[]\n {\n new AliCloud.Eds.Inputs.CustomPropertyPropertyValueArgs\n {\n PropertyValue = \"example_value\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewCustomProperty(ctx, \"example\", \u0026eds.CustomPropertyArgs{\n\t\t\tPropertyKey: pulumi.String(\"example_key\"),\n\t\t\tPropertyValues: eds.CustomPropertyPropertyValueArray{\n\t\t\t\t\u0026eds.CustomPropertyPropertyValueArgs{\n\t\t\t\t\tPropertyValue: pulumi.String(\"example_value\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.CustomProperty;\nimport com.pulumi.alicloud.eds.CustomPropertyArgs;\nimport com.pulumi.alicloud.eds.inputs.CustomPropertyPropertyValueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new CustomProperty(\"example\", CustomPropertyArgs.builder()\n .propertyKey(\"example_key\")\n .propertyValues(CustomPropertyPropertyValueArgs.builder()\n .propertyValue(\"example_value\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:eds:CustomProperty\n properties:\n propertyKey: example_key\n propertyValues:\n - propertyValue: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Custom Property can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/customProperty:CustomProperty example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Custom Property resource.\n\nFor information about ECD Custom Property and how to use it, see [What is Custom Property](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-eds-user-2021-03-08-createproperty-desktop).\n\n\u003e **NOTE:** Available since v1.176.0.\n\n\u003e **NOTE:** Up to 10 different attributes can be created under an alibaba cloud account. Up to 50 different attribute values can be added under an attribute.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst example = new alicloud.eds.CustomProperty(\"example\", {\n propertyKey: \"example_key\",\n propertyValues: [{\n propertyValue: \"example_value\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nexample = alicloud.eds.CustomProperty(\"example\",\n property_key=\"example_key\",\n property_values=[{\n \"property_value\": \"example_value\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new AliCloud.Eds.CustomProperty(\"example\", new()\n {\n PropertyKey = \"example_key\",\n PropertyValues = new[]\n {\n new AliCloud.Eds.Inputs.CustomPropertyPropertyValueArgs\n {\n PropertyValue = \"example_value\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewCustomProperty(ctx, \"example\", \u0026eds.CustomPropertyArgs{\n\t\t\tPropertyKey: pulumi.String(\"example_key\"),\n\t\t\tPropertyValues: eds.CustomPropertyPropertyValueArray{\n\t\t\t\t\u0026eds.CustomPropertyPropertyValueArgs{\n\t\t\t\t\tPropertyValue: pulumi.String(\"example_value\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.CustomProperty;\nimport com.pulumi.alicloud.eds.CustomPropertyArgs;\nimport com.pulumi.alicloud.eds.inputs.CustomPropertyPropertyValueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new CustomProperty(\"example\", CustomPropertyArgs.builder()\n .propertyKey(\"example_key\")\n .propertyValues(CustomPropertyPropertyValueArgs.builder()\n .propertyValue(\"example_value\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: alicloud:eds:CustomProperty\n properties:\n propertyKey: example_key\n propertyValues:\n - propertyValue: example_value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Custom Property can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/customProperty:CustomProperty example \u003cid\u003e\n```\n\n",
"properties": {
"propertyKey": {
"type": "string",
@@ -164552,7 +167194,7 @@
}
},
"alicloud:eds/desktop:Desktop": {
- "description": "Provides a ECD Desktop resource.\n\nFor information about ECD Desktop and how to use it, see [What is Desktop](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createdesktops)\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Desktop can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/desktop:Desktop example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Desktop resource.\n\nFor information about ECD Desktop and how to use it, see [What is Desktop](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createdesktops)\n\n\u003e **NOTE:** Available since v1.144.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Desktop can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/desktop:Desktop example \u003cid\u003e\n```\n\n",
"properties": {
"amount": {
"type": "integer",
@@ -164830,7 +167472,7 @@
}
},
"alicloud:eds/ecdPolicyGroup:EcdPolicyGroup": {
- "description": "Provides a Elastic Desktop Service (ECD) Policy Group resource.\n\nFor information about Elastic Desktop Service (ECD) Policy Group and how to use it, see [What is Policy Group](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createpolicygroup).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: \"terraform-example\",\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: \"terraform-example\",\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: \"terraform-example\",\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=\"terraform-example\",\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": \"terraform-example\",\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": \"terraform-example\",\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = \"terraform-example\",\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = \"terraform-example\",\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = \"terraform-example\",\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcdPolicyGroup(\"default\", EcdPolicyGroupArgs.builder()\n .policyGroupName(\"terraform-example\")\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(\"terraform-example\")\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(\"terraform-example\")\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:eds:EcdPolicyGroup\n properties:\n policyGroupName: terraform-example\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: terraform-example\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: terraform-example\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nElastic Desktop Service (ECD) Policy Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/ecdPolicyGroup:EcdPolicyGroup example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Elastic Desktop Service (ECD) Policy Group resource.\n\nFor information about Elastic Desktop Service (ECD) Policy Group and how to use it, see [What is Policy Group](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createpolicygroup).\n\n\u003e **NOTE:** Available since v1.130.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: \"terraform-example\",\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: \"terraform-example\",\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: \"terraform-example\",\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=\"terraform-example\",\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": \"terraform-example\",\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": \"terraform-example\",\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = \"terraform-example\",\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = \"terraform-example\",\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = \"terraform-example\",\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(\"terraform-example\"),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(\"terraform-example\"),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new EcdPolicyGroup(\"default\", EcdPolicyGroupArgs.builder()\n .policyGroupName(\"terraform-example\")\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(\"terraform-example\")\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(\"terraform-example\")\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:eds:EcdPolicyGroup\n properties:\n policyGroupName: terraform-example\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: terraform-example\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: terraform-example\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nElastic Desktop Service (ECD) Policy Group can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/ecdPolicyGroup:EcdPolicyGroup example \u003cid\u003e\n```\n\n",
"properties": {
"authorizeAccessPolicyRules": {
"type": "array",
@@ -165113,7 +167755,7 @@
}
},
"alicloud:eds/image:Image": {
- "description": "Provides a ECD Image resource.\n\nFor information about ECD Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createimage).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\nconst defaultImage = new alicloud.eds.Image(\"default\", {\n imageName: name,\n desktopId: defaultDesktop.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\ndefault_image = alicloud.eds.Image(\"default\",\n image_name=name,\n desktop_id=default_desktop.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n var defaultImage = new AliCloud.Eds.Image(\"default\", new()\n {\n ImageName = name,\n DesktopId = defaultDesktop.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewImage(ctx, \"default\", \u0026eds.ImageArgs{\n\t\t\tImageName: pulumi.String(name),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Image;\nimport com.pulumi.alicloud.eds.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .imageName(name)\n .desktopId(defaultDesktop.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\n defaultImage:\n type: alicloud:eds:Image\n name: default\n properties:\n imageName: ${name}\n desktopId: ${defaultDesktop.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/image:Image example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Image resource.\n\nFor information about ECD Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createimage).\n\n\u003e **NOTE:** Available since v1.146.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\nconst defaultImage = new alicloud.eds.Image(\"default\", {\n imageName: name,\n desktopId: defaultDesktop.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\ndefault_image = alicloud.eds.Image(\"default\",\n image_name=name,\n desktop_id=default_desktop.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n var defaultImage = new AliCloud.Eds.Image(\"default\", new()\n {\n ImageName = name,\n DesktopId = defaultDesktop.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewImage(ctx, \"default\", \u0026eds.ImageArgs{\n\t\t\tImageName: pulumi.String(name),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Image;\nimport com.pulumi.alicloud.eds.ImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n var defaultImage = new Image(\"defaultImage\", ImageArgs.builder()\n .imageName(name)\n .desktopId(defaultDesktop.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\n defaultImage:\n type: alicloud:eds:Image\n name: default\n properties:\n imageName: ${name}\n desktopId: ${defaultDesktop.id}\n description: ${name}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Image can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/image:Image example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -165177,7 +167819,7 @@
}
},
"alicloud:eds/nasFileSystem:NasFileSystem": {
- "description": "Provides a ECD Nas File System resource.\n\nFor information about ECD Nas File System and how to use it, see [What is Nas File System](https://www.alibabacloud.com/help/en/elastic-desktop-service/latest/api-reference-for-easy-use-1).\n\n\u003e **NOTE:** Available since v1.141.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: false,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${_default.result}`,\n});\nconst example = new alicloud.eds.NasFileSystem(\"example\", {\n nasFileSystemName: name,\n officeSiteId: defaultSimpleOfficeSite.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=False,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default['result']}\")\nexample = alicloud.eds.NasFileSystem(\"example\",\n nas_file_system_name=name,\n office_site_id=default_simple_office_site.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = false,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{@default.Result}\",\n });\n\n var example = new AliCloud.Eds.NasFileSystem(\"example\", new()\n {\n NasFileSystemName = name,\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewNasFileSystem(ctx, \"example\", \u0026eds.NasFileSystemArgs{\n\t\t\tNasFileSystemName: pulumi.String(name),\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.NasFileSystem;\nimport com.pulumi.alicloud.eds.NasFileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(false)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var example = new NasFileSystem(\"example\", NasFileSystemArgs.builder()\n .nasFileSystemName(name)\n .officeSiteId(defaultSimpleOfficeSite.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: false\n desktopAccessType: Internet\n officeSiteName: ${name}-${default.result}\n example:\n type: alicloud:eds:NasFileSystem\n properties:\n nasFileSystemName: ${name}\n officeSiteId: ${defaultSimpleOfficeSite.id}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Nas File System can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/nasFileSystem:NasFileSystem example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Nas File System resource.\n\nFor information about ECD Nas File System and how to use it, see [What is Nas File System](https://www.alibabacloud.com/help/en/elastic-desktop-service/latest/api-reference-for-easy-use-1).\n\n\u003e **NOTE:** Available since v1.141.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: false,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${_default.result}`,\n});\nconst example = new alicloud.eds.NasFileSystem(\"example\", {\n nasFileSystemName: name,\n officeSiteId: defaultSimpleOfficeSite.id,\n description: name,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=False,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default['result']}\")\nexample = alicloud.eds.NasFileSystem(\"example\",\n nas_file_system_name=name,\n office_site_id=default_simple_office_site.id,\n description=name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = false,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{@default.Result}\",\n });\n\n var example = new AliCloud.Eds.NasFileSystem(\"example\", new()\n {\n NasFileSystemName = name,\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n Description = name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(false),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewNasFileSystem(ctx, \"example\", \u0026eds.NasFileSystemArgs{\n\t\t\tNasFileSystemName: pulumi.String(name),\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tDescription: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.NasFileSystem;\nimport com.pulumi.alicloud.eds.NasFileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(false)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,default_.result()))\n .build());\n\n var example = new NasFileSystem(\"example\", NasFileSystemArgs.builder()\n .nasFileSystemName(name)\n .officeSiteId(defaultSimpleOfficeSite.id())\n .description(name)\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: false\n desktopAccessType: Internet\n officeSiteName: ${name}-${default.result}\n example:\n type: alicloud:eds:NasFileSystem\n properties:\n nasFileSystemName: ${name}\n officeSiteId: ${defaultSimpleOfficeSite.id}\n description: ${name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Nas File System can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/nasFileSystem:NasFileSystem example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -165285,7 +167927,7 @@
}
},
"alicloud:eds/networkPackage:NetworkPackage": {
- "description": "Provides a ECD Network Package resource.\n\nFor information about ECD Network Package and how to use it, see [What is Network Package](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createnetworkpackage).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `terraform-example-${_default.result}`,\n});\nconst defaultNetworkPackage = new alicloud.eds.NetworkPackage(\"default\", {\n bandwidth: 10,\n officeSiteId: defaultSimpleOfficeSite.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"terraform-example-{default['result']}\")\ndefault_network_package = alicloud.eds.NetworkPackage(\"default\",\n bandwidth=10,\n office_site_id=default_simple_office_site.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"terraform-example-{@default.Result}\",\n });\n\n var defaultNetworkPackage = new AliCloud.Eds.NetworkPackage(\"default\", new()\n {\n Bandwidth = 10,\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewNetworkPackage(ctx, \"default\", \u0026eds.NetworkPackageArgs{\n\t\t\tBandwidth: pulumi.Int(10),\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.NetworkPackage;\nimport com.pulumi.alicloud.eds.NetworkPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"terraform-example-%s\", default_.result()))\n .build());\n\n var defaultNetworkPackage = new NetworkPackage(\"defaultNetworkPackage\", NetworkPackageArgs.builder()\n .bandwidth(10)\n .officeSiteId(defaultSimpleOfficeSite.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: terraform-example-${default.result}\n defaultNetworkPackage:\n type: alicloud:eds:NetworkPackage\n name: default\n properties:\n bandwidth: 10\n officeSiteId: ${defaultSimpleOfficeSite.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Network Package can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/networkPackage:NetworkPackage example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Network Package resource.\n\nFor information about ECD Network Package and how to use it, see [What is Network Package](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createnetworkpackage).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `terraform-example-${_default.result}`,\n});\nconst defaultNetworkPackage = new alicloud.eds.NetworkPackage(\"default\", {\n bandwidth: 10,\n officeSiteId: defaultSimpleOfficeSite.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"terraform-example-{default['result']}\")\ndefault_network_package = alicloud.eds.NetworkPackage(\"default\",\n bandwidth=10,\n office_site_id=default_simple_office_site.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"terraform-example-{@default.Result}\",\n });\n\n var defaultNetworkPackage = new AliCloud.Eds.NetworkPackage(\"default\", new()\n {\n Bandwidth = 10,\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewNetworkPackage(ctx, \"default\", \u0026eds.NetworkPackageArgs{\n\t\t\tBandwidth: pulumi.Int(10),\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.NetworkPackage;\nimport com.pulumi.alicloud.eds.NetworkPackageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"terraform-example-%s\", default_.result()))\n .build());\n\n var defaultNetworkPackage = new NetworkPackage(\"defaultNetworkPackage\", NetworkPackageArgs.builder()\n .bandwidth(10)\n .officeSiteId(defaultSimpleOfficeSite.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: terraform-example-${default.result}\n defaultNetworkPackage:\n type: alicloud:eds:NetworkPackage\n name: default\n properties:\n bandwidth: 10\n officeSiteId: ${defaultSimpleOfficeSite.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Network Package can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/networkPackage:NetworkPackage example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "integer",
@@ -165350,7 +167992,7 @@
}
},
"alicloud:eds/ramDirectory:RamDirectory": {
- "description": "Provides a ECD Ram Directory resource.\n\nFor information about ECD Ram Directory and how to use it, see [What is Ram Directory](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createramdirectory).\n\n\u003e **NOTE:** Available since v1.174.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.239.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchName: name,\n});\nconst defaultRamDirectory = new alicloud.eds.RamDirectory(\"default\", {\n desktopAccessType: \"INTERNET\",\n enableAdminAccess: true,\n ramDirectoryName: name,\n vswitchIds: [defaultSwitch.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.ids[0],\n vswitch_name=name)\ndefault_ram_directory = alicloud.eds.RamDirectory(\"default\",\n desktop_access_type=\"INTERNET\",\n enable_admin_access=True,\n ram_directory_name=name,\n vswitch_ids=[default_switch.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchName = name,\n });\n\n var defaultRamDirectory = new AliCloud.Eds.RamDirectory(\"default\", new()\n {\n DesktopAccessType = \"INTERNET\",\n EnableAdminAccess = true,\n RamDirectoryName = name,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetZones(ctx, \u0026eds.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewRamDirectory(ctx, \"default\", \u0026eds.RamDirectoryArgs{\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tRamDirectoryName: pulumi.String(name),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.eds.RamDirectory;\nimport com.pulumi.alicloud.eds.RamDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.ids()[0])\n .vswitchName(name)\n .build());\n\n var defaultRamDirectory = new RamDirectory(\"defaultRamDirectory\", RamDirectoryArgs.builder()\n .desktopAccessType(\"INTERNET\")\n .enableAdminAccess(true)\n .ramDirectoryName(name)\n .vswitchIds(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.ids[0]}\n vswitchName: ${name}\n defaultRamDirectory:\n type: alicloud:eds:RamDirectory\n name: default\n properties:\n desktopAccessType: INTERNET\n enableAdminAccess: true\n ramDirectoryName: ${name}\n vswitchIds:\n - ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Ram Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/ramDirectory:RamDirectory example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Ram Directory resource.\n\nFor information about ECD Ram Directory and how to use it, see [What is Ram Directory](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createramdirectory).\n\n\u003e **NOTE:** Available since v1.174.0.\n\n\u003e **DEPRECATED:** This resource has been deprecated from version `1.239.0`.\n\n## Example Usage\n\nBasic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.eds.getZones({});\nconst defaultNetwork = new alicloud.vpc.Network(\"default\", {\n vpcName: name,\n cidrBlock: \"172.16.0.0/16\",\n});\nconst defaultSwitch = new alicloud.vpc.Switch(\"default\", {\n vpcId: defaultNetwork.id,\n cidrBlock: \"172.16.0.0/24\",\n zoneId: _default.then(_default =\u003e _default.ids?.[0]),\n vswitchName: name,\n});\nconst defaultRamDirectory = new alicloud.eds.RamDirectory(\"default\", {\n desktopAccessType: \"INTERNET\",\n enableAdminAccess: true,\n ramDirectoryName: name,\n vswitchIds: [defaultSwitch.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.eds.get_zones()\ndefault_network = alicloud.vpc.Network(\"default\",\n vpc_name=name,\n cidr_block=\"172.16.0.0/16\")\ndefault_switch = alicloud.vpc.Switch(\"default\",\n vpc_id=default_network.id,\n cidr_block=\"172.16.0.0/24\",\n zone_id=default.ids[0],\n vswitch_name=name)\ndefault_ram_directory = alicloud.eds.RamDirectory(\"default\",\n desktop_access_type=\"INTERNET\",\n enable_admin_access=True,\n ram_directory_name=name,\n vswitch_ids=[default_switch.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.Eds.GetZones.Invoke();\n\n var defaultNetwork = new AliCloud.Vpc.Network(\"default\", new()\n {\n VpcName = name,\n CidrBlock = \"172.16.0.0/16\",\n });\n\n var defaultSwitch = new AliCloud.Vpc.Switch(\"default\", new()\n {\n VpcId = defaultNetwork.Id,\n CidrBlock = \"172.16.0.0/24\",\n ZoneId = @default.Apply(@default =\u003e @default.Apply(getZonesResult =\u003e getZonesResult.Ids[0])),\n VswitchName = name,\n });\n\n var defaultRamDirectory = new AliCloud.Eds.RamDirectory(\"default\", new()\n {\n DesktopAccessType = \"INTERNET\",\n EnableAdminAccess = true,\n RamDirectoryName = name,\n VswitchIds = new[]\n {\n defaultSwitch.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := eds.GetZones(ctx, \u0026eds.GetZonesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultNetwork, err := vpc.NewNetwork(ctx, \"default\", \u0026vpc.NetworkArgs{\n\t\t\tVpcName: pulumi.String(name),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/16\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSwitch, err := vpc.NewSwitch(ctx, \"default\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: defaultNetwork.ID(),\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/24\"),\n\t\t\tZoneId: pulumi.String(_default.Ids[0]),\n\t\t\tVswitchName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewRamDirectory(ctx, \"default\", \u0026eds.RamDirectoryArgs{\n\t\t\tDesktopAccessType: pulumi.String(\"INTERNET\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tRamDirectoryName: pulumi.String(name),\n\t\t\tVswitchIds: pulumi.StringArray{\n\t\t\t\tdefaultSwitch.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetZonesArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.eds.RamDirectory;\nimport com.pulumi.alicloud.eds.RamDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = EdsFunctions.getZones(GetZonesArgs.builder()\n .build());\n\n var defaultNetwork = new Network(\"defaultNetwork\", NetworkArgs.builder()\n .vpcName(name)\n .cidrBlock(\"172.16.0.0/16\")\n .build());\n\n var defaultSwitch = new Switch(\"defaultSwitch\", SwitchArgs.builder()\n .vpcId(defaultNetwork.id())\n .cidrBlock(\"172.16.0.0/24\")\n .zoneId(default_.ids()[0])\n .vswitchName(name)\n .build());\n\n var defaultRamDirectory = new RamDirectory(\"defaultRamDirectory\", RamDirectoryArgs.builder()\n .desktopAccessType(\"INTERNET\")\n .enableAdminAccess(true)\n .ramDirectoryName(name)\n .vswitchIds(defaultSwitch.id())\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultNetwork:\n type: alicloud:vpc:Network\n name: default\n properties:\n vpcName: ${name}\n cidrBlock: 172.16.0.0/16\n defaultSwitch:\n type: alicloud:vpc:Switch\n name: default\n properties:\n vpcId: ${defaultNetwork.id}\n cidrBlock: 172.16.0.0/24\n zoneId: ${default.ids[0]}\n vswitchName: ${name}\n defaultRamDirectory:\n type: alicloud:eds:RamDirectory\n name: default\n properties:\n desktopAccessType: INTERNET\n enableAdminAccess: true\n ramDirectoryName: ${name}\n vswitchIds:\n - ${defaultSwitch.id}\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getZones\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Ram Directory can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/ramDirectory:RamDirectory example \u003cid\u003e\n```\n\n",
"properties": {
"desktopAccessType": {
"type": "string",
@@ -165462,7 +168104,7 @@
}
},
"alicloud:eds/simpleOfficeSite:SimpleOfficeSite": {
- "description": "Provides a ECD Simple Office Site resource.\n\nFor information about ECD Simple Office Site and how to use it, see [What is Simple Office Site](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createsimpleofficesite).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `terraform-example-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"terraform-example-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"terraform-example-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"terraform-example-%s\", default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: terraform-example-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Simple Office Site can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/simpleOfficeSite:SimpleOfficeSite example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Simple Office Site resource.\n\nFor information about ECD Simple Office Site and how to use it, see [What is Simple Office Site](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createsimpleofficesite).\n\n\u003e **NOTE:** Available since v1.140.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst _default = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `terraform-example-${_default.result}`,\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\ndefault = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"terraform-example-{default['result']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"terraform-example-{@default.Result}\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_default, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"terraform-example-%v\", _default.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new Integer(\"default\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"terraform-example-%s\", default_.result()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: random:Integer\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: terraform-example-${default.result}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Simple Office Site can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/simpleOfficeSite:SimpleOfficeSite example \u003cid\u003e\n```\n\n",
"properties": {
"bandwidth": {
"type": "integer",
@@ -165641,7 +168283,7 @@
}
},
"alicloud:eds/snapshot:Snapshot": {
- "description": "Provides a ECD Snapshot resource.\n\nFor information about ECD Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createsnapshot).\n\n\u003e **NOTE:** Available since v1.169.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\nconst defaultSnapshot = new alicloud.eds.Snapshot(\"default\", {\n description: name,\n desktopId: defaultDesktop.id,\n snapshotName: name,\n sourceDiskType: \"SYSTEM\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\ndefault_snapshot = alicloud.eds.Snapshot(\"default\",\n description=name,\n desktop_id=default_desktop.id,\n snapshot_name=name,\n source_disk_type=\"SYSTEM\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n var defaultSnapshot = new AliCloud.Eds.Snapshot(\"default\", new()\n {\n Description = name,\n DesktopId = defaultDesktop.Id,\n SnapshotName = name,\n SourceDiskType = \"SYSTEM\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewSnapshot(ctx, \"default\", \u0026eds.SnapshotArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t\tSnapshotName: pulumi.String(name),\n\t\t\tSourceDiskType: pulumi.String(\"SYSTEM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Snapshot;\nimport com.pulumi.alicloud.eds.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n var defaultSnapshot = new Snapshot(\"defaultSnapshot\", SnapshotArgs.builder()\n .description(name)\n .desktopId(defaultDesktop.id())\n .snapshotName(name)\n .sourceDiskType(\"SYSTEM\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\n defaultSnapshot:\n type: alicloud:eds:Snapshot\n name: default\n properties:\n description: ${name}\n desktopId: ${defaultDesktop.id}\n snapshotName: ${name}\n sourceDiskType: SYSTEM\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/snapshot:Snapshot example \u003cid\u003e\n```\n\n",
+ "description": "Provides a ECD Snapshot resource.\n\nFor information about ECD Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-ecd-2020-09-30-createsnapshot).\n\n\u003e **NOTE:** Available since v1.169.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\nimport * as random from \"@pulumi/random\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst defaultInteger = new random.index.Integer(\"default\", {\n min: 10000,\n max: 99999,\n});\nconst defaultSimpleOfficeSite = new alicloud.eds.SimpleOfficeSite(\"default\", {\n cidrBlock: \"172.16.0.0/12\",\n enableAdminAccess: true,\n desktopAccessType: \"Internet\",\n officeSiteName: `${name}-${defaultInteger.result}`,\n});\nconst defaultEcdPolicyGroup = new alicloud.eds.EcdPolicyGroup(\"default\", {\n policyGroupName: name,\n clipboard: \"read\",\n localDrive: \"read\",\n usbRedirect: \"off\",\n watermark: \"off\",\n authorizeAccessPolicyRules: [{\n description: name,\n cidrIp: \"1.2.3.45/24\",\n }],\n authorizeSecurityPolicyRules: [{\n type: \"inflow\",\n policy: \"accept\",\n description: name,\n portRange: \"80/80\",\n ipProtocol: \"TCP\",\n priority: \"1\",\n cidrIp: \"1.2.3.4/24\",\n }],\n});\nconst _default = alicloud.eds.getBundles({\n bundleType: \"SYSTEM\",\n});\nconst defaultDesktop = new alicloud.eds.Desktop(\"default\", {\n officeSiteId: defaultSimpleOfficeSite.id,\n policyGroupId: defaultEcdPolicyGroup.id,\n bundleId: _default.then(_default =\u003e _default.bundles?.[1]?.id),\n desktopName: name,\n});\nconst defaultSnapshot = new alicloud.eds.Snapshot(\"default\", {\n description: name,\n desktopId: defaultDesktop.id,\n snapshotName: name,\n sourceDiskType: \"SYSTEM\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\nimport pulumi_random as random\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault_integer = random.index.Integer(\"default\",\n min=10000,\n max=99999)\ndefault_simple_office_site = alicloud.eds.SimpleOfficeSite(\"default\",\n cidr_block=\"172.16.0.0/12\",\n enable_admin_access=True,\n desktop_access_type=\"Internet\",\n office_site_name=f\"{name}-{default_integer['result']}\")\ndefault_ecd_policy_group = alicloud.eds.EcdPolicyGroup(\"default\",\n policy_group_name=name,\n clipboard=\"read\",\n local_drive=\"read\",\n usb_redirect=\"off\",\n watermark=\"off\",\n authorize_access_policy_rules=[{\n \"description\": name,\n \"cidr_ip\": \"1.2.3.45/24\",\n }],\n authorize_security_policy_rules=[{\n \"type\": \"inflow\",\n \"policy\": \"accept\",\n \"description\": name,\n \"port_range\": \"80/80\",\n \"ip_protocol\": \"TCP\",\n \"priority\": \"1\",\n \"cidr_ip\": \"1.2.3.4/24\",\n }])\ndefault = alicloud.eds.get_bundles(bundle_type=\"SYSTEM\")\ndefault_desktop = alicloud.eds.Desktop(\"default\",\n office_site_id=default_simple_office_site.id,\n policy_group_id=default_ecd_policy_group.id,\n bundle_id=default.bundles[1].id,\n desktop_name=name)\ndefault_snapshot = alicloud.eds.Snapshot(\"default\",\n description=name,\n desktop_id=default_desktop.id,\n snapshot_name=name,\n source_disk_type=\"SYSTEM\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\nusing Random = Pulumi.Random;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var defaultInteger = new Random.Index.Integer(\"default\", new()\n {\n Min = 10000,\n Max = 99999,\n });\n\n var defaultSimpleOfficeSite = new AliCloud.Eds.SimpleOfficeSite(\"default\", new()\n {\n CidrBlock = \"172.16.0.0/12\",\n EnableAdminAccess = true,\n DesktopAccessType = \"Internet\",\n OfficeSiteName = $\"{name}-{defaultInteger.Result}\",\n });\n\n var defaultEcdPolicyGroup = new AliCloud.Eds.EcdPolicyGroup(\"default\", new()\n {\n PolicyGroupName = name,\n Clipboard = \"read\",\n LocalDrive = \"read\",\n UsbRedirect = \"off\",\n Watermark = \"off\",\n AuthorizeAccessPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs\n {\n Description = name,\n CidrIp = \"1.2.3.45/24\",\n },\n },\n AuthorizeSecurityPolicyRules = new[]\n {\n new AliCloud.Eds.Inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs\n {\n Type = \"inflow\",\n Policy = \"accept\",\n Description = name,\n PortRange = \"80/80\",\n IpProtocol = \"TCP\",\n Priority = \"1\",\n CidrIp = \"1.2.3.4/24\",\n },\n },\n });\n\n var @default = AliCloud.Eds.GetBundles.Invoke(new()\n {\n BundleType = \"SYSTEM\",\n });\n\n var defaultDesktop = new AliCloud.Eds.Desktop(\"default\", new()\n {\n OfficeSiteId = defaultSimpleOfficeSite.Id,\n PolicyGroupId = defaultEcdPolicyGroup.Id,\n BundleId = @default.Apply(@default =\u003e @default.Apply(getBundlesResult =\u003e getBundlesResult.Bundles[1]?.Id)),\n DesktopName = name,\n });\n\n var defaultSnapshot = new AliCloud.Eds.Snapshot(\"default\", new()\n {\n Description = name,\n DesktopId = defaultDesktop.Id,\n SnapshotName = name,\n SourceDiskType = \"SYSTEM\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi-random/sdk/v4/go/random\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\tdefaultInteger, err := random.NewInteger(ctx, \"default\", \u0026random.IntegerArgs{\n\t\t\tMin: 10000,\n\t\t\tMax: 99999,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultSimpleOfficeSite, err := eds.NewSimpleOfficeSite(ctx, \"default\", \u0026eds.SimpleOfficeSiteArgs{\n\t\t\tCidrBlock: pulumi.String(\"172.16.0.0/12\"),\n\t\t\tEnableAdminAccess: pulumi.Bool(true),\n\t\t\tDesktopAccessType: pulumi.String(\"Internet\"),\n\t\t\tOfficeSiteName: pulumi.Sprintf(\"%v-%v\", name, defaultInteger.Result),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultEcdPolicyGroup, err := eds.NewEcdPolicyGroup(ctx, \"default\", \u0026eds.EcdPolicyGroupArgs{\n\t\t\tPolicyGroupName: pulumi.String(name),\n\t\t\tClipboard: pulumi.String(\"read\"),\n\t\t\tLocalDrive: pulumi.String(\"read\"),\n\t\t\tUsbRedirect: pulumi.String(\"off\"),\n\t\t\tWatermark: pulumi.String(\"off\"),\n\t\t\tAuthorizeAccessPolicyRules: eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs{\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.45/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthorizeSecurityPolicyRules: eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArray{\n\t\t\t\t\u0026eds.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs{\n\t\t\t\t\tType: pulumi.String(\"inflow\"),\n\t\t\t\t\tPolicy: pulumi.String(\"accept\"),\n\t\t\t\t\tDescription: pulumi.String(name),\n\t\t\t\t\tPortRange: pulumi.String(\"80/80\"),\n\t\t\t\t\tIpProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tPriority: pulumi.String(\"1\"),\n\t\t\t\t\tCidrIp: pulumi.String(\"1.2.3.4/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_default, err := eds.GetBundles(ctx, \u0026eds.GetBundlesArgs{\n\t\t\tBundleType: pulumi.StringRef(\"SYSTEM\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdefaultDesktop, err := eds.NewDesktop(ctx, \"default\", \u0026eds.DesktopArgs{\n\t\t\tOfficeSiteId: defaultSimpleOfficeSite.ID(),\n\t\t\tPolicyGroupId: defaultEcdPolicyGroup.ID(),\n\t\t\tBundleId: pulumi.String(_default.Bundles[1].Id),\n\t\t\tDesktopName: pulumi.String(name),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eds.NewSnapshot(ctx, \"default\", \u0026eds.SnapshotArgs{\n\t\t\tDescription: pulumi.String(name),\n\t\t\tDesktopId: defaultDesktop.ID(),\n\t\t\tSnapshotName: pulumi.String(name),\n\t\t\tSourceDiskType: pulumi.String(\"SYSTEM\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.random.Integer;\nimport com.pulumi.random.IntegerArgs;\nimport com.pulumi.alicloud.eds.SimpleOfficeSite;\nimport com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;\nimport com.pulumi.alicloud.eds.EcdPolicyGroup;\nimport com.pulumi.alicloud.eds.EcdPolicyGroupArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;\nimport com.pulumi.alicloud.eds.EdsFunctions;\nimport com.pulumi.alicloud.eds.inputs.GetBundlesArgs;\nimport com.pulumi.alicloud.eds.Desktop;\nimport com.pulumi.alicloud.eds.DesktopArgs;\nimport com.pulumi.alicloud.eds.Snapshot;\nimport com.pulumi.alicloud.eds.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n var defaultInteger = new Integer(\"defaultInteger\", IntegerArgs.builder()\n .min(10000)\n .max(99999)\n .build());\n\n var defaultSimpleOfficeSite = new SimpleOfficeSite(\"defaultSimpleOfficeSite\", SimpleOfficeSiteArgs.builder()\n .cidrBlock(\"172.16.0.0/12\")\n .enableAdminAccess(true)\n .desktopAccessType(\"Internet\")\n .officeSiteName(String.format(\"%s-%s\", name,defaultInteger.result()))\n .build());\n\n var defaultEcdPolicyGroup = new EcdPolicyGroup(\"defaultEcdPolicyGroup\", EcdPolicyGroupArgs.builder()\n .policyGroupName(name)\n .clipboard(\"read\")\n .localDrive(\"read\")\n .usbRedirect(\"off\")\n .watermark(\"off\")\n .authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()\n .description(name)\n .cidrIp(\"1.2.3.45/24\")\n .build())\n .authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()\n .type(\"inflow\")\n .policy(\"accept\")\n .description(name)\n .portRange(\"80/80\")\n .ipProtocol(\"TCP\")\n .priority(\"1\")\n .cidrIp(\"1.2.3.4/24\")\n .build())\n .build());\n\n final var default = EdsFunctions.getBundles(GetBundlesArgs.builder()\n .bundleType(\"SYSTEM\")\n .build());\n\n var defaultDesktop = new Desktop(\"defaultDesktop\", DesktopArgs.builder()\n .officeSiteId(defaultSimpleOfficeSite.id())\n .policyGroupId(defaultEcdPolicyGroup.id())\n .bundleId(default_.bundles()[1].id())\n .desktopName(name)\n .build());\n\n var defaultSnapshot = new Snapshot(\"defaultSnapshot\", SnapshotArgs.builder()\n .description(name)\n .desktopId(defaultDesktop.id())\n .snapshotName(name)\n .sourceDiskType(\"SYSTEM\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n name:\n type: string\n default: terraform-example\nresources:\n defaultInteger:\n type: random:Integer\n name: default\n properties:\n min: 10000\n max: 99999\n defaultSimpleOfficeSite:\n type: alicloud:eds:SimpleOfficeSite\n name: default\n properties:\n cidrBlock: 172.16.0.0/12\n enableAdminAccess: true\n desktopAccessType: Internet\n officeSiteName: ${name}-${defaultInteger.result}\n defaultEcdPolicyGroup:\n type: alicloud:eds:EcdPolicyGroup\n name: default\n properties:\n policyGroupName: ${name}\n clipboard: read\n localDrive: read\n usbRedirect: off\n watermark: off\n authorizeAccessPolicyRules:\n - description: ${name}\n cidrIp: 1.2.3.45/24\n authorizeSecurityPolicyRules:\n - type: inflow\n policy: accept\n description: ${name}\n portRange: 80/80\n ipProtocol: TCP\n priority: '1'\n cidrIp: 1.2.3.4/24\n defaultDesktop:\n type: alicloud:eds:Desktop\n name: default\n properties:\n officeSiteId: ${defaultSimpleOfficeSite.id}\n policyGroupId: ${defaultEcdPolicyGroup.id}\n bundleId: ${default.bundles[1].id}\n desktopName: ${name}\n defaultSnapshot:\n type: alicloud:eds:Snapshot\n name: default\n properties:\n description: ${name}\n desktopId: ${defaultDesktop.id}\n snapshotName: ${name}\n sourceDiskType: SYSTEM\nvariables:\n default:\n fn::invoke:\n function: alicloud:eds:getBundles\n arguments:\n bundleType: SYSTEM\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD Snapshot can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/snapshot:Snapshot example \u003cid\u003e\n```\n\n",
"properties": {
"description": {
"type": "string",
@@ -165729,7 +168371,7 @@
}
},
"alicloud:eds/user:User": {
- "description": "Provides a Elastic Desktop Service (ECD) User resource.\n\nFor information about Elastic Desktop Service (ECD) User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-eds-user-2021-03-08-createusers-desktop).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.eds.User(\"default\", {\n endUserId: \"terraform_example123\",\n email: \"tf.example@abc.com\",\n phone: \"18888888888\",\n password: \"Example_123\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.eds.User(\"default\",\n end_user_id=\"terraform_example123\",\n email=\"tf.example@abc.com\",\n phone=\"18888888888\",\n password=\"Example_123\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Eds.User(\"default\", new()\n {\n EndUserId = \"terraform_example123\",\n Email = \"tf.example@abc.com\",\n Phone = \"18888888888\",\n Password = \"Example_123\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewUser(ctx, \"default\", \u0026eds.UserArgs{\n\t\t\tEndUserId: pulumi.String(\"terraform_example123\"),\n\t\t\tEmail: pulumi.String(\"tf.example@abc.com\"),\n\t\t\tPhone: pulumi.String(\"18888888888\"),\n\t\t\tPassword: pulumi.String(\"Example_123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.User;\nimport com.pulumi.alicloud.eds.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new User(\"default\", UserArgs.builder()\n .endUserId(\"terraform_example123\")\n .email(\"tf.example@abc.com\")\n .phone(\"18888888888\")\n .password(\"Example_123\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:eds:User\n properties:\n endUserId: terraform_example123\n email: tf.example@abc.com\n phone: '18888888888'\n password: Example_123\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nECD User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/user:User example \u003cend_user_id\u003e\n```\n\n",
+ "description": "Provides a Elastic Desktop Service (ECD) User resource.\n\nFor information about Elastic Desktop Service (ECD) User and how to use it, see [What is User](https://www.alibabacloud.com/help/en/wuying-workspace/developer-reference/api-eds-user-2021-03-08-createusers-desktop).\n\n\u003e **NOTE:** Available since v1.142.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst _default = new alicloud.eds.User(\"default\", {\n endUserId: \"terraform_example123\",\n email: \"tf.example@abc.com\",\n phone: \"18888888888\",\n password: \"Example_123\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\ndefault = alicloud.eds.User(\"default\",\n end_user_id=\"terraform_example123\",\n email=\"tf.example@abc.com\",\n phone=\"18888888888\",\n password=\"Example_123\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @default = new AliCloud.Eds.User(\"default\", new()\n {\n EndUserId = \"terraform_example123\",\n Email = \"tf.example@abc.com\",\n Phone = \"18888888888\",\n Password = \"Example_123\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := eds.NewUser(ctx, \"default\", \u0026eds.UserArgs{\n\t\t\tEndUserId: pulumi.String(\"terraform_example123\"),\n\t\t\tEmail: pulumi.String(\"tf.example@abc.com\"),\n\t\t\tPhone: pulumi.String(\"18888888888\"),\n\t\t\tPassword: pulumi.String(\"Example_123\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.eds.User;\nimport com.pulumi.alicloud.eds.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var default_ = new User(\"default\", UserArgs.builder()\n .endUserId(\"terraform_example123\")\n .email(\"tf.example@abc.com\")\n .phone(\"18888888888\")\n .password(\"Example_123\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n default:\n type: alicloud:eds:User\n properties:\n endUserId: terraform_example123\n email: tf.example@abc.com\n phone: '18888888888'\n password: Example_123\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n📚 Need more examples? VIEW MORE EXAMPLES\n\n## Import\n\nECD User can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eds/user:User example \u003cend_user_id\u003e\n```\n\n",
"properties": {
"email": {
"type": "string",
@@ -165822,7 +168464,7 @@
}
},
"alicloud:eflo/cluster:Cluster": {
- "description": "Provides a Eflo Cluster resource.\n\nLarge computing cluster.\n\nFor information about Eflo Cluster and how to use it, see [What is Cluster](https://next.api.alibabacloud.com/document/eflo-controller/2022-12-15/CreateCluster).\n\n\u003e **NOTE:** Available since v1.246.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst createVpc = new alicloud.vpc.Network(\"create_vpc\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: \"cluster-resoure-example\",\n});\nconst createVswitch = new alicloud.vpc.Switch(\"create_vswitch\", {\n vpcId: createVpc.id,\n zoneId: \"cn-hangzhou-b\",\n cidrBlock: \"192.168.0.0/24\",\n vswitchName: \"cluster-resoure-example\",\n});\nconst createSecurityGroup = new alicloud.ecs.SecurityGroup(\"create_security_group\", {\n description: \"sg\",\n securityGroupName: \"cluster-resoure-example\",\n securityGroupType: \"normal\",\n vpcId: createVpc.id,\n});\nconst defaultCluster = new alicloud.eflo.Cluster(\"default\", {\n clusterDescription: \"cluster-resource-example\",\n openEniJumboFrame: false,\n hpnZone: \"B1\",\n nimizVswitches: [\"1111\"],\n ignoreFailedNodeTasks: true,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[1]),\n nodeGroups: [{\n imageId: \"i198448731735114628708\",\n zoneId: \"cn-hangzhou-b\",\n nodeGroupName: \"cluster-resource-example\",\n nodeGroupDescription: \"cluster-resource-example\",\n machineType: \"efg2.C48cA3sen\",\n }],\n networks: {\n tailIpVersion: \"ipv4\",\n newVpdInfo: {\n monitorVpcId: createVpc.id,\n monitorVswitchId: createVswitch.id,\n cenId: \"11111\",\n cloudLinkId: \"1111\",\n vpdCidr: \"111\",\n vpdSubnets: [{\n zoneId: \"1111\",\n subnetCidr: \"111\",\n subnetType: \"111\",\n }],\n cloudLinkCidr: \"169.254.128.0/23\",\n },\n securityGroupId: createSecurityGroup.id,\n vswitchZoneId: \"cn-hangzhou-b\",\n vpcId: createVpc.id,\n vswitchId: createVswitch.id,\n vpdInfo: {\n vpdId: \"111\",\n vpdSubnets: [\"111\"],\n },\n ipAllocationPolicies: [{\n bondPolicy: {\n bondDefaultSubnet: \"111\",\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n },\n machineTypePolicies: [{\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n machineType: \"111\",\n }],\n nodePolicies: [{\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n nodeId: \"111\",\n }],\n }],\n },\n clusterName: \"tfacceflo7165\",\n clusterType: \"Lite\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ncreate_vpc = alicloud.vpc.Network(\"create_vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=\"cluster-resoure-example\")\ncreate_vswitch = alicloud.vpc.Switch(\"create_vswitch\",\n vpc_id=create_vpc.id,\n zone_id=\"cn-hangzhou-b\",\n cidr_block=\"192.168.0.0/24\",\n vswitch_name=\"cluster-resoure-example\")\ncreate_security_group = alicloud.ecs.SecurityGroup(\"create_security_group\",\n description=\"sg\",\n security_group_name=\"cluster-resoure-example\",\n security_group_type=\"normal\",\n vpc_id=create_vpc.id)\ndefault_cluster = alicloud.eflo.Cluster(\"default\",\n cluster_description=\"cluster-resource-example\",\n open_eni_jumbo_frame=False,\n hpn_zone=\"B1\",\n nimiz_vswitches=[\"1111\"],\n ignore_failed_node_tasks=True,\n resource_group_id=default.ids[1],\n node_groups=[{\n \"image_id\": \"i198448731735114628708\",\n \"zone_id\": \"cn-hangzhou-b\",\n \"node_group_name\": \"cluster-resource-example\",\n \"node_group_description\": \"cluster-resource-example\",\n \"machine_type\": \"efg2.C48cA3sen\",\n }],\n networks={\n \"tail_ip_version\": \"ipv4\",\n \"new_vpd_info\": {\n \"monitor_vpc_id\": create_vpc.id,\n \"monitor_vswitch_id\": create_vswitch.id,\n \"cen_id\": \"11111\",\n \"cloud_link_id\": \"1111\",\n \"vpd_cidr\": \"111\",\n \"vpd_subnets\": [{\n \"zone_id\": \"1111\",\n \"subnet_cidr\": \"111\",\n \"subnet_type\": \"111\",\n }],\n \"cloud_link_cidr\": \"169.254.128.0/23\",\n },\n \"security_group_id\": create_security_group.id,\n \"vswitch_zone_id\": \"cn-hangzhou-b\",\n \"vpc_id\": create_vpc.id,\n \"vswitch_id\": create_vswitch.id,\n \"vpd_info\": {\n \"vpd_id\": \"111\",\n \"vpd_subnets\": [\"111\"],\n },\n \"ip_allocation_policies\": [{\n \"bond_policy\": {\n \"bond_default_subnet\": \"111\",\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n },\n \"machine_type_policies\": [{\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n \"machine_type\": \"111\",\n }],\n \"node_policies\": [{\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n \"node_id\": \"111\",\n }],\n }],\n },\n cluster_name=\"tfacceflo7165\",\n cluster_type=\"Lite\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var createVpc = new AliCloud.Vpc.Network(\"create_vpc\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = \"cluster-resoure-example\",\n });\n\n var createVswitch = new AliCloud.Vpc.Switch(\"create_vswitch\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = \"cn-hangzhou-b\",\n CidrBlock = \"192.168.0.0/24\",\n VswitchName = \"cluster-resoure-example\",\n });\n\n var createSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"create_security_group\", new()\n {\n Description = \"sg\",\n SecurityGroupName = \"cluster-resoure-example\",\n SecurityGroupType = \"normal\",\n VpcId = createVpc.Id,\n });\n\n var defaultCluster = new AliCloud.Eflo.Cluster(\"default\", new()\n {\n ClusterDescription = \"cluster-resource-example\",\n OpenEniJumboFrame = false,\n HpnZone = \"B1\",\n NimizVswitches = new[]\n {\n \"1111\",\n },\n IgnoreFailedNodeTasks = true,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[1])),\n NodeGroups = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNodeGroupArgs\n {\n ImageId = \"i198448731735114628708\",\n ZoneId = \"cn-hangzhou-b\",\n NodeGroupName = \"cluster-resource-example\",\n NodeGroupDescription = \"cluster-resource-example\",\n MachineType = \"efg2.C48cA3sen\",\n },\n },\n Networks = new AliCloud.Eflo.Inputs.ClusterNetworksArgs\n {\n TailIpVersion = \"ipv4\",\n NewVpdInfo = new AliCloud.Eflo.Inputs.ClusterNetworksNewVpdInfoArgs\n {\n MonitorVpcId = createVpc.Id,\n MonitorVswitchId = createVswitch.Id,\n CenId = \"11111\",\n CloudLinkId = \"1111\",\n VpdCidr = \"111\",\n VpdSubnets = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksNewVpdInfoVpdSubnetArgs\n {\n ZoneId = \"1111\",\n SubnetCidr = \"111\",\n SubnetType = \"111\",\n },\n },\n CloudLinkCidr = \"169.254.128.0/23\",\n },\n SecurityGroupId = createSecurityGroup.Id,\n VswitchZoneId = \"cn-hangzhou-b\",\n VpcId = createVpc.Id,\n VswitchId = createVswitch.Id,\n VpdInfo = new AliCloud.Eflo.Inputs.ClusterNetworksVpdInfoArgs\n {\n VpdId = \"111\",\n VpdSubnets = new[]\n {\n \"111\",\n },\n },\n IpAllocationPolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyArgs\n {\n BondPolicy = new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyBondPolicyArgs\n {\n BondDefaultSubnet = \"111\",\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyBondPolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n },\n MachineTypePolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyMachineTypePolicyArgs\n {\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n MachineType = \"111\",\n },\n },\n NodePolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyNodePolicyArgs\n {\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyNodePolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n NodeId = \"111\",\n },\n },\n },\n },\n },\n ClusterName = \"tfacceflo7165\",\n ClusterType = \"Lite\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eflo\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVpc, err := vpc.NewNetwork(ctx, \"create_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.String(\"cluster-resoure-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVswitch, err := vpc.NewSwitch(ctx, \"create_vswitch\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tVswitchName: pulumi.String(\"cluster-resoure-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"create_security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tDescription: pulumi.String(\"sg\"),\n\t\t\tSecurityGroupName: pulumi.String(\"cluster-resoure-example\"),\n\t\t\tSecurityGroupType: pulumi.String(\"normal\"),\n\t\t\tVpcId: createVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eflo.NewCluster(ctx, \"default\", \u0026eflo.ClusterArgs{\n\t\t\tClusterDescription: pulumi.String(\"cluster-resource-example\"),\n\t\t\tOpenEniJumboFrame: pulumi.Bool(false),\n\t\t\tHpnZone: pulumi.String(\"B1\"),\n\t\t\tNimizVswitches: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1111\"),\n\t\t\t},\n\t\t\tIgnoreFailedNodeTasks: pulumi.Bool(true),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[1]),\n\t\t\tNodeGroups: eflo.ClusterNodeGroupArray{\n\t\t\t\t\u0026eflo.ClusterNodeGroupArgs{\n\t\t\t\t\tImageId: pulumi.String(\"i198448731735114628708\"),\n\t\t\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\t\t\tNodeGroupName: pulumi.String(\"cluster-resource-example\"),\n\t\t\t\t\tNodeGroupDescription: pulumi.String(\"cluster-resource-example\"),\n\t\t\t\t\tMachineType: pulumi.String(\"efg2.C48cA3sen\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworks: \u0026eflo.ClusterNetworksArgs{\n\t\t\t\tTailIpVersion: pulumi.String(\"ipv4\"),\n\t\t\t\tNewVpdInfo: \u0026eflo.ClusterNetworksNewVpdInfoArgs{\n\t\t\t\t\tMonitorVpcId: createVpc.ID(),\n\t\t\t\t\tMonitorVswitchId: createVswitch.ID(),\n\t\t\t\t\tCenId: pulumi.String(\"11111\"),\n\t\t\t\t\tCloudLinkId: pulumi.String(\"1111\"),\n\t\t\t\t\tVpdCidr: pulumi.String(\"111\"),\n\t\t\t\t\tVpdSubnets: eflo.ClusterNetworksNewVpdInfoVpdSubnetArray{\n\t\t\t\t\t\t\u0026eflo.ClusterNetworksNewVpdInfoVpdSubnetArgs{\n\t\t\t\t\t\t\tZoneId: pulumi.String(\"1111\"),\n\t\t\t\t\t\t\tSubnetCidr: pulumi.String(\"111\"),\n\t\t\t\t\t\t\tSubnetType: pulumi.String(\"111\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tCloudLinkCidr: pulumi.String(\"169.254.128.0/23\"),\n\t\t\t\t},\n\t\t\t\tSecurityGroupId: createSecurityGroup.ID(),\n\t\t\t\tVswitchZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\t\tVpcId: createVpc.ID(),\n\t\t\t\tVswitchId: createVswitch.ID(),\n\t\t\t\tVpdInfo: \u0026eflo.ClusterNetworksVpdInfoArgs{\n\t\t\t\t\tVpdId: pulumi.String(\"111\"),\n\t\t\t\t\tVpdSubnets: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"111\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIpAllocationPolicies: eflo.ClusterNetworksIpAllocationPolicyArray{\n\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyArgs{\n\t\t\t\t\t\tBondPolicy: \u0026eflo.ClusterNetworksIpAllocationPolicyBondPolicyArgs{\n\t\t\t\t\t\t\tBondDefaultSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyBondPolicyBondArray{\n\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyBondPolicyBondArgs{\n\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMachineTypePolicies: eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyArray{\n\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyArgs{\n\t\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArray{\n\t\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArgs{\n\t\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tMachineType: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tNodePolicies: eflo.ClusterNetworksIpAllocationPolicyNodePolicyArray{\n\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyNodePolicyArgs{\n\t\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyNodePolicyBondArray{\n\t\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyNodePolicyBondArgs{\n\t\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tNodeId: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tClusterName: pulumi.String(\"tfacceflo7165\"),\n\t\t\tClusterType: pulumi.String(\"Lite\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;\nimport com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;\nimport com.pulumi.alicloud.vpc.Network;\nimport com.pulumi.alicloud.vpc.NetworkArgs;\nimport com.pulumi.alicloud.vpc.Switch;\nimport com.pulumi.alicloud.vpc.SwitchArgs;\nimport com.pulumi.alicloud.ecs.SecurityGroup;\nimport com.pulumi.alicloud.ecs.SecurityGroupArgs;\nimport com.pulumi.alicloud.eflo.Cluster;\nimport com.pulumi.alicloud.eflo.ClusterArgs;\nimport com.pulumi.alicloud.eflo.inputs.ClusterNodeGroupArgs;\nimport com.pulumi.alicloud.eflo.inputs.ClusterNetworksArgs;\nimport com.pulumi.alicloud.eflo.inputs.ClusterNetworksNewVpdInfoArgs;\nimport com.pulumi.alicloud.eflo.inputs.ClusterNetworksVpdInfoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var config = ctx.config();\n final var name = config.get(\"name\").orElse(\"terraform-example\");\n final var default = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()\n .build());\n\n var createVpc = new Network(\"createVpc\", NetworkArgs.builder()\n .cidrBlock(\"192.168.0.0/16\")\n .vpcName(\"cluster-resoure-example\")\n .build());\n\n var createVswitch = new Switch(\"createVswitch\", SwitchArgs.builder()\n .vpcId(createVpc.id())\n .zoneId(\"cn-hangzhou-b\")\n .cidrBlock(\"192.168.0.0/24\")\n .vswitchName(\"cluster-resoure-example\")\n .build());\n\n var createSecurityGroup = new SecurityGroup(\"createSecurityGroup\", SecurityGroupArgs.builder()\n .description(\"sg\")\n .securityGroupName(\"cluster-resoure-example\")\n .securityGroupType(\"normal\")\n .vpcId(createVpc.id())\n .build());\n\n var defaultCluster = new Cluster(\"defaultCluster\", ClusterArgs.builder()\n .clusterDescription(\"cluster-resource-example\")\n .openEniJumboFrame(false)\n .hpnZone(\"B1\")\n .nimizVswitches(\"1111\")\n .ignoreFailedNodeTasks(true)\n .resourceGroupId(default_.ids()[1])\n .nodeGroups(ClusterNodeGroupArgs.builder()\n .imageId(\"i198448731735114628708\")\n .zoneId(\"cn-hangzhou-b\")\n .nodeGroupName(\"cluster-resource-example\")\n .nodeGroupDescription(\"cluster-resource-example\")\n .machineType(\"efg2.C48cA3sen\")\n .build())\n .networks(ClusterNetworksArgs.builder()\n .tailIpVersion(\"ipv4\")\n .newVpdInfo(ClusterNetworksNewVpdInfoArgs.builder()\n .monitorVpcId(createVpc.id())\n .monitorVswitchId(createVswitch.id())\n .cenId(\"11111\")\n .cloudLinkId(\"1111\")\n .vpdCidr(\"111\")\n .vpdSubnets(ClusterNetworksNewVpdInfoVpdSubnetArgs.builder()\n .zoneId(\"1111\")\n .subnetCidr(\"111\")\n .subnetType(\"111\")\n .build())\n .cloudLinkCidr(\"169.254.128.0/23\")\n .build())\n .securityGroupId(createSecurityGroup.id())\n .vswitchZoneId(\"cn-hangzhou-b\")\n .vpcId(createVpc.id())\n .vswitchId(createVswitch.id())\n .vpdInfo(ClusterNetworksVpdInfoArgs.builder()\n .vpdId(\"111\")\n .vpdSubnets(\"111\")\n .build())\n .ipAllocationPolicies(ClusterNetworksIpAllocationPolicyArgs.builder()\n .bondPolicy(ClusterNetworksIpAllocationPolicyBondPolicyArgs.builder()\n .bondDefaultSubnet(\"111\")\n .bonds(ClusterNetworksIpAllocationPolicyBondPolicyBondArgs.builder()\n .name(\"111\")\n .subnet(\"111\")\n .build())\n .build())\n .machineTypePolicies(ClusterNetworksIpAllocationPolicyMachineTypePolicyArgs.builder()\n .bonds(ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArgs.builder()\n .name(\"111\")\n .subnet(\"111\")\n .build())\n .machineType(\"111\")\n .build())\n .nodePolicies(ClusterNetworksIpAllocationPolicyNodePolicyArgs.builder()\n .bonds(ClusterNetworksIpAllocationPolicyNodePolicyBondArgs.builder()\n .name(\"111\")\n .subnet(\"111\")\n .build())\n .nodeId(\"111\")\n .build())\n .build())\n .build())\n .clusterName(\"tfacceflo7165\")\n .clusterType(\"Lite\")\n .build());\n\n }\n}\n```\n```yaml\nconfiguration:\n # Before executing this example, you need to confirm with the product team whether the resources are sufficient or you will get an error message with \"Failure to check order before create instance\"\n name:\n type: string\n default: terraform-example\nresources:\n createVpc:\n type: alicloud:vpc:Network\n name: create_vpc\n properties:\n cidrBlock: 192.168.0.0/16\n vpcName: cluster-resoure-example\n createVswitch:\n type: alicloud:vpc:Switch\n name: create_vswitch\n properties:\n vpcId: ${createVpc.id}\n zoneId: cn-hangzhou-b\n cidrBlock: 192.168.0.0/24\n vswitchName: cluster-resoure-example\n createSecurityGroup:\n type: alicloud:ecs:SecurityGroup\n name: create_security_group\n properties:\n description: sg\n securityGroupName: cluster-resoure-example\n securityGroupType: normal\n vpcId: ${createVpc.id}\n defaultCluster:\n type: alicloud:eflo:Cluster\n name: default\n properties:\n clusterDescription: cluster-resource-example\n openEniJumboFrame: 'false'\n hpnZone: B1\n nimizVswitches:\n - '1111'\n ignoreFailedNodeTasks: 'true'\n resourceGroupId: ${default.ids[1]}\n nodeGroups:\n - imageId: i198448731735114628708\n zoneId: cn-hangzhou-b\n nodeGroupName: cluster-resource-example\n nodeGroupDescription: cluster-resource-example\n machineType: efg2.C48cA3sen\n networks:\n tailIpVersion: ipv4\n newVpdInfo:\n monitorVpcId: ${createVpc.id}\n monitorVswitchId: ${createVswitch.id}\n cenId: '11111'\n cloudLinkId: '1111'\n vpdCidr: '111'\n vpdSubnets:\n - zoneId: '1111'\n subnetCidr: '111'\n subnetType: '111'\n cloudLinkCidr: 169.254.128.0/23\n securityGroupId: ${createSecurityGroup.id}\n vswitchZoneId: cn-hangzhou-b\n vpcId: ${createVpc.id}\n vswitchId: ${createVswitch.id}\n vpdInfo:\n vpdId: '111'\n vpdSubnets:\n - '111'\n ipAllocationPolicies:\n - bondPolicy:\n bondDefaultSubnet: '111'\n bonds:\n - name: '111'\n subnet: '111'\n machineTypePolicies:\n - bonds:\n - name: '111'\n subnet: '111'\n machineType: '111'\n nodePolicies:\n - bonds:\n - name: '111'\n subnet: '111'\n nodeId: '111'\n clusterName: tfacceflo7165\n clusterType: Lite\nvariables:\n default:\n fn::invoke:\n function: alicloud:resourcemanager:getResourceGroups\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nEflo Cluster can be imported using the id, e.g.\n\n```sh\n$ pulumi import alicloud:eflo/cluster:Cluster example \u003cid\u003e\n```\n\n",
+ "description": "Provides a Eflo Cluster resource.\n\nLarge computing cluster.\n\nFor information about Eflo Cluster and how to use it, see [What is Cluster](https://next.api.alibabacloud.com/document/eflo-controller/2022-12-15/CreateCluster).\n\n\u003e **NOTE:** Available since v1.246.0.\n\n## Example Usage\n\nBasic Usage\n\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as alicloud from \"@pulumi/alicloud\";\n\nconst config = new pulumi.Config();\nconst name = config.get(\"name\") || \"terraform-example\";\nconst _default = alicloud.resourcemanager.getResourceGroups({});\nconst createVpc = new alicloud.vpc.Network(\"create_vpc\", {\n cidrBlock: \"192.168.0.0/16\",\n vpcName: \"cluster-resoure-example\",\n});\nconst createVswitch = new alicloud.vpc.Switch(\"create_vswitch\", {\n vpcId: createVpc.id,\n zoneId: \"cn-hangzhou-b\",\n cidrBlock: \"192.168.0.0/24\",\n vswitchName: \"cluster-resoure-example\",\n});\nconst createSecurityGroup = new alicloud.ecs.SecurityGroup(\"create_security_group\", {\n description: \"sg\",\n securityGroupName: \"cluster-resoure-example\",\n securityGroupType: \"normal\",\n vpcId: createVpc.id,\n});\nconst defaultCluster = new alicloud.eflo.Cluster(\"default\", {\n clusterDescription: \"cluster-resource-example\",\n openEniJumboFrame: false,\n hpnZone: \"B1\",\n nimizVswitches: [\"1111\"],\n ignoreFailedNodeTasks: true,\n resourceGroupId: _default.then(_default =\u003e _default.ids?.[1]),\n nodeGroups: [{\n imageId: \"i198448731735114628708\",\n zoneId: \"cn-hangzhou-b\",\n nodeGroupName: \"cluster-resource-example\",\n nodeGroupDescription: \"cluster-resource-example\",\n machineType: \"efg2.C48cA3sen\",\n }],\n networks: {\n tailIpVersion: \"ipv4\",\n newVpdInfo: {\n monitorVpcId: createVpc.id,\n monitorVswitchId: createVswitch.id,\n cenId: \"11111\",\n cloudLinkId: \"1111\",\n vpdCidr: \"111\",\n vpdSubnets: [{\n zoneId: \"1111\",\n subnetCidr: \"111\",\n subnetType: \"111\",\n }],\n cloudLinkCidr: \"169.254.128.0/23\",\n },\n securityGroupId: createSecurityGroup.id,\n vswitchZoneId: \"cn-hangzhou-b\",\n vpcId: createVpc.id,\n vswitchId: createVswitch.id,\n vpdInfo: {\n vpdId: \"111\",\n vpdSubnets: [\"111\"],\n },\n ipAllocationPolicies: [{\n bondPolicy: {\n bondDefaultSubnet: \"111\",\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n },\n machineTypePolicies: [{\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n machineType: \"111\",\n }],\n nodePolicies: [{\n bonds: [{\n name: \"111\",\n subnet: \"111\",\n }],\n nodeId: \"111\",\n }],\n }],\n },\n clusterName: \"tfacceflo7165\",\n clusterType: \"Lite\",\n});\n```\n```python\nimport pulumi\nimport pulumi_alicloud as alicloud\n\nconfig = pulumi.Config()\nname = config.get(\"name\")\nif name is None:\n name = \"terraform-example\"\ndefault = alicloud.resourcemanager.get_resource_groups()\ncreate_vpc = alicloud.vpc.Network(\"create_vpc\",\n cidr_block=\"192.168.0.0/16\",\n vpc_name=\"cluster-resoure-example\")\ncreate_vswitch = alicloud.vpc.Switch(\"create_vswitch\",\n vpc_id=create_vpc.id,\n zone_id=\"cn-hangzhou-b\",\n cidr_block=\"192.168.0.0/24\",\n vswitch_name=\"cluster-resoure-example\")\ncreate_security_group = alicloud.ecs.SecurityGroup(\"create_security_group\",\n description=\"sg\",\n security_group_name=\"cluster-resoure-example\",\n security_group_type=\"normal\",\n vpc_id=create_vpc.id)\ndefault_cluster = alicloud.eflo.Cluster(\"default\",\n cluster_description=\"cluster-resource-example\",\n open_eni_jumbo_frame=False,\n hpn_zone=\"B1\",\n nimiz_vswitches=[\"1111\"],\n ignore_failed_node_tasks=True,\n resource_group_id=default.ids[1],\n node_groups=[{\n \"image_id\": \"i198448731735114628708\",\n \"zone_id\": \"cn-hangzhou-b\",\n \"node_group_name\": \"cluster-resource-example\",\n \"node_group_description\": \"cluster-resource-example\",\n \"machine_type\": \"efg2.C48cA3sen\",\n }],\n networks={\n \"tail_ip_version\": \"ipv4\",\n \"new_vpd_info\": {\n \"monitor_vpc_id\": create_vpc.id,\n \"monitor_vswitch_id\": create_vswitch.id,\n \"cen_id\": \"11111\",\n \"cloud_link_id\": \"1111\",\n \"vpd_cidr\": \"111\",\n \"vpd_subnets\": [{\n \"zone_id\": \"1111\",\n \"subnet_cidr\": \"111\",\n \"subnet_type\": \"111\",\n }],\n \"cloud_link_cidr\": \"169.254.128.0/23\",\n },\n \"security_group_id\": create_security_group.id,\n \"vswitch_zone_id\": \"cn-hangzhou-b\",\n \"vpc_id\": create_vpc.id,\n \"vswitch_id\": create_vswitch.id,\n \"vpd_info\": {\n \"vpd_id\": \"111\",\n \"vpd_subnets\": [\"111\"],\n },\n \"ip_allocation_policies\": [{\n \"bond_policy\": {\n \"bond_default_subnet\": \"111\",\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n },\n \"machine_type_policies\": [{\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n \"machine_type\": \"111\",\n }],\n \"node_policies\": [{\n \"bonds\": [{\n \"name\": \"111\",\n \"subnet\": \"111\",\n }],\n \"node_id\": \"111\",\n }],\n }],\n },\n cluster_name=\"tfacceflo7165\",\n cluster_type=\"Lite\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing AliCloud = Pulumi.AliCloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var config = new Config();\n var name = config.Get(\"name\") ?? \"terraform-example\";\n var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke();\n\n var createVpc = new AliCloud.Vpc.Network(\"create_vpc\", new()\n {\n CidrBlock = \"192.168.0.0/16\",\n VpcName = \"cluster-resoure-example\",\n });\n\n var createVswitch = new AliCloud.Vpc.Switch(\"create_vswitch\", new()\n {\n VpcId = createVpc.Id,\n ZoneId = \"cn-hangzhou-b\",\n CidrBlock = \"192.168.0.0/24\",\n VswitchName = \"cluster-resoure-example\",\n });\n\n var createSecurityGroup = new AliCloud.Ecs.SecurityGroup(\"create_security_group\", new()\n {\n Description = \"sg\",\n SecurityGroupName = \"cluster-resoure-example\",\n SecurityGroupType = \"normal\",\n VpcId = createVpc.Id,\n });\n\n var defaultCluster = new AliCloud.Eflo.Cluster(\"default\", new()\n {\n ClusterDescription = \"cluster-resource-example\",\n OpenEniJumboFrame = false,\n HpnZone = \"B1\",\n NimizVswitches = new[]\n {\n \"1111\",\n },\n IgnoreFailedNodeTasks = true,\n ResourceGroupId = @default.Apply(@default =\u003e @default.Apply(getResourceGroupsResult =\u003e getResourceGroupsResult.Ids[1])),\n NodeGroups = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNodeGroupArgs\n {\n ImageId = \"i198448731735114628708\",\n ZoneId = \"cn-hangzhou-b\",\n NodeGroupName = \"cluster-resource-example\",\n NodeGroupDescription = \"cluster-resource-example\",\n MachineType = \"efg2.C48cA3sen\",\n },\n },\n Networks = new AliCloud.Eflo.Inputs.ClusterNetworksArgs\n {\n TailIpVersion = \"ipv4\",\n NewVpdInfo = new AliCloud.Eflo.Inputs.ClusterNetworksNewVpdInfoArgs\n {\n MonitorVpcId = createVpc.Id,\n MonitorVswitchId = createVswitch.Id,\n CenId = \"11111\",\n CloudLinkId = \"1111\",\n VpdCidr = \"111\",\n VpdSubnets = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksNewVpdInfoVpdSubnetArgs\n {\n ZoneId = \"1111\",\n SubnetCidr = \"111\",\n SubnetType = \"111\",\n },\n },\n CloudLinkCidr = \"169.254.128.0/23\",\n },\n SecurityGroupId = createSecurityGroup.Id,\n VswitchZoneId = \"cn-hangzhou-b\",\n VpcId = createVpc.Id,\n VswitchId = createVswitch.Id,\n VpdInfo = new AliCloud.Eflo.Inputs.ClusterNetworksVpdInfoArgs\n {\n VpdId = \"111\",\n VpdSubnets = new[]\n {\n \"111\",\n },\n },\n IpAllocationPolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyArgs\n {\n BondPolicy = new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyBondPolicyArgs\n {\n BondDefaultSubnet = \"111\",\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyBondPolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n },\n MachineTypePolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyMachineTypePolicyArgs\n {\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n MachineType = \"111\",\n },\n },\n NodePolicies = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyNodePolicyArgs\n {\n Bonds = new[]\n {\n new AliCloud.Eflo.Inputs.ClusterNetworksIpAllocationPolicyNodePolicyBondArgs\n {\n Name = \"111\",\n Subnet = \"111\",\n },\n },\n NodeId = \"111\",\n },\n },\n },\n },\n },\n ClusterName = \"tfacceflo7165\",\n ClusterType = \"Lite\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eflo\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager\"\n\t\"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcfg := config.New(ctx, \"\")\n\t\tname := \"terraform-example\"\n\t\tif param := cfg.Get(\"name\"); param != \"\" {\n\t\t\tname = param\n\t\t}\n\t\t_default, err := resourcemanager.GetResourceGroups(ctx, \u0026resourcemanager.GetResourceGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVpc, err := vpc.NewNetwork(ctx, \"create_vpc\", \u0026vpc.NetworkArgs{\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/16\"),\n\t\t\tVpcName: pulumi.String(\"cluster-resoure-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateVswitch, err := vpc.NewSwitch(ctx, \"create_vswitch\", \u0026vpc.SwitchArgs{\n\t\t\tVpcId: createVpc.ID(),\n\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\tCidrBlock: pulumi.String(\"192.168.0.0/24\"),\n\t\t\tVswitchName: pulumi.String(\"cluster-resoure-example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcreateSecurityGroup, err := ecs.NewSecurityGroup(ctx, \"create_security_group\", \u0026ecs.SecurityGroupArgs{\n\t\t\tDescription: pulumi.String(\"sg\"),\n\t\t\tSecurityGroupName: pulumi.String(\"cluster-resoure-example\"),\n\t\t\tSecurityGroupType: pulumi.String(\"normal\"),\n\t\t\tVpcId: createVpc.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = eflo.NewCluster(ctx, \"default\", \u0026eflo.ClusterArgs{\n\t\t\tClusterDescription: pulumi.String(\"cluster-resource-example\"),\n\t\t\tOpenEniJumboFrame: pulumi.Bool(false),\n\t\t\tHpnZone: pulumi.String(\"B1\"),\n\t\t\tNimizVswitches: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"1111\"),\n\t\t\t},\n\t\t\tIgnoreFailedNodeTasks: pulumi.Bool(true),\n\t\t\tResourceGroupId: pulumi.String(_default.Ids[1]),\n\t\t\tNodeGroups: eflo.ClusterNodeGroupArray{\n\t\t\t\t\u0026eflo.ClusterNodeGroupArgs{\n\t\t\t\t\tImageId: pulumi.String(\"i198448731735114628708\"),\n\t\t\t\t\tZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\t\t\tNodeGroupName: pulumi.String(\"cluster-resource-example\"),\n\t\t\t\t\tNodeGroupDescription: pulumi.String(\"cluster-resource-example\"),\n\t\t\t\t\tMachineType: pulumi.String(\"efg2.C48cA3sen\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworks: \u0026eflo.ClusterNetworksArgs{\n\t\t\t\tTailIpVersion: pulumi.String(\"ipv4\"),\n\t\t\t\tNewVpdInfo: \u0026eflo.ClusterNetworksNewVpdInfoArgs{\n\t\t\t\t\tMonitorVpcId: createVpc.ID(),\n\t\t\t\t\tMonitorVswitchId: createVswitch.ID(),\n\t\t\t\t\tCenId: pulumi.String(\"11111\"),\n\t\t\t\t\tCloudLinkId: pulumi.String(\"1111\"),\n\t\t\t\t\tVpdCidr: pulumi.String(\"111\"),\n\t\t\t\t\tVpdSubnets: eflo.ClusterNetworksNewVpdInfoVpdSubnetArray{\n\t\t\t\t\t\t\u0026eflo.ClusterNetworksNewVpdInfoVpdSubnetArgs{\n\t\t\t\t\t\t\tZoneId: pulumi.String(\"1111\"),\n\t\t\t\t\t\t\tSubnetCidr: pulumi.String(\"111\"),\n\t\t\t\t\t\t\tSubnetType: pulumi.String(\"111\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tCloudLinkCidr: pulumi.String(\"169.254.128.0/23\"),\n\t\t\t\t},\n\t\t\t\tSecurityGroupId: createSecurityGroup.ID(),\n\t\t\t\tVswitchZoneId: pulumi.String(\"cn-hangzhou-b\"),\n\t\t\t\tVpcId: createVpc.ID(),\n\t\t\t\tVswitchId: createVswitch.ID(),\n\t\t\t\tVpdInfo: \u0026eflo.ClusterNetworksVpdInfoArgs{\n\t\t\t\t\tVpdId: pulumi.String(\"111\"),\n\t\t\t\t\tVpdSubnets: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"111\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIpAllocationPolicies: eflo.ClusterNetworksIpAllocationPolicyArray{\n\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyArgs{\n\t\t\t\t\t\tBondPolicy: \u0026eflo.ClusterNetworksIpAllocationPolicyBondPolicyArgs{\n\t\t\t\t\t\t\tBondDefaultSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyBondPolicyBondArray{\n\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyBondPolicyBondArgs{\n\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMachineTypePolicies: eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyArray{\n\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyArgs{\n\t\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArray{\n\t\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyMachineTypePolicyBondArgs{\n\t\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tMachineType: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tNodePolicies: eflo.ClusterNetworksIpAllocationPolicyNodePolicyArray{\n\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyNodePolicyArgs{\n\t\t\t\t\t\t\t\tBonds: eflo.ClusterNetworksIpAllocationPolicyNodePolicyBondArray{\n\t\t\t\t\t\t\t\t\t\u0026eflo.ClusterNetworksIpAllocationPolicyNodePolicyBondArgs{\n\t\t\t\t\t\t\t\t\t\tName: pulumi.String(\"111\"),\n\t\t\t\t\t\t\t\t\t\tSubnet: pulumi.String(\"111\"),\n\t\t\